{$CLEO .cs}
{$INCLUDE SF}
{$USE SAMPFUNCS}
{$USE bitwise}
{$USE ini}
0000:
//////////////////////////////////////////////////////////////////////////////////////////////////////////
/*
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ UPDATE LOG v7.5 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ Äîáàâëåí ïàðàìåòð FriendlyGroup äëÿ óêàçàíèÿ ìîäåëüíîé ãðóïïû ñêèíîâ ñîþçíèêîâ
+ Ïàðàìåòð RandomChance çàìåíåí íà RandomShot òåïåðü ïî äåôîëòó øàíñ íà ïîïàäàíèå 2 ê 3.
+ Èñïðàâëåí ðàíäîì øîò (ðàáîòàë íå òî÷íî)
+ Ïàðàìåòð ShowMesseges òàê æå îòêëþ÷àåò è ñîîáùåíèå î äðóæåñòâåííîì îãíå
+ Èñïðàâëåí ïàðàìåòð TargetPointer (Èç-çà íåãî ÷àñòî íå ïóñêàëî äàìàã)
+ Ñäåëàíû ðàíäîìíûå ÷àñòè òåëà ïðè ïîïàäàíèÿõ
+ Èñïðàâëåí áàã ñ ñîçäàíèåì êîíôèãà òîëüêî ïîñëå ðåëîãà
+ Äîáàâëåíà êîìàíäà /recfg äëÿ ïåðåçàãðóçêè êîíôèãà
+ Èñïðàâëåí áàã ñ ïàðàìåòðîì øîò äèñòàíñ (Ðàáîòàë íå òî÷íî)
+ Òåïåðü äàæå ïðè äðóãîì ðåæèìå àêòèâàöèè êîìàíäà /reaper âñåãäà äîñòóïíà
+ Èñïðàâëåí áàã ñ äâîéíîé îòïðàâêîé ðïö íà âûäà÷ó óðîíà êîãäà âû ñàìè ïîïàäàåòå â ñêèí
//////////////////////////////////////////////////////////////////////////////////////////
v8.0 - Update Log
+ Îáíîâëåíû ñòàðûå îáõîäû ïîä íîâûå àíòè÷èòû
+ Äîáàâëåí ïàðàìåòð BadData äëÿ îáõîäà ôèêñà ïî êàìåðå
+ Èçìåíåíèÿ â ñèñ-ìå ðàíäîìíûõ ïðîìàõîâ, òåïåðü ñ àâòîìàòèêè 1 ê 3 à ñ äðóãèõ 2 ê 3
+ Äîáàâëåí ïàðàìåòð WeaponsUpdate äëÿ îòêëþ÷åíèÿ ïåðåçàïèñè ïàêåòà ID_WEAPONS_UPDATE
+ Âûðåçàíû ïàðàìåòðû FriendlyFire, TargetPointer, ValidVector è CamBack
+ Óáðàí áàã ñ êëàâèøíîé àêòèâàöèåé (ïðè ñòðåëüáå åñëè çàæèìàòü òî ïåðåñòàâàë ðàáîòàòü àèì)
+ Ïàðàìåòð ShotDistance ïåðåèìåíîâàí â AnyDistance è òåïåðü ðàáîòàåò ñî çíà÷åíèÿìè 0/1
//////////////////////////////////////////////////////////////////////////////////////////
v8.5 - Update Log
+ Èñïðàâëåí áàã ñ ìîäåëüíûìè ãðóïïàìè áàíä (Íå ðàáîòàë ôèëüòð ïðîòèâ îãíÿ ïî ñâîèõ)
+ Èñïðàâëåí áàã ñ âûñòðåëàìè â ì¸ðòâûé/àôêàøíûé òàðãåò
+ Òåïåðü â ñëó÷àå íå âàëèäíîé öåëè å¸ ïîèñê áóäåò ïðîäîëæàòüñÿ
+ Äîáàâëåí ïàðàìåòð InCarVictim äëÿ îòêëþ÷åíèÿ ïîïàäàíèé ïî âîäèòåëÿõ/ïàññàæèðàõ
+ Âåðíóë ïàðàìåòðû ValidCamera è CameraBack (Ìàñêèðóåò óãîë òðàññåðà îò âûñòðåëà)
+ Òåïåðü êëàâèøíàÿ àêòèâàöèÿ íå áóäåò ñðàáàòûâàòü åñëè ÷àò îòêðûò
+ Òåïåðü ïðè ðàíäîìíûõ ïðîìàõàõ ïóëè áóäóò ïîïàäàòü êàê ïðè îáû÷íûõ âûñòðåëàõ
/////////////////////////////////////////////////////////////////////////////////////////
v9.0 [Premium] - Update Log
+ Óëó÷øåíàÿ ñèñòåìà ðàíäîìíûõ ïðîìàõîâ íà áîëåå êîìôîðòíóþ è ðåàëèñòè÷íóþ
- Äîáàâëåí ïàðàìåòð IgnoredWeapons äëÿ îòñåâà îðóæèé ñ êîòîðûé àèìèòü íå áóäåò
- Äîáàâëåí ïàðàìåòð FriendlySkins äëÿ óêàçàíèÿ ñâîèõ èäîâ äðóæåñòâåííûõ ñêèíîâ
+ Óáðàíû ïàðàìåòðû ValidCamera è CameraBack âìåñòå ñ ïðèíóäèòåëüíîé ñèíõðîé ïðèöåëèâàíèÿ
+ Èñïðàâëåíà îòïðàâêà ñåðâåðó èíôîðìàöèè î çåë¸íîì òðåóãîëüíèêå
+ Èñïðàâëåíû ñëó÷àéíûå çàâèñàíèÿ èãðû ïðè ñòðåëüáå ñ àèìáîòà
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ Áàã - Åñëè áóäåò ðàíäîìíûé ïðîìàõ è âû ðîâíî ñòðåëüíåòå â ñêèí òî ðïö î äàìàãå íå îòïðàâèò! }
*/
//////////////////////////////////////////////////////////////////////////////////////
repeat
wait 0
until SAMP.Available()
//////////////////////////////////////////////////////////////////////////////////////
var
$CFG: array 15 of Integer
end
//////////////////////////////////////////////////////////////////////////////////////
const
ActiveStatus = 31@
LastTargetHandle = 28@
HookDistance = $CFG[0]
AnyDistance = $CFG[1]
BadData = $CFG[2]
WallShot = $CFG[3]
WeaponsUpdate = $CFG[4]
RandomShot = $CFG[5]
InCarVictim = $CFG[6]
SendRPC = $CFG[7]
ModelGroup = $CFG[8]
DrawBlood = $CFG[9]
BloodDensity = $CFG[10]
AutoActivation = $CFG[11]
ActivationMode = $CFG[12]
GameKey = $CFG[13]
ShowMessages = $CFG[14]
end
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
gosub @DefaultVarInit
gosub @Config
0093: 12@ = integer HookDistance to_float
0AB1: call @AutoMark 2 AutoActivation ActiveStatus ret_to ActiveStatus
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
0B34: samp register_client_command "silent" to_label @cmd_hook
0B34: samp register_client_command "recfg" to_label @cmd2_hook
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
0BE1: raknet setup_outcoming_rpc_hook @MyRPC_Hook
0BE2: raknet setup_outcoming_packet_hook @PACKET_SYNC_HOOK
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
while true
wait 0
if SAMP.Available()
then
if and
0B61: samp is_local_player_spawned
8B21: not samp is_chat_opened
then
if GameKey <> -1
then
if ActivationMode == 2
then
if key_down GameKey
then
0B12: ActiveStatus = ActiveStatus XOR 1
if ShowMessages == 1
then
ActiveStatus == 1
end
end
wait 228
end
end
if ActivationMode == 3
then 0AB1: call @HookKeyModer 2 GameKey ShowMessages ret_to ActiveStatus
end
end
end
end
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
:HookKeyModer
0001: wait 0
if key_down 0@
then 2@ = 1
else 2@ = 0
end
if 1@ == 1
then
if 2@ == 1
then print "" time 50
end
end
0AB2: ret 1 2@
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
:cmd_hook
if 0B61: samp is_local_player_spawned
then
if ShowMessages == 1
then
if ActiveStatus == 0
then print "" time 3000
else print "" time 3000
end
end
0B12: ActiveStatus = ActiveStatus XOR 1
end
0B43: samp cmd_ret
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
:cmd2_hook
if 0B61: samp is_local_player_spawned
then
if 0AAB: file_exists "CLEO\AimConfig_v9.0[by_0pc0d3R].ini"
then
0AF0: HookDistance = get_int_from_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "Settings" key "HookDistance"
0AF0: AnyDistance = get_int_from_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "Settings" key "AnyDistancee"
0AF0: BadData = get_int_from_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "Settings" key "BadData"
0AF0: WallShot = get_int_from_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "Settings" key "WallShot"
0AF0: WeaponsUpdate = get_int_from_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "Settings" key "WeaponsUpdate"
0AF0: RandomShot = get_int_from_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "Settings" key "RandomShot"
0AF0: InCarVictim = get_int_from_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "Settings" key "InCarVictim"
0AF0: SendRPC = get_int_from_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "Settings" key "SendRPC"
0AF0: ModelGroup = get_int_from_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "Settings" key "ModelGroup"
0AF0: DrawBlood = get_int_from_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "Settings" key "DrawBlood"
0AF0: BloodDensity = get_int_from_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "Settings" key "BloodDensity"
0AF0: AutoActivation = get_int_from_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "Settings" key "AutoActivation"
0AF0: ActivationMode = get_int_from_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "Settings" key "ActivationMode"
0AF0: GameKey = get_int_from_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "Settings" key "GameKey"
0AF0: ShowMessages = get_int_from_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "Settings" key "ShowMessages"
print "~w~Config file was successfully ~g~Reloaded" time 1556
else print "~r~Error! ~w~Config file doesn`t exist!" time 1556
end
end
0B43: samp cmd_ret
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
:AutoMark
0001: wait 0
if 0@ == 1
then 0B12: 1@ = 1@ XOR 1
end
0AB2: ret 1 1@
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
:DamageConvert
0001: wait 0
var
1@ : Float
end
0470: 0@ = actor $PLAYER_ACTOR current_weapon
if or
0@ == 22
0@ == 29
then 1@ = 8.25
end
if 0@ == 23
then 1@ = 13.200000762939453125
end
if or
0@ == 28
0@ == 32
then 1@ = 6.6000003814697265625
end
if or
0@ == 30
0@ == 31
then 1@ = 9.90000057220458984375
end
if 0@ == 33
then 1@ = 24.7500019073486328125
end
if 0@ == 34
then 1@ = 41.25
end
if or
0@ == 24
0@ == 38
then 1@ = 46.200000762939453125
end
if or
0@ == 25
0@ == 26
then
1@ = 3.30000019073486328125
1@ *= 15
end
if 0@ == 27
then
1@ = 4.950000286102294921875
1@ *= 8
end
0AB2: ret 1 1@
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
:GiveTakeDamageRPC
0001: wait 0
0470: 25@ = actor $PLAYER_ACTOR current_weapon
0209: 15@ = random_int_in_ranges 3 9
0B3D: raknet 4@ = new_bit_stream
0B40: raknet bit_stream 4@ write 0 type BS_TYPE_BOOL size 1
0B40: raknet bit_stream 4@ write 0@ type BS_TYPE_SHORT size 2
0B40: raknet bit_stream 4@ write 1@ type BS_TYPE_FLOAT size 4
0B40: raknet bit_stream 4@ write 25@ type BS_TYPE_INT size 4
0B40: raknet bit_stream 4@ write 15@ type BS_TYPE_INT size 4
0B8A: raknet send_rpc 115 bit_stream 4@
0B3E: raknet delete_bit_stream 4@
0AB2: ret 0
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
:Detour
0001: wait 0
0AB1: call @DamageConvert 0 return_to 13@
0AB1: call @GiveTakeDamageRPC 2 0@ 13@
0AB2: ret 0
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
:SendSilentBullet
0001: wait 0
00A0: store_actor 3@ position_to 9@ 10@ 11@
00A0: store_actor $PLAYER_ACTOR position_to 19@ 5@ 6@
////////////////////////////////////////////////////
0470: 25@ = actor $PLAYER_ACTOR current_weapon
0B2B: samp 8@ = get_player_id_by_actor_handle 3@
0AC8: 17@ = allocate_memory_size 40
0C0D: struct 17@ offset 0 size 1 = 1
0C0D: struct 17@ offset 1 size 2 = 8@
0C0D: struct 17@ offset 3 size 4 = 19@
0C0D: struct 17@ offset 7 size 4 = 5@
0C0D: struct 17@ offset 11 size 4 = 6@
/////////////////////////////////////////
0C0D: struct 17@ offset 15 size 4 = 9@
0C0D: struct 17@ offset 19 size 4 = 10@
0C0D: struct 17@ offset 23 size 4 = 11@
/////////////////////////////////////////
0098: 22@ = random_float 0.0 _to_ 0.6
0098: 23@ = random_float 0.0 _to_ 0.4
0098: 24@ = random_float 0.0 _to_ 0.5
/////////////////////////////////////////
0063: 28@ = 22@
0063: 29@ = 23@
0063: 30@ = 24@
/////////////////////////////////////////
0209: 27@ = random 1 to_ 10
if 27@ >= 5
then
22@ = -0.2
0063: 22@ -= 28@
end
/////////////////////////////////////////
0209: 27@ = random 1 to_ 10
if 27@ >= 5
then
23@ = -0.2
0063: 23@ -= 29@
end
/////////////////////////////////////////
0209: 27@ = random 1 to_ 10
if 27@ >= 5
then
24@ = -0.2
0063: 24@ -= 30@
end
/////////////////////////////////////////
0C0D: struct 17@ offset 27 size 4 = 22@
0C0D: struct 17@ offset 31 size 4 = 23@
0C0D: struct 17@ offset 35 size 4 = 24@
/////////////////////////////////////////
0C0D: struct 17@ offset 39 size 1 = 25@
0B3D: raknet 12@ = new_bit_stream
0B40: raknet bit_stream 12@ write 206 type BS_TYPE_BYTE size 1
0B40: raknet bit_stream 12@ write 17@ type BS_TYPE_ARRAY size 40
0B8B: raknet send bit_stream 12@
0B3E: raknet delete_bit_stream 12@
0AC9: free_allocated_memory 17@
if 0@ == 1
then 09B8: create_blood_gush_at 9@ 10@ 11@ with_offset 22@ 23@ 24@ density 2@ on_actor 3@
end
if 4@ == 1
then 0AB1: call @Detour 1 8@
end
0AB2: ret 0
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
:ModelGroup
0001: wait 0
18@ = 1
if 0@ <> 0
then
0665: get_actor 1@ model_to 17@
if 0@ == 1
then
if or
17@ == 105
17@ == 106
17@ == 107
then 18@ = 0
end
end
if 0@ == 2
then
if or
17@ == 102
17@ == 103
17@ == 104
then 18@ = 0
end
end
if 0@ == 3
then
if or
17@ == 114
17@ == 115
17@ == 116
then 18@ = 0
end
end
if 0@ == 4
then
if or
17@ == 108
17@ == 109
17@ == 110
then 18@ = 0
end
end
if 0@ == 5
then
if or
17@ == 173
17@ == 174
17@ == 175
then 18@ = 0
end
end
if 0@ == 6
then
if or
17@ == 111
17@ == 112
17@ == 125
17@ == 126
17@ == 127
then 18@ = 0
end
end
if 0@ == 7
then
if or
17@ == 113
17@ == 124
then 18@ = 0
end
end
if 0@ == 8
then
if or
17@ == 121
17@ == 122
17@ == 123
17@ == 117
17@ == 118
17@ == 120
then 18@ = 0
end
end
if 18@ == 0
then
if 2@ == 1
then print "~g~Friendly ~r~Fire!" 500
end
end
end
0AB2: ret 1 18@
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
:MyRPC_Hook
0001: wait 0
0BE5: raknet 10@ = get_hook_param PARAM_PACKETID
if 10@ == 115
then
if ActiveStatus == 1
then 0BE0: raknet hook_ret false
end
end
0BE0: raknet hook_ret true
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
:BadOnFootData
wait 0
00A0: store_actor 0@ position_to 1@ 2@ 3@
0604: get_Z_angle_for_point 1@ 2@ store_to 17@
0B2B: samp 8@ = get_player_id_by_actor_handle $PLAYER_ACTOR
0AC8: 4@ = allocate_memory_size 68
0BBA: samp store_player 8@ onfoot_data 4@
0C0D: struct 4@ offset 30 size 4 = 17@
0B40: raknet bit_stream 5@ write PACKET_PLAYER_SYNC type BS_TYPE_BYTE size 1
0B40: raknet bit_stream 5@ write 4@ type BS_TYPE_ARRAY size 68
0B8B: raknet send bit_stream 5@
0B3E: raknet delete_bit_stream 5@
0AC9: free_allocated_memory 4@
ret 0
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
:GetRandom
wait 0
0470: 2@ = actor $PLAYER_ACTOR current_weapon
if or
2@ == 28
2@ == 29
2@ == 30
2@ == 31
2@ == 32
2@ == 38
then 0@ = 1
else 0@ = 2
end
0209: 19@ = random_int_in_ranges 1 10
if 0@ = 1
then
if 19@ <= 2
then 1@ = 0
else 1@ = 1
end
else
if 19@ <= 5
then 1@ = 1
else 1@ = 0
end
end
ret 1 1@
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
:InTarget
wait 0
0A96: 2@ = actor $PLAYER_ACTOR struct
0A8E: 1@ = 2@ + 0x79C
0A8D: 2@ = read_memory 1@ size 1 virtual_protect 1
if 003B: 2@ == 0@
then ret 1 1
end
ret 1 -1
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
:PACKET_SYNC_HOOK
0001: wait 0
0BE5: raknet 2@ = get_hook_param PARAM_BITSTREAM
0BE5: raknet 3@ = get_hook_param PARAM_PACKETID
if 3@ == PACKET_WEAPONS_UPDATE
then
if and
ActiveStatus == 1
WeaponsUpdate == 1
then
call @InTarget 1 LastTargetHandle ret_to 25@
if 25@ <> 1
then
0BF3: raknet 4@ = bit_stream 2@ get_data_ptr
0B2B: samp 26@ = get_player_id_by_actor_handle LastTargetHandle
0C0D: struct 4@ offset 1 size 2 = 26@
end
end
end
if 3@ == PACKET_BULLET_SYNC
then
if ActiveStatus == 1
then
call @GET_AIM_TARGET_ACTOR 6 12@ WallShot ModelGroup ShowMessages AnyDistance InCarVictim ret_to 7@
if 7@ <> -1
then
008A: LastTargetHandle = 7@
/////////////////////////////////////////////////
var
15@ : Float
27@ : Float
21@ : Float
end
/////////////////////////////////////////////////
068E: get_camera_target_point_to 15@ 27@ 21@
if RandomShot == 0
then
if BadData == 1
then 0AB1: call @BadOnFootData 1 LastTargetHandle
end
0AB1: call @SendSilentBullet 5 DrawBlood AnyDistance BloodDensity LastTargetHandle SendRPC
0BE0: raknet hook_ret false
else
var
13@ : Integer
19@ : Integer
end
call @GetRandom 0 ret_to 13@
if 13@ == 1
then
if BadData == 1
then 0AB1: call @BadOnFootData 1 LastTargetHandle
end
0AB1: call @SendSilentBullet 5 DrawBlood AnyDistance BloodDensity LastTargetHandle SendRPC
0BE0: raknet hook_ret false
end
end
end
end
end
0BE0: raknet hook_ret true
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
:ValidDistance
wait 0
0470: 25@ = actor $PLAYER_ACTOR current_weapon
if or
25@ == 22
25@ == 23
25@ == 24
25@ == 26
25@ == 28
25@ == 32
then 0@ = 35.0
end
if or
25@ == 25
25@ == 27
then 0@ = 40.0
end
if 25@ == 29
then 0@ = 45.0
end
if 25@ == 30
then 0@ = 70.0
end
if 25@ == 31
then 0@ = 90.0
end
if 25@ == 33
then 0@ = 100.0
end
if 25@ == 34
then 0@ = 320.0
end
if 25@ == 38
then 0@ = 75.0
end
ret 1 0@
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
:GET_AIM_TARGET_ACTOR
0001: wait 0
FOR 28@ = 0.0 TO 0@ STEP 8.0
0A8D: 29@ = read_memory 0xB74490 size 4 virtual_protect 0
000A: 29@ += 0x4
0A8D: 29@ = read_memory 29@ size 4 virtual_protect 0
for 30@ = 0 to 35584 step 0x100
0A8D: 31@ = read_memory 29@ size 1 virtual_protect 0
000A: 29@ += 0x1
if and
0029: 31@ >= 0x00
001B: 0x80 > 31@
then 005A: 31@ += 30@
if 056D: actor 31@ defined
then
if 803C: $PLAYER_ACTOR == 31@
then
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@
8@ = SAMP.GetSAMPPlayerIDByActorHandle(31@)
if and
8118: not actor 31@ dead
02CB: actor 31@ bounding_sphere_visible
0B5C: not samp is_player 8@ paused
then
04C4: store_coords_to 10@ 11@ 12@ from_actor 31@ 0.0 0.0 0.0
0AB1: call_scm_func @getScreenXYFrom3DCoords 3 3D_coords_X 10@ Y 11@ Z 12@ store_screen_X_to 13@ Y_to 14@
0509: 15@ = distance_between_XY 339.1 179.1 and_XY 13@ 14@
if 0035: 28@ >= 15@
then
if 1@ == 0
then
if 06BD: no_obstacles_between 27@ 26@ 25@ and 24@ 23@ 22@ solid 1 car 1 actor 0 object 1 particle 1
then wait 0
else continue
end
end
/////////////////////////////////////////////////////////////////
if 5@ == 0
then
if 0449: actor 31@ in_a_car
then continue
end
end
////////////////////////////////////////////////////////////////////////
if 4@ == 0
then
var
9@ : Float
20@ : Float
end
0509: 9@ = distance_between_XY 10@ 11@ and_XY 24@ 23@
call @ValidDistance 0 ret_to 20@
///////////////////////////////////////////////////////////////////
if 9@ >= 20@
then continue
end
end
//////////////////////////////////////////////////////////////////
if 2@ <> 0
then
0AB1: call @ModelGroup 3 2@ 31@ 3@ ret_to 6@
if 6@ == 1
then 7@ = 1
else 7@ = 0
end
else 7@ = 1
end
////////////////////////////////////////////////////////////////
if 7@ == 1
then 0AB2: 1 31@
else continue
end
end
else continue
end
end
end
end
end
END
0AB2: 1 -1
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
:getScreenXYFrom3DCoords
0001: wait 0
0AC7: 14@ = var 0@ offset
0AC7: 15@ = var 3@ offset
0AC7: 16@ = var 6@ offset
0AC7: 17@ = var 9@ offset
0AA5: call 0x70CE30 num_params 6 pop 6 0 0 17@ 16@ 15@ 14@
0007: 12@ = 640.0
0007: 13@ = 448.0
0A8D: 14@ = read_memory 0xC17044 size 4 virtual_protect 0
0A8D: 15@ = read_memory 0xC17048 size 4 virtual_protect 0
0093: 14@ = integer 14@ to_float
0093: 15@ = integer 15@ to_float
0073: 12@ /= 14@
0073: 13@ /= 15@
006B: 3@ *= 12@
006B: 4@ *= 13@
0AB2: ret 2 3@ 4@
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
:DefaultVarInit
HookDistance = 60
AnyDistance = 0
BadData = 1
WallShot = 1
WeaponsUpdate = 1
RandomShot = 0
InCarVictim = 1
SendRPC = 1
ModelGroup = 0
DrawBlood = 1
BloodDensity = 120
AutoActivation = 0
ActivationMode = 1
GameKey = -1
ShowMessages = 1
return
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
:Config
if 0AAB: file_exists "CLEO\AimConfig_v9.0[by_0pc0d3R].ini"
then
0AF0: HookDistance = get_int_from_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "Settings" key "HookDistance"
0AF0: AnyDistance = get_int_from_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "Settings" key "AnyDistance"
0AF0: BadData = get_int_from_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "Settings" key "BadData"
0AF0: WallShot = get_int_from_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "Settings" key "WallShot"
0AF0: WeaponsUpdate = get_int_from_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "Settings" key "WeaponsUpdate"
0AF0: RandomShot = get_int_from_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "Settings" key "RandomShot"
0AF0: InCarVictim = get_int_from_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "Settings" key "InCarVictim"
0AF0: SendRPC = get_int_from_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "Settings" key "SendRPC"
0AF0: ModelGroup = get_int_from_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "Settings" key "ModelGroup"
0AF0: DrawBlood = get_int_from_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "Settings" key "DrawBlood"
0AF0: BloodDensity = get_int_from_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "Settings" key "BloodDensity"
0AF0: AutoActivation = get_int_from_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "Settings" key "AutoActivation"
0AF0: ActivationMode = get_int_from_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "Settings" key "ActivationMode"
0AF0: GameKey = get_int_from_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "Settings" key "GameKey"
0AF0: ShowMessages = get_int_from_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "Settings" key "ShowMessages"
else
0AF1: write_int HookDistance to_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "Settings" key "HookDistance"
0AF1: write_int AnyDistance to_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "Settings" key "AnyDistance"
0AF1: write_int BadData to_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "Settings" key "BadData"
0AF1: write_int WallShot to_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "Settings" key "WallShot"
0AF1: write_int WeaponsUpdate to_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "Settings" key "WeaponsUpdate"
0AF1: write_int RandomShot to_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "Settings" key "RandomShot"
0AF1: write_int InCarVictim to_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "Settings" key "InCarVictim"
0AF1: write_int SendRPC to_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "Settings" key "SendRPC"
0AF1: write_int ModelGroup to_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "Settings" key "ModelGroup"
0AF1: write_int DrawBlood to_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "Settings" key "DrawBlood"
0AF1: write_int BloodDensity to_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "Settings" key "BloodDensity"
0AF1: write_int AutoActivation to_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "Settings" key "AutoActivation"
0AF1: write_int ActivationMode to_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "Settings" key "ActivationMode"
0AF1: write_int GameKey to_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "Settings" key "GameKey"
0AF1: write_int ShowMessages to_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "Settings" key "ShowMessages"
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
0AF5: write_string "1" to_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "ModelGroups" key "Grove"
0AF5: write_string "2" to_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "ModelGroups" key "Ballas"
0AF5: write_string "3" to_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "ModelGroups" key "Aztec"
0AF5: write_string "4" to_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "ModelGroups" key "Vagos"
0AF5: write_string "5" to_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "ModelGroups" key "Rifa"
0AF5: write_string "6" to_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "ModelGroups" key "RM"
0AF5: write_string "7" to_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "ModelGroups" key "LCN"
0AF5: write_string "8" to_ini_file "CLEO\AimConfig_v9.0[by_0pc0d3R].ini" section "ModelGroups" key "Yakuza"
end
return
/////////////////////////////////// Happy End ! ////////////////////////////////////////////////////////////////////////////////////////////////