资源分享Gmod-Expression2 - 自定义像素画生成
Posted fbux
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了资源分享Gmod-Expression2 - 自定义像素画生成相关的知识,希望对你有一定的参考价值。
*作者:BUI*
可自定义制作属于你的像素画(默认为Sans)
第77行的COLOR可编辑你想要的颜色(RGB值)
1,2,3,4分别代表第77行所定义的颜色(0代表不显示)
视频地址:传送链接
1 @name Pixel painting ByBUI 2 @persist MAX_X MAX_Y POS:array COLOR:array Size Angle:angle STP:vector K HC 3 runOnTick(1) 4 if(first()) 5 { 6 entity():propNotSolid(1) 7 function number v2p(V:vector2) 8 { 9 X=V:x()+1 10 Y=V:y() 11 return Y*MAX_X+X 12 } 13 function vector2 p2v(N:number) 14 { 15 return vec2((K-1)%MAX_X,int((K-1)/MAX_X) ) 16 } 17 function vector2 maxholo(V:vector2) 18 { 19 local C=POS[v2p(V),number] 20 local X=0 21 local MAXX=10 22 local MAXY=10 23 local Y=0 24 while(POS[v2p(V+vec2(0,Y)),number]==C) 25 { 26 X=0 27 while(POS[v2p(V+vec2(X,Y)),number]==C&&X<=MAXX) 28 { 29 X++ 30 } 31 if(X<MAXX) 32 { 33 MAXX=X 34 } 35 Y++ 36 } 37 MAXY=Y 38 return vec2(MAXX-1,MAXY-1) 39 } 40 41 MAX_X=23 42 MAX_Y=30 43 Size=30 44 Angle=ang(0,90,0) 45 POS=array( 46 0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0, 47 0,0,0,0,0,1,1,2,2,2,2,2,2,2,2,2,1,1,0,0,0,0,0, 48 0,0,0,0,1,2,2,2,2,2,2,2,2,2,2,2,2,2,1,0,0,0,0, 49 0,0,0,0,1,2,2,2,2,2,2,2,2,2,2,2,2,2,1,0,0,0,0, 50 0,0,0,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,0,0,0, 51 0,0,0,1,2,2,1,1,1,2,2,2,2,2,1,1,1,2,2,1,0,0,0, 52 0,0,0,1,2,2,1,1,1,2,2,2,2,2,1,1,1,2,2,1,0,0,0, 53 0,0,0,1,2,2,1,1,1,2,2,1,2,2,1,1,1,2,2,1,0,0,0, 54 0,0,0,0,1,2,2,2,2,2,1,1,1,2,2,2,2,2,1,0,0,0,0, 55 0,0,0,1,1,2,1,2,2,2,2,2,2,2,2,2,1,2,1,1,0,0,0, 56 0,0,0,1,2,2,1,1,1,1,1,1,1,1,1,1,1,2,2,1,0,0,0, 57 0,0,0,1,2,2,2,1,2,1,2,1,2,1,2,1,2,2,2,1,0,0,0, 58 0,0,0,0,1,1,2,2,1,1,1,1,1,1,1,2,2,1,1,0,0,0,0, 59 0,0,0,1,1,1,1,1,2,2,2,2,2,2,2,1,1,1,1,1,0,0,0, 60 0,0,1,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,3,1,0,0, 61 0,1,1,3,1,4,4,1,2,2,2,1,2,2,2,1,4,4,1,3,1,1,0, 62 0,1,3,3,3,1,4,4,1,1,1,2,1,1,1,4,4,1,3,3,3,1,0, 63 1,3,3,1,1,3,1,1,1,2,2,1,2,2,1,1,1,3,1,1,3,3,1, 64 1,3,3,3,3,1,3,3,1,2,2,2,2,2,1,3,3,1,3,3,3,3,1, 65 1,3,3,3,3,3,1,3,1,1,2,2,2,1,1,3,1,3,3,3,3,3,1, 66 0,1,3,3,3,1,3,3,1,2,2,2,2,2,1,3,3,1,3,3,3,1,0, 67 0,0,1,1,3,1,3,3,1,1,1,1,1,1,1,3,3,1,3,1,1,0,0, 68 0,0,0,1,1,1,3,3,1,1,1,1,1,1,1,3,3,1,1,1,0,0,0, 69 0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0, 70 0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0, 71 0,0,0,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,0,0,0, 72 0,0,0,0,1,1,1,1,1,1,0,0,0,1,1,1,1,1,1,0,0,0,0, 73 0,0,1,1,1,2,2,2,2,1,0,0,0,1,2,2,2,2,1,1,1,0,0, 74 0,0,1,2,2,2,2,2,1,1,0,0,0,1,1,2,2,2,2,2,1,0,0, 75 0,0,0,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,0,0,0 76 ) 77 COLOR=array(vec(0),vec(255),vec(0,176,255),vec(211)) 78 STP=entity():pos()+(Angle:up()*(MAX_Y)+Angle:right()*(-MAX_X/2+0.5))*Size 79 K=0 80 holoCreate(1) 81 holoPos(1,entity():pos()) 82 holoAlpha(1,0) 83 HC=1 84 } 85 if(holoCanCreate()&&HC<=250&&K<=MAX_X*MAX_Y) 86 { 87 K++ 88 if(POS[K,number]) 89 { 90 local VV=p2v(K) 91 local HV=maxholo(VV) 92 local V=STP+(Angle:right()*(VV:x()+HV:x()/2)+Angle:up()*(-VV:y()-HV:y()/2))*Size 93 HC++ 94 holoCreate(HC) 95 holoModel(HC,"models/hunter/blocks/cube4x4x4.mdl") 96 holoMaterial(HC,"models/debug/debugwhite") 97 holoScale(HC,vec(Size,Size*(1+HV:x()),Size*(1+HV:y()))/holoEntity(HC):boxSize()) 98 holoPos(HC,V) 99 holoAng(HC,Angle) 100 holoDisableShading(HC,1) 101 holoShadow(HC,0) 102 holoColor(HC,COLOR[POS[K,number],vector]) 103 holoParent(HC,1) 104 for(I=0,HV:y()) 105 { 106 for(J=0,HV:x()) 107 { 108 POS[v2p(VV+vec2(J,I)),number]=0 109 } 110 } 111 #print(HC) 112 } 113 } 114 if(K>MAX_X*MAX_Y&&1) 115 { 116 findByClass("player") 117 P=findClosest(entity():pos()) 118 A=(P:pos()-entity():pos()):toAngle() 119 holoAng(1,ang(0,A:yaw()+90,0)) 120 121 122 123 124 125 }
供学习使用,切勿未经作者BUI同意私自外流代码。
以上是关于资源分享Gmod-Expression2 - 自定义像素画生成的主要内容,如果未能解决你的问题,请参考以下文章
php Facebook,Twitter,Google Plus和LinkedIn的自定义社交分享图标