| 1 |
if (live_call()) |
| 2 |
return global.live_result; |
| 3 |
event_inherited(); |
| 4 |
if (instance_exists(obj_verlet_rope_generator)) |
| 5 |
image_alpha = obj_verlet_rope_generator.image_alpha; |
| 6 |
bounce = 0.9; |
| 7 |
p_gravity = 0.8; |
| 8 |
p_friction = 0.9; |
| 9 |
precision = 3; |
| 10 |
rope_sprite = 3581; |
| 11 |
base_x = x; |
| 12 |
base_y = y; |
| 13 |
r_length = 130; |
| 14 |
r_segments = 13; |
| 15 |
r_width = 1.5; |
| 16 |
can_move = false; |
| 17 |
wind_power = 0.04; |
| 18 |
wind_power_max = 0.05; |
| 19 |
wind_direction = 1; |
| 20 |
wind_direction_change_countdown = 80; |
| 21 |
wind_direction_change_countdown_max = 80; |
| 22 |
sway = 0; |
| 23 |
alarm[0] = 10; |
| 24 |
alarm[1] = 30; |
| 25 |
points = []; |
| 26 |
array_push(points, [base_x, base_y, base_x, base_y, true, rope_sprite]); |
| 27 |
for (var i = 0; i < (r_segments - 1); i++) |
| 28 |
array_push(points, [base_x, points[i][1] + (r_length / r_segments), base_x, points[i][1] + (r_length / r_segments), false, rope_sprite]); |
| 29 |
sticks = []; |
| 30 |
for (var i = 0; i < (r_segments - 1); i++) |
| 31 |
array_push(sticks, [points[i], points[i + 1], scr_distancescr_distancefunction scr_distance(arg0, arg1)
{
var dx = arg1[0] - arg0[0];
var dy = arg1[1] - arg0[1];
return sqrt((dx * dx) + (dy * dy));
} (points[i], points[i + 1]), r_width, 255, 255, false]); |