You are not logged in.
Hi
I've problem with parachute script to San Andreas. I added external script correctly. In the game script works but not really. I can't open him, I was pressing all keys on my keyboard (mouse too) but nothing happens. I searched this forum for partchute script but nothing for me didn't work.
When I wanted to use original script.img I had problem with parachute script. Camera was to close player and the sam script wasn't working correctly. I had always crash game when I was landing on the ground or water.
I'm using SannyBuilder with CLEO4.
I've something like this:
{define mission an' stuff here} DEFINE EXTERNAL_SCRIPTS 0 DEFINE SCRIPT PLAYER_PARACHUTE AT @PLCHUTE {MAIN thread} 0005: $1500 = 5.0 0005: $1501 = -5.0 0005: $1503 = -1.5 0005: $1504 = -30.0 0005: $1505 = 32.0 0005: $1506 = 0.0 0004: $1512 = 0 0004: $FREEFALL_STAGE = 0 0004: $PARACHUTE_CREATION_STAGE = 0 :MAIN_755 wait 0 if Player.Defined($PLAYER_CHAR) jf @MAIN_853 if Actor.HasWeapon($PLAYER_ACTOR, 46) jf @MAIN_849 0926: $SCRIPT_STATUS = external_script_status 0 (PLAYER_PARACHUTE) if $SCRIPT_STATUS == 0 jf @MAIN_842 08A9: load_external_script 0 (PLAYER_PARACHUTE) if 08AB: external_script 0 (PLAYER_PARACHUTE) loaded jf @MAIN_842 0913: run_external_script 0 (PLAYER_PARACHUTE) :MAIN_842 jump @MAIN_853 :MAIN_849 090F: end_external_script 0 (PLAYER_PARACHUTE) :MAIN_853 jump @MAIN_755 {other stuff} end_thread {other stuff} {end of SCM} //-------------External script 0 (PLAYER_PARACHUTE)--------------- :PLCHUTE thread 'PLCHUTE' Model.Load(#GUN_PARA) :PLCHUTE_16 if not Model.Available(#GUN_PARA) else_jump @PLCHUTE_43 wait 0 jump @PLCHUTE_16 :PLCHUTE_43 if not Actor.Dead($PLAYER_ACTOR) else_jump @PLCHUTE_59 :PLCHUTE_59 $1498 = 0 $FREEFALL_STAGE = 0 $PARACHUTE_CREATION_STAGE = 0 if $1498 == 999 else_jump @PLCHUTE_118 $PICKUP_PARACHUTE = Pickup.Create(#GUN_PARA, 3, $TEMPVAR_X_COORD, $TEMPVAR_Y_COORD, $TEMPVAR_Z_COORD) :PLCHUTE_118 wait 0 if not Actor.Dead($PLAYER_ACTOR) else_jump @PLCHUTE_5455 if 8800: not in_two_players_mode else_jump @PLCHUTE_5455 if not $FREEFALL_STAGE == 0 else_jump @PLCHUTE_176 0992: set_player $PLAYER_CHAR weapons_scrollable 0 :PLCHUTE_176 if $PARACHUTE_CREATION_STAGE > 0 else_jump @PLCHUTE_219 if not Actor.HasWeapon($PLAYER_ACTOR, 46) else_jump @PLCHUTE_219 gosub @PLCHUTE_5521 :PLCHUTE_219 if $PARACHUTE_CREATION_STAGE == 0 else_jump @PLCHUTE_274 if Actor.HasWeapon($PLAYER_ACTOR, 46) else_jump @PLCHUTE_274 Model.Load(#PARACHUTE) $PARACHUTE_CREATION_STAGE = 1 $1498 = 0 :PLCHUTE_274 if $PARACHUTE_CREATION_STAGE == 1 else_jump @PLCHUTE_377 if Model.Available(#PARACHUTE) else_jump @PLCHUTE_377 17@ = Object.Create(#PARACHUTE, $TEMPVAR_X_COORD, $TEMPVAR_Y_COORD, $TEMPVAR_Z_COORD) 069B: attach_object 17@ to_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 rotation 0.0 0.0 0.0 0750: set_object 17@ visibility 0 $PARACHUTE_CREATION_STAGE = 2 :PLCHUTE_377 if and $PARACHUTE_CREATION_STAGE == 2 $FREEFALL_STAGE == 1 else_jump @PLCHUTE_409 $PARACHUTE_CREATION_STAGE = 3 :PLCHUTE_409 if and $FREEFALL_STAGE == 0 $PARACHUTE_CREATION_STAGE > 0 else_jump @PLCHUTE_565 if 0818: actor $PLAYER_ACTOR in_air else_jump @PLCHUTE_565 083D: get_actor $PLAYER_ACTOR velocity_in_direction_XYZ $1507 $1508 $1509 if -10.0 > $1509 else_jump @PLCHUTE_565 0819: 7@ = actor $PLAYER_ACTOR distance_from_ground if 7@ > 20.0 else_jump @PLCHUTE_565 097A: play_audio_at -1000.0 -1000.0 -1000.0 event 1037 $FREEFALL_STAGE = 1 01B9: set_actor $PLAYER_ACTOR armed_weapon_to 46 0@ = 0 $8268 = 0.0 :PLCHUTE_565 if $FREEFALL_STAGE == 1 else_jump @PLCHUTE_2386 if 0@ == 0 else_jump @PLCHUTE_608 0@ = 2 :PLCHUTE_608 if 0@ == 2 else_jump @PLCHUTE_729 062E: unknown_get_actor $PLAYER_ACTOR task 2066 status_store_to 27@ // ret 7 if not found if 04A4: 27@ == 7 // @ == any else_jump @PLCHUTE_729 0812: AS_actor $PLAYER_ACTOR perform_animation "FALL_SKYDIVE" IFP_file "PED" 1.0 loopA 1 lockX 0 lockY 0 lockF 0 time -1 // versionB 04ED: load_animation "PARACHUTE" 15@ = 1 1@ = Actor.Angle($PLAYER_ACTOR) 0@ = 3 :PLCHUTE_729 if 0@ == 3 else_jump @PLCHUTE_2386 062E: unknown_get_actor $PLAYER_ACTOR task 2066 status_store_to 27@ // ret 7 if not found if 04A4: 27@ == 7 // @ == any else_jump @PLCHUTE_815 0812: AS_actor $PLAYER_ACTOR perform_animation "FALL_SKYDIVE" IFP_file "PED" 1.0 loopA 1 lockX 0 lockY 0 lockF 0 time -1 // versionB :PLCHUTE_815 0819: 7@ = actor $PLAYER_ACTOR distance_from_ground if and 100.0 > 7@ 7@ > 60.0 else_jump @PLCHUTE_912 if 04EE: animation "PARACHUTE" loaded else_jump @PLCHUTE_912 if $ONMISSION == 0 else_jump @PLCHUTE_912 00BC: show_text_highpriority GXT 'PARA_01' time 1000 flag 1 // ~s~Open your parachute! :PLCHUTE_912 0494: get_joystick 0 data_to 10@ 11@ 12@ 12@ if $1511 == 1 else_jump @PLCHUTE_960 10@ = 0 11@ = 0 :PLCHUTE_960 0093: 21@ = integer 10@ to_float 21@ /= 4.267 0063: 21@ -= 2@ // (float) 21@ /= 20.0 005B: 2@ += 21@ // (float) 0087: 21@ = 2@ // (float) 21@ /= 5.0 0063: 1@ -= 21@ // (float) if 1@ > 180.0 else_jump @PLCHUTE_1061 1@ -= 360.0 :PLCHUTE_1061 if -180.0 > 1@ else_jump @PLCHUTE_1092 1@ += 360.0 :PLCHUTE_1092 0093: 22@ = integer 11@ to_float 22@ /= 4.267 0063: 22@ -= 3@ // (float) 22@ /= 20.0 005B: 3@ += 22@ // (float) 083D: get_actor $PLAYER_ACTOR velocity_in_direction_XYZ 8@ 9@ $1509 if 0024: $1504 > $1509 // (float) else_jump @PLCHUTE_1177 0086: $1509 = $1504 // (float) :PLCHUTE_1177 if 0024: $8268 > $1509 // (float) else_jump @PLCHUTE_1204 0086: $8268 = $1509 // (float) :PLCHUTE_1204 if 0024: $1504 > $8268 // (float) else_jump @PLCHUTE_1231 0086: $8268 = $1504 // (float) :PLCHUTE_1231 if and 0024: $1509 > $8268 // (float) not $1902 == 1 else_jump @PLCHUTE_1407 if 84AD: not actor $PLAYER_ACTOR in_water else_jump @PLCHUTE_1361 if -20.0 > $8268 else_jump @PLCHUTE_1308 $FREEFALL_STAGE = 2 jump @PLCHUTE_1354 :PLCHUTE_1308 0812: AS_actor $PLAYER_ACTOR perform_animation "FALL_SKYDIVE" IFP_file "PED" 1.0 loopA 1 lockX 0 lockY 0 lockF 0 time 100 // versionB $FREEFALL_STAGE = 7 :PLCHUTE_1354 jump @PLCHUTE_1407 :PLCHUTE_1361 0812: AS_actor $PLAYER_ACTOR perform_animation "FALL_SKYDIVE" IFP_file "PED" 1.0 loopA 1 lockX 0 lockY 0 lockF 0 time 100 // versionB $FREEFALL_STAGE = 7 :PLCHUTE_1407 0087: 4@ = 3@ // (float) 4@ /= 30.0 006F: 4@ *= $1505 // (float) 02F6: $1507 = cosine 1@ // (float) 02F7: $1508 = sine 1@ // (float) 006D: $1507 *= 4@ // (float) 006D: $1508 *= 4@ // (float) $1508 *= -1.0 0059: $1508 += $1506 // (float) 0087: 21@ = 8@ // (float) 0065: 21@ -= $1507 // (float) 21@ *= 0.01 0088: $1507 = 8@ // (float) 0067: $1507 -= 21@ // (float) 0087: 21@ = 9@ // (float) 0065: 21@ -= $1508 // (float) 21@ *= 0.01 0088: $1508 = 9@ // (float) 0067: $1508 -= 21@ // (float) 0085: 12@ = 10@ // (int) 0085: 13@ = 11@ // (int) 0095: make 12@ absolute_integer 0095: make 13@ absolute_integer if or 12@ > 40 13@ > 40 else_jump @PLCHUTE_2109 if 001D: 12@ > 13@ // (int) else_jump @PLCHUTE_1872 if 10@ >= 0 else_jump @PLCHUTE_1751 if not 15@ == 2 else_jump @PLCHUTE_1751 if 04EE: animation "PARACHUTE" loaded else_jump @PLCHUTE_1744 0812: AS_actor $PLAYER_ACTOR perform_animation "FALL_SKYDIVE_R" IFP_file "PARACHUTE" 1.0 loopA 1 lockX 0 lockY 0 lockF 1 time -2 // versionB :PLCHUTE_1744 15@ = 2 :PLCHUTE_1751 if 0 > 10@ else_jump @PLCHUTE_1865 if not 15@ == 3 else_jump @PLCHUTE_1865 if 04EE: animation "PARACHUTE" loaded else_jump @PLCHUTE_1858 0812: AS_actor $PLAYER_ACTOR perform_animation "FALL_SKYDIVE_L" IFP_file "PARACHUTE" 1.0 loopA 1 lockX 0 lockY 0 lockF 1 time -2 // versionB :PLCHUTE_1858 15@ = 3 :PLCHUTE_1865 jump @PLCHUTE_2102 :PLCHUTE_1872 if 11@ >= 0 else_jump @PLCHUTE_1984 if not 15@ == 4 else_jump @PLCHUTE_1984 if 04EE: animation "PARACHUTE" loaded else_jump @PLCHUTE_1977 0812: AS_actor $PLAYER_ACTOR perform_animation "FALL_SKYDIVE" IFP_file "PARACHUTE" 1.0 loopA 1 lockX 0 lockY 0 lockF 1 time -2 // versionB :PLCHUTE_1977 15@ = 4 :PLCHUTE_1984 if 0 > 11@ else_jump @PLCHUTE_2102 if not 15@ == 5 else_jump @PLCHUTE_2102 if 04EE: animation "PARACHUTE" loaded else_jump @PLCHUTE_2095 0812: AS_actor $PLAYER_ACTOR perform_animation "FALL_SKYDIVE_ACCEL" IFP_file "PARACHUTE" 1.0 loopA 1 lockX 0 lockY 0 lockF 1 time -2 // versionB :PLCHUTE_2095 15@ = 5 :PLCHUTE_2102 jump @PLCHUTE_2203 :PLCHUTE_2109 if not 15@ == 1 else_jump @PLCHUTE_2203 if 04EE: animation "PARACHUTE" loaded else_jump @PLCHUTE_2203 0812: AS_actor $PLAYER_ACTOR perform_animation "FALL_SKYDIVE" IFP_file "PARACHUTE" 1.0 loopA 1 lockX 0 lockY 0 lockF 1 time -2 // versionB 15@ = 1 :PLCHUTE_2203 if or 00E1: player 0 pressed_key 17 $1512 == 1 else_jump @PLCHUTE_2386 if not $1902 == 1 else_jump @PLCHUTE_2386 if 04EE: animation "PARACHUTE" loaded else_jump @PLCHUTE_2386 if and $PARACHUTE_CREATION_STAGE == 3 $1511 == 0 else_jump @PLCHUTE_2386 0812: AS_actor $PLAYER_ACTOR perform_animation "PARA_OPEN" IFP_file "PARACHUTE" 8.0 loopA 0 lockX 0 lockY 0 lockF 1 time -2 // versionB 097A: play_audio_at -1000.0 -1000.0 -1000.0 event 1038 008A: $8270 = 32@ // (int) $8270 += 1100 $FREEFALL_STAGE = 3 0@ = 0 :PLCHUTE_2386 if $FREEFALL_STAGE == 2 else_jump @PLCHUTE_2504 if 04EE: animation "PARACHUTE" loaded else_jump @PLCHUTE_2492 Actor.Angle($PLAYER_ACTOR) = 1@ 0829: actor $PLAYER_ACTOR perform_animation "FALL_SKYDIVE_DIE" IFP_file "PARACHUTE" 1000.0 time 0 and_dies 09F1: play_audio_at_actor $PLAYER_ACTOR event 1189 jump @PLCHUTE_2497 :PLCHUTE_2492 05BE: AS_kill_actor $PLAYER_ACTOR :PLCHUTE_2497 gosub @PLCHUTE_5521 :PLCHUTE_2504 if $FREEFALL_STAGE == 3 else_jump @PLCHUTE_4781 if $8270 > 0 else_jump @PLCHUTE_2586 if 001F: 32@ > $8270 // (int) else_jump @PLCHUTE_2586 097A: play_audio_at -1000.0 -1000.0 -1000.0 event 1039 $8270 = 0 :PLCHUTE_2586 if 0@ == 0 else_jump @PLCHUTE_2689 0087: 25@ = 3@ // (float) 25@ /= 500.0 0087: 26@ = 2@ // (float) 26@ /= 500.0 0085: 18@ = 32@ // (int) 0085: 19@ = 32@ // (int) 0087: 5@ = 4@ // (float) 5@ *= -1.0 0089: 6@ = $1509 // (float) 0@ = 1 :PLCHUTE_2689 if 0@ == 1 else_jump @PLCHUTE_2856 0085: 10@ = 32@ // (int) 0062: 10@ -= 19@ // (int) if 500 > 10@ else_jump @PLCHUTE_2829 0085: 10@ = 32@ // (int) 0062: 10@ -= 18@ // (int) 0085: 18@ = 32@ // (int) 0093: 21@ = integer 10@ to_float 0087: 22@ = 25@ // (float) 006B: 22@ *= 21@ // (float) 0087: 23@ = 26@ // (float) 006B: 23@ *= 21@ // (float) 0063: 3@ -= 22@ // (float) 0063: 2@ -= 23@ // (float) jump @PLCHUTE_2856 :PLCHUTE_2829 2@ = 0.0 3@ = 0.0 0@ = 2 :PLCHUTE_2856 if 0@ == 2 else_jump @PLCHUTE_2964 if 03CA: object 17@ exists else_jump @PLCHUTE_2964 0750: set_object 17@ visibility 1 08D2: object 17@ scale_model 0.0 0085: 19@ = 32@ // (int) wait 0 075A: set_object 17@ animation "PARA_OPEN_O" IFP_file "PARACHUTE" 1000.0 lockF 0 loop 1 // IF AND SET 0@ = 3 :PLCHUTE_2964 if 0@ == 3 else_jump @PLCHUTE_3067 0085: 10@ = 32@ // (int) 0062: 10@ -= 19@ // (int) if 500 > 10@ else_jump @PLCHUTE_3050 0093: 21@ = integer 10@ to_float 21@ /= 500.0 08D2: object 17@ scale_model 21@ jump @PLCHUTE_3067 :PLCHUTE_3050 08D2: object 17@ scale_model 1.0 0@ = 4 :PLCHUTE_3067 if 0@ == 5 else_jump @PLCHUTE_3136 20@ = Object.Create(#PARA_COLLISION, 0.0, 0.0, 0.0) 0750: set_object 20@ visibility 0 Object.ToggleInMovingList(20@) = True 04D9: object 20@ set_scripted_collision_check 1 0@ = 6 :PLCHUTE_3136 if 0@ == 6 else_jump @PLCHUTE_4354 0494: get_joystick 0 data_to 10@ 11@ 12@ 12@ if $1511 == 1 else_jump @PLCHUTE_3202 10@ = 0 11@ = 0 :PLCHUTE_3202 0093: 21@ = integer 10@ to_float 21@ /= 4.267 0063: 21@ -= 2@ // (float) 21@ /= 20.0 005B: 2@ += 21@ // (float) 0087: 21@ = 2@ // (float) 21@ /= 15.0 0063: 1@ -= 21@ // (float) if 1@ > 180.0 else_jump @PLCHUTE_3303 1@ -= 360.0 :PLCHUTE_3303 if -180.0 > 1@ else_jump @PLCHUTE_3334 1@ += 360.0 :PLCHUTE_3334 02F6: $1507 = cosine 1@ // (float) 02F7: $1508 = sine 1@ // (float) 0069: $1507 *= $1500 // (float) 0069: $1508 *= $1500 // (float) $1507 *= -1.0 0085: 12@ = 10@ // (int) 0085: 13@ = 11@ // (int) 0095: make 12@ absolute_integer 0095: make 13@ absolute_integer if or 12@ > 40 13@ > 40 else_jump @PLCHUTE_4066 if 001D: 12@ > 13@ // (int) else_jump @PLCHUTE_3741 0089: 21@ = $1501 // (float) 0065: 21@ -= $1509 // (float) 21@ /= 20.0 005F: $1509 += 21@ // (float) if 10@ >= 0 else_jump @PLCHUTE_3607 if not 15@ == 2 else_jump @PLCHUTE_3607 0812: AS_actor $PLAYER_ACTOR perform_animation "PARA_STEERR" IFP_file "PARACHUTE" 1.0 loopA 1 lockX 0 lockY 0 lockF 1 time -2 // versionB 075A: set_object 17@ animation "PARA_STEERR_O" IFP_file "PARACHUTE" 1.0 lockF 1 loop 1 // IF AND SET 15@ = 2 :PLCHUTE_3607 if 0 > 10@ else_jump @PLCHUTE_3734 if not 15@ == 3 else_jump @PLCHUTE_3734 0812: AS_actor $PLAYER_ACTOR perform_animation "PARA_STEERL" IFP_file "PARACHUTE" 1.0 loopA 1 lockX 0 lockY 0 lockF 1 time -2 // versionB 075A: set_object 17@ animation "PARA_STEERL_O" IFP_file "PARACHUTE" 1.0 lockF 1 loop 1 // IF AND SET 15@ = 3 :PLCHUTE_3734 jump @PLCHUTE_4059 :PLCHUTE_3741 if 11@ >= 0 else_jump @PLCHUTE_3900 0089: 21@ = $1503 // (float) 0065: 21@ -= $1509 // (float) 21@ /= 20.0 005F: $1509 += 21@ // (float) if not 15@ == 4 else_jump @PLCHUTE_3900 0812: AS_actor $PLAYER_ACTOR perform_animation "PARA_DECEL" IFP_file "PARACHUTE" 1.0 loopA 1 lockX 0 lockY 0 lockF 1 time -2 // versionB 075A: set_object 17@ animation "PARA_DECEL_O" IFP_file "PARACHUTE" 1.0 lockF 1 loop 1 // IF AND SET 15@ = 4 :PLCHUTE_3900 if 0 > 11@ else_jump @PLCHUTE_4059 0089: 21@ = $1501 // (float) 0065: 21@ -= $1509 // (float) 21@ /= 20.0 005F: $1509 += 21@ // (float) if not 15@ == 5 else_jump @PLCHUTE_4059 0812: AS_actor $PLAYER_ACTOR perform_animation "PARA_FLOAT" IFP_file "PARACHUTE" 1.0 loopA 1 lockX 0 lockY 0 lockF 1 time -2 // versionB 075A: set_object 17@ animation "PARA_FLOAT_O" IFP_file "PARACHUTE" 1.0 lockF 1 loop 1 // IF AND SET 15@ = 5 :PLCHUTE_4059 jump @PLCHUTE_4225 :PLCHUTE_4066 0089: 21@ = $1501 // (float) 0065: 21@ -= $1509 // (float) 21@ /= 20.0 005F: $1509 += 21@ // (float) if not 15@ == 5 else_jump @PLCHUTE_4225 if not 15@ == 1 else_jump @PLCHUTE_4225 0812: AS_actor $PLAYER_ACTOR perform_animation "PARA_FLOAT" IFP_file "PARACHUTE" 1.0 loopA 1 lockX 0 lockY 0 lockF 1 time -2 // versionB 075A: set_object 17@ animation "PARA_FLOAT_O" IFP_file "PARACHUTE" 1.0 lockF 1 loop 1 // IF AND SET 15@ = 1 :PLCHUTE_4225 Object.StorePos(17@, $TEMPVAR_FLOAT_1, $TEMPVAR_FLOAT_2, $TEMPVAR_FLOAT_3) 0815: put_object 20@ at $TEMPVAR_FLOAT_1 $TEMPVAR_FLOAT_2 $TEMPVAR_FLOAT_3 and_keep_rotation if 04DA: has_object 20@ collided else_jump @PLCHUTE_4318 075A: set_object 17@ animation "PARA_RIP_LOOP_O" IFP_file "PARACHUTE" 8.0 lockF 1 loop 1 // IF AND SET 0@ = 7 :PLCHUTE_4318 if 00E1: player 0 pressed_key 15 else_jump @PLCHUTE_4354 0792: disembark_instantly_actor $PLAYER_ACTOR $FREEFALL_STAGE = 6 $1498 = 3 :PLCHUTE_4354 if 03CA: object 17@ exists else_jump @PLCHUTE_4593 if 0837: object 17@ animation == "PARA_OPEN_O" else_jump @PLCHUTE_4593 0839: get_object 17@ animation "PARA_OPEN_O" progress_to 21@ 0087: 22@ = 6@ // (float) 0065: 22@ -= $1501 // (float) 0087: 23@ = 22@ // (float) 006B: 23@ *= 21@ // (float) 0088: $1509 = 6@ // (float) 0067: $1509 -= 23@ // (float) 0087: 22@ = 5@ // (float) 0065: 22@ -= $1500 // (float) 0087: 23@ = 22@ // (float) 006B: 23@ *= 21@ // (float) 0087: 4@ = 5@ // (float) 0063: 4@ -= 23@ // (float) 02F6: $1507 = cosine 1@ // (float) 02F7: $1508 = sine 1@ // (float) 006D: $1507 *= 4@ // (float) 006D: $1508 *= 4@ // (float) $1507 *= -1.0 if and 21@ == 1.0 0@ == 4 else_jump @PLCHUTE_4593 0@ = 5 :PLCHUTE_4593 if not Actor.Dead($PLAYER_ACTOR) else_jump @PLCHUTE_4781 if 04AD: actor $PLAYER_ACTOR in_water else_jump @PLCHUTE_4732 0812: AS_actor $PLAYER_ACTOR perform_animation "PARA_LAND_WATER" IFP_file "PARACHUTE" 8.0 loopA 1 lockX 1 lockY 0 lockF 0 time 1000 // versionB 075A: set_object 17@ animation "PARA_LAND_WATER_O" IFP_file "PARACHUTE" 1000.0 lockF 0 loop 1 // IF AND SET $FREEFALL_STAGE = 5 0@ = 0 :PLCHUTE_4732 083D: get_actor $PLAYER_ACTOR velocity_in_direction_XYZ 21@ 21@ 23@ if 23@ > -0.1 else_jump @PLCHUTE_4781 $FREEFALL_STAGE = 4 0@ = 0 :PLCHUTE_4781 if $FREEFALL_STAGE == 4 else_jump @PLCHUTE_5271 if 0@ == 0 else_jump @PLCHUTE_5168 $1498 = 1 Actor.StorePos($PLAYER_ACTOR, $TEMPVAR_X_COORD, $TEMPVAR_Y_COORD, $TEMPVAR_Z_COORD) $TEMPVAR_Z_COORD -= 1.0 Actor.PutAt($PLAYER_ACTOR, $TEMPVAR_X_COORD, $TEMPVAR_Y_COORD, $TEMPVAR_Z_COORD) 083E: set_actor $PLAYER_ACTOR rotation 0.0 0.0 1@ while_in_air if -10.0 > $1509 else_jump @PLCHUTE_4922 $FREEFALL_STAGE = 2 0@ = 0 jump @PLCHUTE_5092 :PLCHUTE_4922 if -4.0 > $1509 else_jump @PLCHUTE_5047 0615: define_AS_pack_begin 14@ 0812: AS_actor -1 perform_animation "FALL_FRONT" IFP_file "PED" 20.0 loopA 0 lockX 0 lockY 0 lockF 1 time 700 // versionB 0812: AS_actor -1 perform_animation "GETUP_FRONT" IFP_file "PED" 8.0 loopA 0 lockX 1 lockY 0 lockF 0 time -2 // versionB 0616: define_AS_pack_end 14@ 0618: assign_actor $PLAYER_ACTOR to_AS_pack 14@ 061B: remove_references_to_AS_pack 14@ jump @PLCHUTE_5085 :PLCHUTE_5047 0812: AS_actor $PLAYER_ACTOR perform_animation "RUN_PLAYER" IFP_file "PED" 8.0 loopA 1 lockX 1 lockY 0 lockF 0 time 1000 // versionB :PLCHUTE_5085 0@ = 1 :PLCHUTE_5092 075A: set_object 17@ animation "PARA_LAND_O" IFP_file "PARACHUTE" 1000.0 lockF 0 loop 1 // IF AND SET 0682: detach_object 17@ 0.0 0.0 0.0 collision_detection 0 0085: 18@ = 32@ // (int) 18@ += 1000 :PLCHUTE_5168 if 0@ == 1 else_jump @PLCHUTE_5271 if 0837: object 17@ animation == "PARA_LAND_O" else_jump @PLCHUTE_5271 0839: get_object 17@ animation "PARA_LAND_O" progress_to 21@ if 21@ == 1.0 else_jump @PLCHUTE_5271 $1498 = 2 gosub @PLCHUTE_5521 :PLCHUTE_5271 if $FREEFALL_STAGE == 5 else_jump @PLCHUTE_5328 $1498 = 1 if 0@ == 0 else_jump @PLCHUTE_5328 $1498 = 2 gosub @PLCHUTE_5521 :PLCHUTE_5328 if and $FREEFALL_STAGE > 0 4 > $FREEFALL_STAGE else_jump @PLCHUTE_5405 if not Actor.Dead($PLAYER_ACTOR) else_jump @PLCHUTE_5405 083C: set_actor $PLAYER_ACTOR velocity_in_direction_XYZ $1507 $1508 $1509 Actor.Angle($PLAYER_ACTOR) = 1@ 083E: set_actor $PLAYER_ACTOR rotation 3@ 2@ 1@ while_in_air :PLCHUTE_5405 if $FREEFALL_STAGE == 6 else_jump @PLCHUTE_5430 gosub @PLCHUTE_5521 :PLCHUTE_5430 if $FREEFALL_STAGE == 7 else_jump @PLCHUTE_5455 gosub @PLCHUTE_5462 :PLCHUTE_5455 jump @PLCHUTE_118 :PLCHUTE_5462 $FREEFALL_STAGE = 0 0@ = 0 Model.Destroy(#PARACHUTE) 04EF: release_animation "PARACHUTE" 083E: set_actor $PLAYER_ACTOR rotation 0.0 0.0 1@ while_in_air 0992: set_player $PLAYER_CHAR weapons_scrollable 1 return :PLCHUTE_5521 0682: detach_object 17@ 0.0 0.0 0.0 collision_detection 0 09A2: destroy_object_with_fade 17@ Object.Destroy(20@) 0555: remove_weapon 46 from_actor $PLAYER_ACTOR $FREEFALL_STAGE = 0 $PARACHUTE_CREATION_STAGE = 0 0@ = 0 Model.Destroy(#PARACHUTE) 04EF: release_animation "PARACHUTE" Model.Destroy(#GUN_PARA) 083E: set_actor $PLAYER_ACTOR rotation 0.0 0.0 1@ while_in_air 0992: set_player $PLAYER_CHAR weapons_scrollable 1 end_thread
Last edited by Luten (10-04-2011 14:03)
Offline