2
id=horizontal_rope_platform
3
platform_area=0,26,42,27
44
bottom_rope="vars.children[0]"
45
top_rope="vars.children[1]"
46
fixed_rope="vars.children[2]"
47
left_wheel="vars.children[3]"
48
right_wheel="vars.children[4]"
49
refresh="def() fire_event(me, 'process')"
52
on_draw="if(tmp.redraw, [
53
set(fixed_rope.x, vars.xbase + xpos + img_w/2 - 10),
56
bottom_rope.set_pos_len(-xpos/2, bottom_rope.vars.length),
57
top_rope.set_pos_len(xpos/2, top_rope.vars.length),
58
set(left_wheel.rotate, -xpos),
59
set(right_wheel.rotate, -xpos)
66
on_process="if(vars.is_moving, [
67
set(vars.pos, vars.pos+1),
68
set(x, vars.xbase + xpos),
73
where xpos = (wave(pos*vars.move_speed)*((vars.move_x2 - vars.move_x1) - img_w))/2000
77
on_reset="[set(vars.is_moving, 1), set(vars.pos, vars.starting_pos), me.refresh()]"
80
set(activation_area, [vars.move_x1, y - vars.rope_length, vars.move_x2 - vars.move_x1, (vars.rope_length + 34*2)]),
81
set(vars.starting_pos, vars.pos),
82
set(vars.xbase, ((vars.move_x2 - img_w) + vars.move_x1)/2),
83
spawn('horizontal_rope', vars.move_x1, y - vars.rope_length, 1, [set_var('length', vars.move_x2 - vars.move_x1)]),
84
spawn('horizontal_rope', vars.move_x1, y - (vars.rope_length + 14), 1, [set_var('length', vars.move_x2 - vars.move_x1)]),
85
spawn('vertical_rope', midpoint_x - 5, y - vars.rope_length, 1, [set_var('length', vars.rope_length + 4)]),
86
spawn('wheel_rope', vars.move_x1, y - (vars.rope_length+8), 1, [set(zorder, zorder+1)]),
87
spawn('wheel_rope', vars.move_x2, y - (vars.rope_length+8), 1, [set(zorder, zorder+1)]),
89
#if we're not moving, make on_process get called once with
90
moving set to on, just to seed our position#
91
if((not vars.is_moving), [set(vars.is_moving, 1), me.refresh(), set(vars.is_moving, 0)])
94
on_child_spawned="set(vars.children, vars.children + [child])"