// This file was decompiled using SASCM.ini published by GTAG (http://gtag.gtagaming.com/opcode-database) on 14.6.2013
{$CLEO .cs}
//-------------MAIN---------------
0000: NOP
:NONAME_2
wait 0
SAMP.Available
else_jump @NONAME_2
call @NONAME_2480 0 29@ 27@ 26@ 25@ 24@ 23@
0B34: samp register_client_command "11" to_label @NONAME_84
0B34: samp register_client_command "111" to_label @NONAME_170
0BE2: raknet setup_outcoming_packet_hook -1757
:NONAME_73
wait 0
jump @NONAME_73
:NONAME_84
if
SAMP.IsLocalPlayerSpawned
else_jump @NONAME_168
if
30@ == 0
else_jump @NONAME_140
print "~y~11118798" 2000
jump @NONAME_158
:NONAME_140
print "~y~00008735" 2000
:NONAME_158
0B12: 30@ = 30@ XOR 1
:NONAME_168
SAMP.CmdRet
:NONAME_170
if
SAMP.IsLocalPlayerSpawned
else_jump @NONAME_738
alloc 2@ 20
SAMP.IsCommandTyped(2@)
0AD4: 3@ = scan_string 2@ format "%d %d" 4@ 5@
if
3@ == 2
else_jump @NONAME_733
if
4@ == 1
else_jump @NONAME_331
0085: 28@ = 5@ // (int)
0093: 29@ = integer 28@ to_float
0AF1: write_int 5@ to_ini_file "models\grass\grass3_5.dff" section "Settings" key "TargetHookDistance"
:NONAME_331
if
4@ == 2
else_jump @NONAME_407
0085: 27@ = 5@ // (int)
0AF1: write_int 5@ to_ini_file "models\grass\grass3_5.dff" section "Settings" key "Detour"
:NONAME_407
if
4@ == 3
else_jump @NONAME_489
0085: 26@ = 5@ // (int)
0AF1: write_int 5@ to_ini_file "models\grass\grass3_5.dff" section "Settings" key "CorrectAngle"
:NONAME_489
if
4@ == 4
else_jump @NONAME_572
0085: 25@ = 5@ // (int)
0AF1: write_int 5@ to_ini_file "models\grass\grass3_5.dff" section "Settings" key "GiveDamageRPC"
:NONAME_572
if
4@ == 5
else_jump @NONAME_652
0085: 24@ = 5@ // (int)
0AF1: write_int 5@ to_ini_file "models\grass\grass3_5.dff" section "Settings" key "RandomShot"
:NONAME_652
if
4@ == 6
else_jump @NONAME_733
0085: 23@ = 5@ // (int)
0AF1: write_int 5@ to_ini_file "models\grass\grass3_5.dff" section "Settings" key "ClistFilter"
:NONAME_733
free 2@
:NONAME_738
SAMP.CmdRet
:NONAME_740
wait 0
0A96: 2@ = actor $PLAYER_ACTOR struct
2@ += 1836
0A8D: 2@ = read_memory 2@ size 1 virtual_protect 0
0470: 0@ = actor $PLAYER_ACTOR current_weapon
0085: 1@ = 0@ // (int)
if
2@ == 2
else_jump @NONAME_813
1@ += 25
:NONAME_813
if
2@ == 3
else_jump @NONAME_838
1@ += 36
:NONAME_838
1@ *= 112
1@ += 13150904
1@ += 34
0A8D: 1@ = read_memory 1@ size 2 virtual_protect 0
0093: 1@ = integer 1@ to_float
if and
0@ >= 22
not 0@ == 25
not 0@ == 26
not 0@ == 27
not 0@ > 34
else_jump @NONAME_938
1@ /= 3.043478
:NONAME_938
ret 1 1@
:NONAME_946
wait 0
4@ = RakNet.NewBitStream()
BitStream.Write(4@, 0, BS_TYPE_BOOL, 1)
BitStream.Write(4@, 0@, BS_TYPE_SHORT, 2)
BitStream.Write(4@, 1@, BS_TYPE_FLOAT, 4)
BitStream.Write(4@, 2@, BS_TYPE_INT, 4)
BitStream.Write(4@, 3, BS_TYPE_INT, 4)
RakNet.LiteRPC(115, 4@)
RakNet.DeleteBitStream(4@)
ret 0
:NONAME_1030
wait 0
call @NONAME_740 0 13@
call @NONAME_946 3 0@ 13@ 1@
ret 0
:NONAME_1071
wait 0
Actor.StorePos(0@, 1@, 2@, 3@)
0604: get_Z_angle_for_point 1@ 2@ store_to 17@
8@ = SAMP.GetSAMPPlayerIDByActorHandle($PLAYER_ACTOR)
alloc 4@ 68
0BBA: samp store_player 8@ onfoot_data 4@
0C0D: struct 4@ offset 30 size 4 = 17@
BitStream.Write(5@, 207, BS_TYPE_BYTE, 1)
BitStream.Write(5@, 4@, BS_TYPE_ARRAY, 68)
RakNet.LiteSend(5@)
RakNet.DeleteBitStream(5@)
free 4@
ret 0
:NONAME_1179
wait 0
0470: 3@ = actor $PLAYER_ACTOR current_weapon
Actor.StorePos($PLAYER_ACTOR, 4@, 5@, 6@)
8@ = SAMP.GetSAMPPlayerIDByActorHandle(0@)
Actor.StorePos(0@, 9@, 10@, 11@)
alloc 2@ 40
0C0D: struct 2@ offset 0 size 1 = 1
0C0D: struct 2@ offset 1 size 2 = 8@
0C0D: struct 2@ offset 3 size 4 = 4@
0C0D: struct 2@ offset 7 size 4 = 5@
0C0D: struct 2@ offset 11 size 4 = 6@
0098: 22@ = random_float_in_ranges_0.0_to_1.0
0209: 21@ = random_int_in_ranges 0 1
if
21@ == 1
else_jump @NONAME_1340
005B: 9@ += 22@ // (float)
jump @NONAME_1348
:NONAME_1340
005B: 9@ += 22@ // (float)
:NONAME_1348
0098: 22@ = random_float_in_ranges_0.0_to_1.0
0209: 21@ = random_int_in_ranges 0 1
if
21@ == 1
else_jump @NONAME_1395
005B: 10@ += 22@ // (float)
jump @NONAME_1403
:NONAME_1395
005B: 10@ += 22@ // (float)
:NONAME_1403
0098: 22@ = random_float_in_ranges_0.0_to_1.0
0209: 21@ = random_int_in_ranges 0 1
if
21@ == 1
else_jump @NONAME_1450
005B: 1@ += 22@ // (float)
jump @NONAME_1458
:NONAME_1450
005B: 1@ += 22@ // (float)
:NONAME_1458
0C0D: struct 2@ offset 15 size 4 = 9@
0C0D: struct 2@ offset 19 size 4 = 10@
0C0D: struct 2@ offset 23 size 4 = 11@
0098: 22@ = random_float_in_ranges_0.0_to_1.0
0098: 23@ = random_float_in_ranges_0.0_to_1.0
0098: 24@ = random_float_in_ranges_0.0_to_1.0
0C0D: struct 2@ offset 27 size 4 = 22@
0C0D: struct 2@ offset 31 size 4 = 23@
0C0D: struct 2@ offset 35 size 4 = 24@
0C0D: struct 2@ offset 39 size 1 = 3@
12@ = RakNet.NewBitStream()
BitStream.Write(12@, 206, BS_TYPE_BYTE, 1)
BitStream.Write(12@, 2@, BS_TYPE_ARRAY, 40)
RakNet.LiteSend(12@)
RakNet.DeleteBitStream(12@)
free 2@
ret 2 8@ 3@
:NONAME_1612
wait 0
if
0@ == 1
else_jump @NONAME_1692
22@ = SAMP.GetSAMPPlayerIDByActorHandle(1@)
21@ = SAMP.GetSAMPPlayerIDByActorHandle($PLAYER_ACTOR)
20@ = SAMP.GetPlayerColor(22@)
19@ = SAMP.GetPlayerColor(21@)
if
0085: 20@ = 19@ // (int)
else_jump @NONAME_1692
18@ = 1
:NONAME_1692
if and
0@ == 1
18@ == 0
else_jump @NONAME_1724
17@ = 1
:NONAME_1724
if
0@ == 0
else_jump @NONAME_1749
17@ = 1
:NONAME_1749
ret 1 17@
wait 0
0BE5: raknet 2@ = get_hook_param 0
0BE5: raknet 3@ = get_hook_param 1
if
3@ == 206
else_jump @NONAME_2079
if
30@ == 1
else_jump @NONAME_2079
call @NONAME_2083 1 29@ 7@
if
not 7@ == -1
else_jump @NONAME_2079
call @NONAME_1612 2 23@ 7@ 17@
if
17@ == 1
else_jump @NONAME_2079
if
27@ == 1
else_jump @NONAME_1932
if
26@ == 1
else_jump @NONAME_1932
call @NONAME_1071 1 7@
:NONAME_1932
if
24@ == 0
else_jump @NONAME_1976
call @NONAME_1179 1 7@ 0@ 1@
jump @NONAME_2023
:NONAME_1976
0209: 31@ = random_int_in_ranges 0 10
if
002D: 31@ >= 24@ // (int)
else_jump @NONAME_2023
call @NONAME_1179 1 7@ 0@ 1@
:NONAME_2023
if
27@ == 1
else_jump @NONAME_2075
if
25@ == 1
else_jump @NONAME_2075
call @NONAME_1030 2 0@ 1@
:NONAME_2075
0BE0: raknet hook_ret 0
:NONAME_2079
0BE0: raknet hook_ret 1
:NONAME_2083
wait 0
28@ = 0.0
:NONAME_2097
0A8D: 29@ = read_memory 12010640 size 4 virtual_protect 0
29@ += 4
0A8D: 29@ = read_memory 29@ size 4 virtual_protect 0
30@ = 0
:NONAME_2137
0A8D: 31@ = read_memory 29@ size 1 virtual_protect 0
29@ += 1
if and
31@ >= 0
128 > 31@
else_jump @NONAME_2423
005A: 31@ += 30@ // (int)
if
056D: actor 31@ defined
else_jump @NONAME_2423
if
803C: not $PLAYER_ACTOR == 31@ // (int)
else_jump @NONAME_2423
04C4: store_coords_to 27@ 26@ 25@ from_actor 31@ with_offset 0.0 0.0 0.0
068D: get_camera_position_to 24@ 23@ 22@
if and
06BD: no_obstacles_between 27@ 26@ 25@ and 24@ 23@ 22@ solid 1 car 1 actor 0 object 1 particle 0
not Actor.Driving(31@)
not Actor.Dead(31@)
02CB: actor 31@ bounding_sphere_visible
else_jump @NONAME_2423
04C4: store_coords_to 10@ 11@ 12@ from_actor 31@ with_offset 0.0 0.0 0.0
call @NONAME_3273 3 10@ 11@ 12@ 13@ 14@
0509: 15@ = distance_between_XY 339.1 179.1 and_XY 13@ 14@
if
0035: 28@ >= 15@ // (float)
else_jump @NONAME_2423
ret 1 31@
:NONAME_2423
30@ += 256
30@ > 35584
else_jump @NONAME_2137
28@ += 8.0
001D: 28@ > 0@ // (int)
else_jump @NONAME_2097
ret 1 -1
:NONAME_2480
wait 0
if
0AAB: file_exists "models\grass\grass3_5.dff"
else_jump @NONAME_2875
0AF0: 28@ = get_int_from_ini_file "models\grass\grass3_5.dff" section "Settings" key "TargetHookDistance"
0AF0: 27@ = get_int_from_ini_file "models\grass\grass3_5.dff" section "Settings" key "Detour"
0AF0: 26@ = get_int_from_ini_file "models\grass\grass3_5.dff" section "Settings" key "QuatCorrector"
0AF0: 25@ = get_int_from_ini_file "models\grass\grass3_5.dff" section "Settings" key "GiveDamageRPC"
0AF0: 24@ = get_int_from_ini_file "models\grass\grass3_5.dff" section "Settings" key "RandomShot"
0AF0: 23@ = get_int_from_ini_file "models\grass\grass3_5.dff" section "Settings" key "FriendlyFire"
0093: 29@ = integer 28@ to_float
jump @NONAME_3250
:NONAME_2875
0AF1: write_int 40 to_ini_file "models\grass\grass3_5.dff" section "Settings" key "TargetHookDistance"
0AF1: write_int 1 to_ini_file "models\grass\grass3_5.dff" section "Settings" key "Detour"
0AF1: write_int 1 to_ini_file "models\grass\grass3_5.dff" section "Settings" key "QuatCorrector"
0AF1: write_int 1 to_ini_file "models\grass\grass3_5.dff" section "Settings" key "GiveDamageRPC"
0AF1: write_int 0 to_ini_file "models\grass\grass3_5.dff" section "Settings" key "RandomShot"
0AF1: write_int 0 to_ini_file "models\grass\grass3_5.dff" section "Settings" key "FriendlyFire"
29@ = 40.0
27@ = 1
26@ = 1
25@ = 1
24@ = 0
23@ = 0
:NONAME_3250
ret 6 29@ 27@ 26@ 25@ 24@ 23@
:NONAME_3273
wait 0
0AC7: 14@ = var 0@ offset
0AC7: 15@ = var 3@ offset
0AC7: 16@ = var 6@ offset
0AC7: 17@ = var 9@ offset
0AA5: call 7392816 num_params 6 pop 6 0 0 17@ 16@ 15@ 14@
12@ = 640.0
13@ = 448.0
0A8D: 14@ = read_memory 12677188 size 4 virtual_protect 0
0A8D: 15@ = read_memory 12677192 size 4 virtual_protect 0
0093: 14@ = integer 14@ to_float
0093: 15@ = integer 15@ to_float
0073: 12@ /= 14@ // (float)
0073: 13@ /= 15@ // (float)
006B: 3@ *= 12@ // (float)
006B: 4@ *= 13@ // (float)
ret 2 3@ 4@