Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function step()
- function get(x,y)
- local r={}
- r[0]=0
- if tpt.get_property("type",x,y)==1 then
- if tpt.get_property("tmp",x,y)~=1 then
- r[0]=r[0]+1
- r[r[0]][0]=tpt.get_property("vx",x,y)
- r[r[0]][1]=tpt.get_property("vy",x,y)
- tpt.set_property("tmp",1,x,y)
- local l={}
- l=get(x,y+1)
- for i=1,l[0] do
- r[0]=r[0]+1
- r[r[0]][0]=l[i][0]
- r[r[0]][1]=l[i][1]
- end
- l=get(x,y-1)
- for i=1,l[0] do
- r[0]=r[0]+1
- r[r[0]][0]=l[i][0]
- r[r[0]][1]=l[i][1]
- end
- l=get(x+1,y)
- for i=1,l[0] do
- r[0]=r[0]+1
- r[r[0]][0]=l[i][0]
- r[r[0]][1]=l[i][1]
- end
- l=get(x-1,y)
- for i=1,l[0] do
- r[0]=r[0]+1
- r[r[0]][0]=l[i][0]
- r[r[0]][1]=l[i][1]
- end
- end
- end
- return r
- end
- function set(x,y,vx,vy)
- if tpt.get_property("type",x,y)==1 then
- if tpt.get_property("tmp",x,y)==1 then
- tpt.set_property("vx",vx,x,y)
- tpt.set_property("vy",vy,x,y)
- tpt.set_property("tmp",0,x,y)
- set(x,y,vx+1,vy)
- set(x,y,vx-1,vy)
- set(x,y,vx,vy+1)
- set(x,y,vx,vy-1)
- end
- end
- end
- local r=get(tpt.get_property("x",id),tpt.get_property("y",id))
- local sx=0
- local sy=0
- for i=1,r[0] do
- sx=sx+r[i][0]
- sy=sy+r[i][1]
- end
- set(tpt.get_property("x",id),tpt.get_property("y",id),sx/r[0],sy/r[0])
- end
- function click(x,y,b,e)
- if tpt.get_property("type",x,y)==1 then
- tpt.delete(x,y)
- id=tpt.create(x,y,1)
- tpt.message_box(id)
- tpt.register_step(step)
- tpt.unregister_mouseevent(click)
- end
- end
- tpt.register_mouseevent(click)
Add Comment
Please, Sign In to add comment