// 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
thread "bladee"
:Label00000C
wait 0
SAMP.Available
jf @Label00000C
if
8AAB: not file_exists "CLEO\drugtimer.ini"
jf @Label0000E4
0AF1: write_int 1 to_ini_file "CLEO\drugtimer.ini" section "Drugtimer for Evolve RP" key "active"
0AF1: write_int 60 to_ini_file "CLEO\drugtimer.ini" section "Drugtimer for Evolve RP" key "seconds"
0AF1: write_int 0 to_ini_file "CLEO\drugtimer.ini" section "Drugtimer for Evolve RP" key "sbiv"
:Label0000E4
0AF0: 2@ = get_int_from_ini_file "CLEO\drugtimer.ini" section "Drugtimer for Evolve RP" key "active"
if
2@ >= 1
jf @Label00013E
2@ = 1
goto @Label000145
:Label00013E
2@ = 0
:Label000145
0AF1: write_int 2@ to_ini_file "CLEO\drugtimer.ini" section "Drugtimer for Evolve RP" key "active"
0AF0: 15@ = get_int_from_ini_file "CLEO\drugtimer.ini" section "Drugtimer for Evolve RP" key "seconds"
if
15@ > 65535
jf @Label0001E0
15@ = 65535
goto @Label0001F9
:Label0001E0
if
not 15@ >= 0
jf @Label0001F9
15@ = 0
:Label0001F9
0AF1: write_int 15@ to_ini_file "CLEO\drugtimer.ini" section "Drugtimer for Evolve RP" key "seconds"
0AF0: 8@ = get_int_from_ini_file "CLEO\drugtimer.ini" section "Drugtimer for Evolve RP" key "sbiv"
if
8@ >= 1
jf @Label000293
8@ = 1
13@ = 1
goto @Label00029A
:Label000293
8@ = 0
:Label00029A
0AF1: write_int 8@ to_ini_file "CLEO\drugtimer.ini" section "Drugtimer for Evolve RP" key "sbiv"
alloc 28@ 256
alloc 27@ 64
alloc 26@ 64
alloc 21@ 64
0BE3: raknet setup_incoming_rpc_hook -1639
0B34: samp register_client_command "ttogg" to_label @Label0007BD
0B34: samp register_client_command "tinfo" to_label @Label000A9D
0B34: samp register_client_command "tsbiv" to_label @Label000857
0B34: samp register_client_command "tsec" to_label @Label000923
0C74: 1 = create_timer_interval 1000 on_label -3061
0C78: set_timer 1 active 0
:Label00033F
82CB: not actor $PLAYER_ACTOR bounding_sphere_visible
jf @Label000356
wait 0
goto @Label00033F
:Label000356
if
13@ == 1
jf @Label000389
SAMP.ReadSAMPMemory(19@, 94112, 2)
SAMP.WriteSAMPMemory(94112, 50064, 2)
13@ -= 1
:Label000389
if
2@ == 1
jf @Label000433
0A8D: 9@ = read_memory 12030944 size 4 virtual_protect 1
if
9@ == 569.0
jf @Label0003E1
0C48: samp textdraw 618 create "Use!" pos 610.0 65.5
10@ = 1
goto @Label0003FD
:Label0003E1
0C48: samp textdraw 618 create "Use!" pos 610.0 75.8
10@ = 0
:Label0003FD
0C52: samp textdraw 618 set_letter_size 0.225 1.1 color -1
0C4D: samp textdraw 618 set_shadow 1 color -16777216
0C4E: samp textdraw 618 set_outline 1 color -16777216
0B34: samp register_client_command "tres" to_label @Label000A67
:Label000433
wait 0
Label00061D()
if
2@ == 0
jf @Label000483
0C5E: samp textdraw 618 delete
0C78: set_timer 1 active 0
SAMP.UnregisterClientCommand("tres")
1@ = 0
:Label00046A
wait 0
2@ == 1
jf @Label00046A
goto @Label00033F
:Label000483
23@ = SAMP.GetSAMPPlayerIDByActorHandle($PLAYER_ACTOR)
22@ = SAMP.GetPlayerHealthByActorHandle(23@)
if and
0ADC: test_cheat "X"
not Actor.Dead($PLAYER_ACTOR)
not SAMP.IsCursorActive
8C79: not is_timer 1 active
1@ == 0
22@ > 0
jf @Label000518
12@ = Actor.Health($PLAYER_ACTOR)
17@ = 160
0062: 17@ -= 12@ // (int)
17@ /= 10
if
17@ > 0
jf @Label000508
say "/usedrugs %d" 17@
goto @Label000518
:Label000508
say "/usedrugs 1"
:Label000518
12@ = SAMP.GetGamestate()
if
12@ == 5
jf @Label00055B
0C78: set_timer 1 active 0
SAMP.UnregisterClientCommand("tres")
:Label00053D
wait 0
12@ = SAMP.GetGamestate()
12@ == 3
jf @Label00053D
goto @Label00033F
:Label00055B
if and
0C79: is_timer 1 active
12@ == 3
jf @Label0005C2
if or
Actor.Dead($PLAYER_ACTOR)
not 22@ > 0
jf @Label0005C2
:Label000588
wait 0
Label00061D()
23@ = SAMP.GetSAMPPlayerIDByActorHandle($PLAYER_ACTOR)
22@ = SAMP.GetPlayerHealthByActorHandle(23@)
22@ > 0
jf @Label000588
0C78: set_timer 1 active 0
0C50: samp textdraw 618 set_string "Use!"
:Label0005C2
if
not 1@ >= -1
jf @Label0005F9
0C78: set_timer 1 active 0
0C50: samp textdraw 618 set_string "Use!"
018C: play_sound 1057 at 0.0 0.0 0.0
:Label0005F9
if and
8C79: not is_timer 1 active
not 1@ == 0
jf @Label000616
1@ = 0
:Label000616
goto @Label000433
:Label00061D
0A8D: 9@ = read_memory 12030944 size 4 virtual_protect 1
if
9@ == 569.0
jf @Label000656
0C51: samp textdraw 618 set_pos 610.0 65.5
goto @Label000665
:Label000656
0C51: samp textdraw 618 set_pos 610.0 75.8
:Label000665
return
0BE5: raknet 30@ = get_hook_param 1
if and
30@ == 93
2@ == 1
jf @Label0007B9
0BE5: raknet 30@ = get_hook_param 0
14@ = BitStream.GetReadOffset(30@)
BitStream.SetReadOffset(30@, 32)
29@ = BitStream.Read(30@, 3)
BitStream.ReadArray(30@, 28@, 29@)
0C1E: array 28@ element 29@ el_size 1 = 0
BitStream.SetReadOffset(30@, 14@)
23@ = SAMP.GetSAMPPlayerIDByActorHandle($PLAYER_ACTOR)
27@ = SAMP.GetPlayerNickname(23@)
format 26@ " %s употребил(a) наркотик" 27@
if and
0C14: strcmp string1 28@ string2 26@
8C79: not is_timer 1 active
jf @Label00071F
31@ += 1
goto @Label000766
:Label00071F
0AD4: 25@ = scan_string 28@ format " (( Здоровье пополнено до: %i ))" 22@
if
25@ == 1
jf @Label000766
31@ += 1
:Label000766
if
31@ == 1
jf @Label0007B9
if
15@ > 0
jf @Label00079E
0085: 1@ = 15@ // (int)
0C77: set_timer 1 interval 0
0C78: set_timer 1 active 1
:Label00079E
018C: play_sound 1052 at 0.0 0.0 0.0
31@ -= 1
:Label0007B9
0BE0: raknet hook_ret 1
:Label0007BD
0B12: 2@ = 2@ XOR 1
0AF1: write_int 2@ to_ini_file "CLEO\drugtimer.ini" section "Drugtimer for Evolve RP" key "active"
if
2@ == 1
jf @Label000837
chatmsg "Скпипт {44DD44}включён" -1
goto @Label000855
:Label000837
chatmsg "Скрипт {DD4444}выключен" -1
:Label000855
SAMP.CmdRet
:Label000857
0B12: 8@ = 8@ XOR 1
0AF1: write_int 8@ to_ini_file "CLEO\drugtimer.ini" section "Drugtimer for Evolve RP" key "sbiv"
if
8@ == 1
jf @Label0008F0
SAMP.ReadSAMPMemory(19@, 94112, 2)
SAMP.WriteSAMPMemory(94112, 50064, 2)
chatmsg "Сбив анимации {44DD44}включён" -1
goto @Label000921
:Label0008F0
SAMP.WriteSAMPMemory(94112, 19@, 2)
chatmsg "Сбив анимации {DD4444}выключен" -1
:Label000921
SAMP.CmdRet
:Label000923
SAMP.IsCommandTyped(18@)
0AD4: 16@ = scan_string 18@ format "%i" 18@
if and
16@ == 1
18@ >= 0
not 18@ > 65535
jf @Label000A1E
if
18@ > 0
jf @Label0009B6
chatmsg "Новая продолжительность таймера: {44DD44}%i {FFFFFF}сек." -1 18@
goto @Label0009D4
:Label0009B6
chatmsg "Таймер {DD4444}выключен" -1
:Label0009D4
0AF1: write_int 18@ to_ini_file "CLEO\drugtimer.ini" section "Drugtimer for Evolve RP" key "seconds"
0085: 15@ = 18@ // (int)
goto @Label000A65
:Label000A1E
chatmsg "Используйте {DD4444}/tsec [число секунд] {FFFFFF}(от 0 до 65535)" -1
:Label000A65
SAMP.CmdRet
:Label000A67
if
0C79: is_timer 1 active
jf @Label000A9B
0C78: set_timer 1 active 0
018C: play_sound 1057 at 0.0 0.0 0.0
0C50: samp textdraw 618 set_string "Use!"
:Label000A9B
SAMP.CmdRet
:Label000A9D
if
not SAMP.IsDialogActive(619)
jf @Label000AEA
0AC6: 0@ = label @Label000AEC offset
SAMP.ShowDialog(619, "Наркотаймер для {FF384F}Evolve RP", 0@, "OK", "", DIALOG_STYLE_MSGBOX)
:Label000AEA
SAMP.CmdRet
:Label000AEC
hex
7B 46 46 33 38 34 46 7D 2F 74 74 6F 67 67 09 7B
46 46 46 46 46 46 7D C2 EA EB FE F7 E8 F2 FC 20
2F 20 E2 FB EA EB FE F7 E8 F2 FC 20 F1 EA F0 E8
EF F2 0A 7B 46 46 33 38 34 46 7D 2F 74 69 6E 66
6F 09 7B 46 46 46 46 46 46 7D CE F2 EE E1 F0 E0
E7 E8 F2 FC 20 E2 F1 EF EE EC EE E3 E0 F2 E5 EB
FC ED FB E9 20 E4 E8 E0 EB EE E3 0A 7B 46 46 33
38 34 46 7D 2F 74 73 62 69 76 09 7B 46 46 46 46
46 46 7D C2 EA EB FE F7 E8 F2 FC 20 2F 20 E2 FB
EA EB FE F7 E8 F2 FC 20 F1 E1 E8 E2 0A 7B 46 46
33 38 34 46 7D 2F 74 72 65 73 09 7B 46 46 46 46
46 46 7D CE E1 ED F3 EB E8 F2 FC 20 F2 E0 E9 EC
E5 F0 0A 7B 46 46 33 38 34 46 7D 2F 74 73 65 63
09 7B 46 46 46 46 46 46 7D D3 F1 F2 E0 ED EE E2
E8 F2 FC 20 EF F0 EE E4 EE EB E6 E8 F2 E5 EB FC
ED EE F1 F2 FC 20 F2 E0 E9 EC E5 F0 E0 20 E2 20
F1 E5 EA F3 ED E4 E0 F5 00
end
if
003B: 1@ == 15@ // (int)
jf @Label000C0F
0C77: set_timer 1 interval 1000
:Label000C0F
if
1@ >= 0
jf @Label000C36
format 24@s "%d" 1@
0C50: samp textdraw 618 set_string 24@s
:Label000C36
1@ -= 1
SAMP.CmdRet