#region Local Var
var uLocal_0 = 0;
var uLocal_1 = 0;
int iLocal_2 = 0;
int iLocal_3 = 0;
int iLocal_4 = 0;
int iLocal_5 = 0;
int iLocal_6 = 0;
int iLocal_7 = 0;
int iLocal_8 = 0;
int iLocal_9 = 0;
int iLocal_10 = 0;
int iLocal_11 = 0;
float fLocal_12 = 0f;
var uLocal_13 = 0;
var uLocal_14 = 0;
int iLocal_15 = 0;
var uLocal_16 = 0;
var uLocal_17 = 0;
char* sLocal_18 = NULL;
float fLocal_19 = 0f;
var uLocal_20 = 0;
var uLocal_21 = 0;
var uLocal_22 = 0;
float fLocal_23 = 0f;
float fLocal_24 = 0f;
var uLocal_25 = 0;
var uLocal_26 = 0;
var uLocal_27 = 0;
float fLocal_28 = 0f;
float fLocal_29 = 0f;
float fLocal_30 = 0f;
var uLocal_31 = 0;
var uLocal_32 = 0;
int iLocal_33 = 0;
var uLocal_34 = 0;
int iLocal_35 = 0;
int iLocal_36 = 0;
bool bLocal_37 = 0;
int iLocal_38 = 0;
int iLocal_39 = 0;
int iLocal_40 = 0;
int iLocal_41 = 0;
int* iLocal_42 = NULL;
var uLocal_43 = 16;
var uLocal_44 = 0;
var uLocal_45 = 0;
var uLocal_46 = 0;
var uLocal_47 = 0;
var uLocal_48 = 0;
var uLocal_49 = 0;
var uLocal_50 = 0;
var uLocal_51 = 0;
var uLocal_52 = 0;
var uLocal_53 = 0;
var uLocal_54 = 0;
var uLocal_55 = 0;
var uLocal_56 = 0;
var uLocal_57 = 0;
var uLocal_58 = 0;
var uLocal_59 = 0;
var uLocal_60 = 0;
var uLocal_61 = 0;
var uLocal_62 = 0;
var uLocal_63 = 0;
var uLocal_64 = 0;
var uLocal_65 = 0;
var uLocal_66 = 0;
var uLocal_67 = 0;
var uLocal_68 = 0;
var uLocal_69 = 0;
var uLocal_70 = 0;
var uLocal_71 = 0;
var uLocal_72 = 0;
var uLocal_73 = 0;
var uLocal_74 = 0;
var uLocal_75 = 0;
var uLocal_76 = 0;
var uLocal_77 = 0;
var uLocal_78 = 0;
var uLocal_79 = 0;
var uLocal_80 = 0;
var uLocal_81 = 0;
var uLocal_82 = 0;
var uLocal_83 = 0;
var uLocal_84 = 0;
var uLocal_85 = 0;
var uLocal_86 = 0;
var uLocal_87 = 0;
var uLocal_88 = 0;
var uLocal_89 = 0;
var uLocal_90 = 0;
var uLocal_91 = 0;
var uLocal_92 = 0;
var uLocal_93 = 0;
var uLocal_94 = 0;
var uLocal_95 = 0;
var uLocal_96 = 0;
var uLocal_97 = 0;
var uLocal_98 = 0;
var uLocal_99 = 0;
var uLocal_100 = 0;
var uLocal_101 = 0;
var uLocal_102 = 0;
var uLocal_103 = 0;
var uLocal_104 = 0;
var uLocal_105 = 0;
var uLocal_106 = 0;
var uLocal_107 = 0;
var uLocal_108 = 0;
var uLocal_109 = 0;
var uLocal_110 = 0;
var uLocal_111 = 0;
var uLocal_112 = 0;
var uLocal_113 = 0;
var uLocal_114 = 0;
var uLocal_115 = 0;
var uLocal_116 = 0;
var uLocal_117 = 0;
var uLocal_118 = 0;
var uLocal_119 = 0;
var uLocal_120 = 0;
var uLocal_121 = 0;
var uLocal_122 = 0;
var uLocal_123 = 0;
var uLocal_124 = 0;
var uLocal_125 = 0;
var uLocal_126 = 0;
var uLocal_127 = 0;
var uLocal_128 = 0;
var uLocal_129 = 0;
var uLocal_130 = 0;
var uLocal_131 = 0;
var uLocal_132 = 0;
var uLocal_133 = 0;
var uLocal_134 = 0;
var uLocal_135 = 0;
var uLocal_136 = 0;
var uLocal_137 = 0;
var uLocal_138 = 0;
var uLocal_139 = 0;
var uLocal_140 = 0;
var uLocal_141 = 0;
var uLocal_142 = 0;
var uLocal_143 = 0;
var uLocal_144 = 0;
var uLocal_145 = 0;
var uLocal_146 = 0;
var uLocal_147 = 0;
var uLocal_148 = 0;
var uLocal_149 = 0;
var uLocal_150 = 0;
var uLocal_151 = 0;
var uLocal_152 = 0;
var uLocal_153 = 0;
var uLocal_154 = 0;
var uLocal_155 = 0;
var uLocal_156 = 0;
var uLocal_157 = 0;
var uLocal_158 = 0;
var uLocal_159 = 0;
var uLocal_160 = 0;
var uLocal_161 = 0;
var uLocal_162 = 0;
var uLocal_163 = 0;
var uLocal_164 = 0;
var uLocal_165 = 0;
var uLocal_166 = 0;
var uLocal_167 = 0;
var uLocal_168 = 0;
var uLocal_169 = 0;
var uLocal_170 = 0;
var uLocal_171 = 0;
var uLocal_172 = 0;
var uLocal_173 = 0;
var uLocal_174 = 0;
var uLocal_175 = 0;
var uLocal_176 = 0;
var uLocal_177 = 0;
var uLocal_178 = 0;
var uLocal_179 = 0;
var uLocal_180 = 0;
var uLocal_181 = 0;
var uLocal_182 = 0;
var uLocal_183 = 0;
var uLocal_184 = 0;
var uLocal_185 = 0;
var uLocal_186 = 0;
var uLocal_187 = 0;
var uLocal_188 = 0;
var uLocal_189 = 0;
var uLocal_190 = 0;
var uLocal_191 = 0;
var uLocal_192 = 0;
var uLocal_193 = 0;
var uLocal_194 = 0;
var uLocal_195 = 0;
var uLocal_196 = 0;
var uLocal_197 = 0;
var uLocal_198 = 0;
var uLocal_199 = 0;
var uLocal_200 = 0;
var uLocal_201 = 0;
var uLocal_202 = 0;
var uLocal_203 = 0;
var uLocal_204 = 0;
var uLocal_205 = 0;
var uLocal_206 = 0;
var uLocal_207 = 0;
struct<11> Local_208[15];
bool bLocal_374 = 0;
#endregion
void __EntryFunction__()//Position - 0x0
{
iLocal_2 = 1;
iLocal_3 = 134;
iLocal_4 = 134;
iLocal_5 = 1;
iLocal_6 = 1;
iLocal_7 = 1;
iLocal_8 = 134;
iLocal_9 = 1;
iLocal_10 = 12;
iLocal_11 = 12;
fLocal_12 = 0.001f;
iLocal_15 = -1;
sLocal_18 = "NULL";
fLocal_19 = 0f;
fLocal_23 = -0.0375f;
fLocal_24 = 0.17f;
fLocal_28 = 80f;
fLocal_29 = 140f;
fLocal_30 = 180f;
iLocal_33 = 3;
iLocal_36 = joaat("prop_forsale_lenny_01");
if (PLAYER::HAS_FORCE_CLEANUP_OCCURRED(210))
{
func_57();
}
if (SCRIPT::GET_NUMBER_OF_THREADS_RUNNING_THE_SCRIPT_WITH_THIS_HASH(joaat("forsalesigns")) > 1)
{
SCRIPT::TERMINATE_THIS_THREAD();
}
func_56(11);
while (true)
{
SYSTEM::WAIT(0);
if (func_55(105) == 1)
{
func_57();
}
switch (iLocal_35)
{
case 0:
func_51();
break;
case 1:
func_1();
break;
case 2:
func_57();
break;
}
}
}
void func_1()//Position - 0xD6
{
bool bVar0;
if (iLocal_40)
{
if (func_50(iLocal_42))
{
if ((((!func_49() && !PED::IS_PED_FLEEING(iLocal_42)) && !PED::IS_PED_RAGDOLL(iLocal_42)) && !PED::IS_PED_PRONE(iLocal_42)) && !PED::IS_PED_INJURED(iLocal_42))
{
if (func_48(iLocal_42, PLAYER::PLAYER_PED_ID(), 1) <= 3f)
{
if ((MISC::GET_GAME_TIMER() - iLocal_41) > 8000)
{
if (func_25(&uLocal_43, "JOSH1AU", "JOSH1_AMB2", 7, 0, 0, 0))
{
iLocal_41 = MISC::GET_GAME_TIMER();
}
}
}
}
if (func_48(iLocal_42, PLAYER::PLAYER_PED_ID(), 1) > 150f)
{
func_24(&iLocal_42);
}
}
else
{
func_23(&iLocal_42, 1, 0, 1);
iLocal_40 = 0;
}
}
bVar0 = false;
bVar0 = false;
while (bVar0 < 15)
{
if (ENTITY::DOES_ENTITY_EXIST(Local_208[bVar0 /*11*/]))
{
if (OBJECT::HAS_OBJECT_BEEN_BROKEN(Local_208[bVar0 /*11*/], 0) || func_22(Local_208[bVar0 /*11*/]))
{
MISC::SET_BIT(&(Global_114135.f_10053.f_108), bVar0);
func_19(bVar0);
ENTITY::SET_OBJECT_AS_NO_LONGER_NEEDED(&(Local_208[bVar0 /*11*/]));
bLocal_37 = true;
func_18(1, 0);
func_16();
}
else
{
func_14(&(Local_208[bVar0 /*11*/]), &(Local_208[bVar0 /*11*/].f_10));
}
}
else if (!BitTest(Global_114135.f_10053.f_108, bVar0))
{
func_11(&(Local_208[bVar0 /*11*/]), iLocal_36, 0, 200f);
}
bVar0++;
}
func_9();
if (!bLocal_374 && !bLocal_37)
{
if (func_2(2))
{
iLocal_35 = 2;
}
}
}
int func_2(int iParam0)//Position - 0x248
{
int iVar0;
if (!iParam0 == 2)
{
if (func_5(iParam0) < func_4(iParam0))
{
return 0;
}
}
else
{
iVar0 = 0;
while (iVar0 < func_4(iParam0))
{
if (!BitTest(Global_114135.f_10053.f_108, func_3(func_4(iParam0), iVar0)))
{
return 0;
}
iVar0++;
}
}
return 1;
}
int func_3(int iParam0, int iParam1)//Position - 0x2A4
{
if (iParam1 < 32)
{
return iParam1;
}
return (iParam0 - iParam1);
}
int func_4(int iParam0)//Position - 0x2C0
{
if (iParam0 == 3)
{
return 30;
}
if (iParam0 == 1)
{
return 50;
}
if (iParam0 == 0)
{
return 50;
}
if (iParam0 == 4)
{
return 10;
}
if (iParam0 == 5)
{
return 30;
}
return 15;
}
int func_5(int iParam0)//Position - 0x310
{
int iVar0;
int iVar1;
int iVar2;
iVar0 = 0;
iVar1 = 0;
if (iParam0 == 2)
{
iVar1 = 0;
while (iVar1 < func_4(iParam0))
{
if (BitTest(Global_114135.f_10053.f_108, func_3(func_4(iParam0), iVar1)))
{
iVar0++;
}
iVar1++;
}
}
else if (iParam0 == 6)
{
STATS::STAT_GET_INT(joaat("NUM_HIDDEN_PACKAGES_5"), &iVar0, -1);
}
else if (iParam0 == 7)
{
STATS::STAT_GET_INT(joaat("NUM_HIDDEN_PACKAGES_7"), &iVar0, -1);
}
else if (iParam0 == 8)
{
STATS::STAT_GET_INT(joaat("NUM_HIDDEN_PACKAGES_6"), &iVar0, -1);
}
else
{
iVar1 = 0;
while (iVar1 < func_4(iParam0))
{
iVar2 = (func_8(iParam0) + iVar1);
if (func_6(iVar2, -1))
{
iVar0++;
}
iVar1++;
}
}
return iVar0;
}
bool func_6(int iParam0, int iParam1)//Position - 0x3D4
{
if (iParam1 == -1)
{
iParam1 = func_7();
}
return STATS::GET_PACKED_STAT_BOOL_CODE(iParam0, iParam1);
}
int func_7()//Position - 0x3F0
{
return Global_1574926;
}
int func_8(int iParam0)//Position - 0x3FC
{
if (iParam0 == 3)
{
return 815;
}
if (iParam0 == 5)
{
return 845;
}
if (iParam0 == 1)
{
return 705;
}
if (iParam0 == 0)
{
return 755;
}
return 805;
}
void func_9()//Position - 0x443
{
int iVar0;
if (bLocal_37)
{
switch (iLocal_38)
{
case 0:
if (!CAM::IS_SCREEN_FADED_OUT())
{
iLocal_39 = GRAPHICS::REQUEST_SCALEFORM_MOVIE("MIDSIZED_MESSAGE");
if (GRAPHICS::HAS_SCALEFORM_MOVIE_LOADED(iLocal_39))
{
iVar0 = AUDIO::GET_SOUND_ID();
AUDIO::PLAY_SOUND_FRONTEND(iVar0, "SIGN_DESTROYED", "HUD_AWARDS", true);
iLocal_38++;
}
}
break;
case 1:
GRAPHICS::BEGIN_SCALEFORM_MOVIE_METHOD(iLocal_39, "SHOW_SHARD_MIDSIZED_MESSAGE");
GRAPHICS::BEGIN_TEXT_COMMAND_SCALEFORM_STRING("FS_TITLE" /* GXT: Sign Destroyed~s~ */);
GRAPHICS::END_TEXT_COMMAND_SCALEFORM_STRING();
GRAPHICS::BEGIN_TEXT_COMMAND_SCALEFORM_STRING("FS_DESTROY" /* GXT: ~1~/15 signs destroyed. */);
HUD::ADD_TEXT_COMPONENT_INTEGER(func_5(2));
GRAPHICS::END_TEXT_COMMAND_SCALEFORM_STRING();
GRAPHICS::END_SCALEFORM_MOVIE_METHOD();
SYSTEM::SETTIMERB(0);
iLocal_38++;
break;
case 2:
if (SYSTEM::TIMERB() > 7000)
{
GRAPHICS::BEGIN_SCALEFORM_MOVIE_METHOD(iLocal_39, "SHARD_ANIM_OUT");
GRAPHICS::SCALEFORM_MOVIE_METHOD_ADD_PARAM_INT(1);
GRAPHICS::SCALEFORM_MOVIE_METHOD_ADD_PARAM_FLOAT(0.33f);
GRAPHICS::END_SCALEFORM_MOVIE_METHOD();
iLocal_38++;
}
else if (!func_10())
{
if (GRAPHICS::HAS_SCALEFORM_MOVIE_LOADED(iLocal_39))
{
GRAPHICS::DRAW_SCALEFORM_MOVIE_FULLSCREEN(iLocal_39, 100, 100, 100, 255, 0);
}
}
break;
case 3:
if (SYSTEM::TIMERB() > 7500)
{
iLocal_38++;
}
else if (!func_10())
{
if (GRAPHICS::HAS_SCALEFORM_MOVIE_LOADED(iLocal_39))
{
GRAPHICS::DRAW_SCALEFORM_MOVIE_FULLSCREEN(iLocal_39, 100, 100, 100, 255, 0);
}
}
break;
case 4:
if (GRAPHICS::HAS_SCALEFORM_MOVIE_LOADED(iLocal_39))
{
GRAPHICS::SET_SCALEFORM_MOVIE_AS_NO_LONGER_NEEDED(&iLocal_39);
}
bLocal_374 = false;
bLocal_37 = false;
iLocal_38 = 0;
break;
}
}
}
int func_10()//Position - 0x586
{
if (Global_79800)
{
return 1;
}
else if (Global_64302 && !Global_64308)
{
return 1;
}
return 0;
}
void func_11(var uParam0, int iParam1, bool bParam2, float fParam3)//Position - 0x5B0
{
if (!PED::IS_PED_INJURED(PLAYER::PLAYER_PED_ID()))
{
if (func_13(PLAYER::PLAYER_PED_ID(), uParam0->f_3, fParam3, 1) && !ENTITY::DOES_ENTITY_EXIST(*uParam0))
{
STREAMING::REQUEST_MODEL(iParam1);
while (!STREAMING::HAS_MODEL_LOADED(iParam1))
{
STREAMING::REQUEST_MODEL(iParam1);
SYSTEM::WAIT(0);
}
if (bParam2)
{
func_12(uParam0->f_3);
}
MISC::CLEAR_AREA(uParam0->f_3, 2.5f, false, false, false, false);
*uParam0 = OBJECT::CREATE_OBJECT(iParam1, uParam0->f_3, true, true, false);
uParam0->f_10 = 1;
STREAMING::SET_MODEL_AS_NO_LONGER_NEEDED(iParam1);
}
}
}
void func_12(struct<3> Param0)//Position - 0x642
{
int iVar0;
iVar0 = INTERIOR::GET_INTERIOR_AT_COORDS(Param0);
if (INTERIOR::IS_VALID_INTERIOR(iVar0))
{
INTERIOR::PIN_INTERIOR_IN_MEMORY(iVar0);
while (!INTERIOR::IS_INTERIOR_READY(iVar0))
{
SYSTEM::WAIT(0);
}
SYSTEM::WAIT(0);
INTERIOR::UNPIN_INTERIOR(iVar0);
}
}
bool func_13(int iParam0, struct<3> Param1, float fParam4, bool bParam5)//Position - 0x680
{
return SYSTEM::VDIST2(ENTITY::GET_ENTITY_COORDS(iParam0, bParam5), Param1) <= (fParam4 * fParam4);
}
void func_14(int* iParam0, var uParam1)//Position - 0x69E
{
if (!PED::IS_PED_INJURED(PLAYER::PLAYER_PED_ID()))
{
if (MISC::GET_DISTANCE_BETWEEN_COORDS(ENTITY::GET_ENTITY_COORDS(PLAYER::PLAYER_PED_ID(), true), ENTITY::GET_ENTITY_COORDS(*iParam0, true), true) >= 110f && !ENTITY::IS_ENTITY_ON_SCREEN(*iParam0))
{
func_15(iParam0);
*uParam1 = 0;
}
}
}
void func_15(int* iParam0)//Position - 0x6E8
{
if (ENTITY::DOES_ENTITY_EXIST(*iParam0))
{
if (ENTITY::IS_ENTITY_ATTACHED_TO_ANY_PED(*iParam0))
{
ENTITY::DETACH_ENTITY(*iParam0, true, true);
}
OBJECT::DELETE_OBJECT(iParam0);
}
}
int func_16()//Position - 0x713
{
if (func_17(0))
{
return 0;
}
if (Global_101727.f_8)
{
if (Global_101727.f_10 > 0)
{
return 0;
}
}
else if (Global_101727.f_10 > 1)
{
return 0;
}
Global_101727.f_10++;
return 1;
}
int func_17(bool bParam0)//Position - 0x75E
{
if (!bParam0 && SCRIPT::GET_NUMBER_OF_THREADS_RUNNING_THE_SCRIPT_WITH_THIS_HASH(joaat("benchmark")) > 0)
{
return 1;
}
return BitTest(Global_79788, 0);
}
void func_18(int iParam0, int iParam1)//Position - 0x786
{
Global_101727.f_7 = iParam0;
Global_101727.f_8 = iParam1;
}
void func_19(int iParam0)//Position - 0x79E
{
if (iParam0 < 16)
{
func_21((875 + iParam0), 1, -1);
}
func_20(joaat("NUM_DESTROYED_SIGNS_0"), 1);
}
void func_20(int iParam0, int iParam1)//Position - 0x7C6
{
int iVar0;
STATS::STAT_GET_INT(iParam0, &iVar0, -1);
iVar0 = (iVar0 + iParam1);
STATS::STAT_SET_INT(iParam0, iVar0, true);
}
void func_21(int iParam0, bool bParam1, int iParam2)//Position - 0x7E9
{
if (iParam2 == -1)
{
iParam2 = func_7();
}
STATS::SET_PACKED_STAT_BOOL_CODE(iParam0, bParam1, iParam2);
}
int func_22(int iParam0)//Position - 0x807
{
struct<3> Var0;
Var0 = { ENTITY::GET_ENTITY_ROTATION(iParam0, 0) };
if (((Var0.f_0 > 30f || Var0.f_0 < -30f) || Var0.f_1 > 30f) || Var0.f_1 < -30f)
{
return 1;
}
return 0;
}
void func_23(int* iParam0, bool bParam1, int iParam2, int iParam3)//Position - 0x858
{
if (ENTITY::DOES_ENTITY_EXIST(*iParam0))
{
if (!PED::IS_PED_INJURED(*iParam0))
{
ENTITY::SET_ENTITY_LOAD_COLLISION_FLAG(*iParam0, false, 1);
if (iParam3 == 0)
{
TASK::CLEAR_PED_SECONDARY_TASK(*iParam0);
}
PED::SET_PED_KEEP_TASK(*iParam0, bParam1);
if (iParam2 == 1)
{
PED::SET_BLOCKING_OF_NON_TEMPORARY_EVENTS(*iParam0, false);
}
}
ENTITY::SET_PED_AS_NO_LONGER_NEEDED(iParam0);
}
}
void func_24(int* iParam0)//Position - 0x8A8
{
if (ENTITY::DOES_ENTITY_EXIST(*iParam0))
{
if (!ENTITY::IS_ENTITY_DEAD(*iParam0, false))
{
ENTITY::SET_ENTITY_LOAD_COLLISION_FLAG(*iParam0, false, 1);
}
if (!ENTITY::IS_ENTITY_A_MISSION_ENTITY(*iParam0))
{
ENTITY::SET_ENTITY_AS_MISSION_ENTITY(*iParam0, true, false);
}
PED::DELETE_PED(iParam0);
}
}
bool func_25(var uParam0, char* sParam1, char* sParam2, int iParam3, int iParam4, int iParam5, int iParam6)//Position - 0x8E9
{
func_47(uParam0, 145, sParam1, iParam4, iParam5, iParam6);
if (iParam3 > 7)
{
if (iParam3 < 12)
{
iParam3 = 7;
}
}
Global_22432 = 0;
Global_22434 = 0;
Global_22439 = 0;
Global_23416 = 0;
Global_23418 = 0;
Global_23422 = 0;
Global_2883585 = 0;
return func_26(sParam2, iParam3, 0);
}
int func_26(char* sParam0, int iParam1, bool bParam2)//Position - 0x937
{
Global_22426 = 0;
if (Global_22425 == 0 || Global_22427 == 2)
{
if (Global_22425 != 0)
{
if (iParam1 > Global_22427)
{
if (Global_22432 == 0)
{
AUDIO::STOP_SCRIPTED_CONVERSATION(false);
Global_21066.f_1 = 3;
Global_22425 = 0;
Global_22426 = 1;
Global_22478 = 0;
Global_22421 = 0;
Global_22422 = 0;
Global_22436 = 0;
Global_22435 = 0;
Global_21065 = 0;
}
else
{
func_46();
return 0;
}
}
else
{
return 0;
}
}
if (AUDIO::IS_SCRIPTED_CONVERSATION_ONGOING())
{
return 0;
}
if (func_45(8, -1))
{
return 0;
}
Global_22501 = { Global_22495 };
func_44();
Global_21714 = { Global_21879 };
Global_22431 = Global_22432;
Global_22438 = Global_22439;
Global_2883586 = Global_2883585;
Global_22440 = { Global_22456 };
Global_22433 = Global_22434;
Global_23415 = Global_23416;
Global_23423 = { Global_23429 };
Global_23417 = Global_23418;
Global_23419 = Global_23420;
Global_23421 = Global_23422;
Global_22044.f_370 = Global_23414;
Global_22044.f_368 = Global_23412;
Global_22044.f_369 = Global_23413;
Global_22421 = Global_22422;
if (Global_22431)
{
MISC::CLEAR_BIT(&Global_8919, 20);
MISC::CLEAR_BIT(&Global_8920, 17);
MISC::CLEAR_BIT(&Global_8921, 0);
if (bParam2)
{
func_36();
if (Global_9741[Global_21066 /*2811*/][0 /*281*/].f_259 == 2)
{
if (iParam1 == 13)
{
}
else
{
return 0;
}
}
if (Global_21066.f_1 > 3)
{
return 0;
}
}
if (Global_21032 == 1)
{
return 0;
}
if (PLAYER::IS_PLAYER_PLAYING(PLAYER::PLAYER_ID()))
{
if (PED::IS_PED_IN_MELEE_COMBAT(PLAYER::PLAYER_PED_ID()))
{
return 0;
}
if (func_35())
{
return 0;
}
if (TASK::IS_PED_SPRINTING(PLAYER::PLAYER_PED_ID()))
{
return 0;
}
if (PED::IS_PED_RAGDOLL(PLAYER::PLAYER_PED_ID()))
{
return 0;
}
if (PED::IS_PED_IN_PARACHUTE_FREE_FALL(PLAYER::PLAYER_PED_ID()))
{
return 0;
}
if (WEAPON::GET_IS_PED_GADGET_EQUIPPED(PLAYER::PLAYER_PED_ID(), joaat("GADGET_PARACHUTE")))
{
return 0;
}
if (!Global_79539)
{
if (ENTITY::IS_ENTITY_IN_WATER(PLAYER::PLAYER_PED_ID()))
{
return 0;
}
if (PLAYER::IS_PLAYER_CLIMBING(PLAYER::PLAYER_ID()))
{
return 0;
}
if (PED::IS_PED_PLANTING_BOMB(PLAYER::PLAYER_PED_ID()))
{
return 0;
}
if (PLAYER::IS_SPECIAL_ABILITY_ACTIVE(PLAYER::PLAYER_ID(), 0))
{
return 0;
}
}
}
if (func_34())
{
return 0;
}
else
{
switch (Global_21066.f_1)
{
case 7:
return 0;
break;
case 8:
return 0;
break;
case 9:
break;
case 10:
break;
default:
break;
}
if (BitTest(Global_8919, 9))
{
return 0;
}
}
func_33();
Global_22435 = bParam2;
}
Global_22427 = iParam1;
StringCopy(&Global_22044, sParam0, 24);
Global_21291 = 0;
func_32();
func_27();
return 1;
}
if (Global_22425 == 5)
{
return 0;
}
if (iParam1 < Global_22427 || iParam1 == Global_22427)
{
return 0;
}
if (iParam1 == 2)
{
}
else
{
func_46();
}
return 0;
}
void func_27()//Position - 0xC05
{
if (!func_28())
{
return;
}
if (Global_22431)
{
MemCopy(&(Global_1972230.f_1), {Global_22044}, 4);
Global_1972230 = Global_8234;
Global_1972230.f_6 = Global_22435;
}
}
int func_28()//Position - 0xC3C
{
if (!Global_262145.f_28397 /* Tunable: NPC_PHONE_TELEMETRY_TRACKING_ENABLED */)
{
return 0;
}
if (!Global_79539)
{
return 0;
}
if (PLAYER::PLAYER_ID() == func_31())
{
return 0;
}
if (func_29(PLAYER::PLAYER_ID()))
{
return 0;
}
if (BitTest(Global_1887549[PLAYER::PLAYER_ID() /*611*/].f_1, 7))
{
return 0;
}
if (NETWORK::NETWORK_IS_ACTIVITY_SESSION())
{
return 0;
}
return 1;
}
bool func_29(int iParam0)//Position - 0xC9F
{
return func_30(iParam0, 20);
}
var func_30(int iParam0, int iParam1)//Position - 0xCAF
{
return BitTest(Global_1887549[iParam0 /*611*/].f_10.f_4, iParam1);
}
int func_31()//Position - 0xCC7
{
return -1;
}
void func_32()//Position - 0xCD0
{
int iVar0;
iVar0 = 0;
while (iVar0 <= 69)
{
StringCopy(&(Global_21293[iVar0 /*6*/]), "", 24);
iVar0++;
}
AUDIO::STOP_SCRIPTED_CONVERSATION(false);
Global_22425 = 1;
}
void func_33()//Position - 0xD01
{
Global_22478 = Global_22477;
Global_22472 = Global_22473;
Global_22519 = { Global_22507 };
Global_22525 = { Global_22513 };
Global_22480 = Global_22479;
Global_22549 = { Global_22531 };
Global_22555 = { Global_22537 };
Global_22561 = { Global_22543 };
Global_22567 = { Global_22573 };
Global_8234 = Global_8235;
Global_8236 = Global_8237;
Global_22436 = Global_22437;
Global_22438 = Global_22439;
Global_22440 = { Global_22456 };
Global_22429 = Global_22430;
Global_23441 = 0;
Global_22474 = 0;
Global_22475 = 0;
MISC::CLEAR_BIT(&Global_8920, 16);
}
int func_34()//Position - 0xD96
{
if (Global_21066.f_1 == 1 || Global_21066.f_1 == 0)
{
return 1;
}
return 0;
}
int func_35()//Position - 0xDBD
{
int iVar0;
int iVar1;
if (Global_79539)
{
iVar0 = 0;
WEAPON::GET_CURRENT_PED_WEAPON(PLAYER::PLAYER_PED_ID(), &iVar1, true);
if (PLAYER::IS_PLAYER_PLAYING(PLAYER::PLAYER_ID()))
{
if ((iVar1 == joaat("WEAPON_SNIPERRIFLE") || iVar1 == joaat("WEAPON_HEAVYSNIPER")) || iVar1 == joaat("WEAPON_REMOTESNIPER"))
{
iVar0 = 1;
}
}
if (CAM::IS_AIM_CAM_ACTIVE() && iVar0 == 1)
{
return 1;
}
else
{
return 0;
}
}
if (PLAYER::IS_PLAYER_PLAYING(PLAYER::PLAYER_ID()))
{
if (PED::GET_PED_CONFIG_FLAG(PLAYER::PLAYER_PED_ID(), 78, true))
{
return 1;
}
else
{
return 0;
}
}
return 1;
}
void func_36()//Position - 0xE56
{
if (func_43(14))
{
if (!ENTITY::IS_ENTITY_DEAD(PLAYER::PLAYER_PED_ID(), false))
{
if (ENTITY::GET_ENTITY_MODEL(PLAYER::PLAYER_PED_ID()) == Global_114135.f_28055[0 /*29*/])
{
Global_21066 = 0;
}
else if (ENTITY::GET_ENTITY_MODEL(PLAYER::PLAYER_PED_ID()) == Global_114135.f_28055[1 /*29*/])
{
Global_21066 = 1;
}
else if (ENTITY::GET_ENTITY_MODEL(PLAYER::PLAYER_PED_ID()) == Global_114135.f_28055[2 /*29*/])
{
Global_21066 = 2;
}
else
{
Global_21066 = 0;
}
}
}
else
{
Global_21066 = func_37();
if (Global_21066 == 145)
{
Global_21066 = 3;
}
if (Global_79539)
{
Global_21066 = 3;
}
if (Global_21066 > 3)
{
Global_21066 = 3;
}
}
}
var func_37()//Position - 0xEF8
{
func_38();
return Global_114135.f_2367.f_539.f_4321;
}
void func_38()//Position - 0xF11
{
int iVar0;
if (ENTITY::DOES_ENTITY_EXIST(PLAYER::PLAYER_PED_ID()))
{
if (func_41(Global_114135.f_2367.f_539.f_4321) != ENTITY::GET_ENTITY_MODEL(PLAYER::PLAYER_PED_ID()))
{
iVar0 = func_40(PLAYER::PLAYER_PED_ID());
if (func_39(iVar0) && (!func_43(14) || Global_113083))
{
if (Global_114135.f_2367.f_539.f_4321 != iVar0 && func_39(Global_114135.f_2367.f_539.f_4321))
{
Global_114135.f_2367.f_539.f_4322 = Global_114135.f_2367.f_539.f_4321;
}
Global_114135.f_2367.f_539.f_4323 = iVar0;
Global_114135.f_2367.f_539.f_4321 = iVar0;
return;
}
}
else
{
if (Global_114135.f_2367.f_539.f_4321 != 145)
{
Global_114135.f_2367.f_539.f_4323 = Global_114135.f_2367.f_539.f_4321;
}
return;
}
}
Global_114135.f_2367.f_539.f_4321 = 145;
}
bool func_39(int iParam0)//Position - 0x100E
{
return iParam0 < 3;
}
int func_40(int iParam0)//Position - 0x101A
{
int iVar0;
int iVar1;
if (ENTITY::DOES_ENTITY_EXIST(iParam0))
{
iVar1 = ENTITY::GET_ENTITY_MODEL(iParam0);
iVar0 = 0;
while (iVar0 <= 2)
{
if (func_41(iVar0) == iVar1)
{
return iVar0;
}
iVar0++;
}
}
return 145;
}
int func_41(int iParam0)//Position - 0x1057
{
if (func_39(iParam0))
{
return func_42(iParam0);
}
else if (iParam0 != 145)
{
}
return 0;
}
var func_42(int iParam0)//Position - 0x107C
{
return Global_2201[iParam0 /*29*/];
}
bool func_43(int iParam0)//Position - 0x108B
{
return Global_44181 == iParam0;
}
void func_44()//Position - 0x1099
{
int iVar0;
iVar0 = 0;
while (iVar0 <= 15)
{
Global_21714[iVar0 /*10*/] = 0;
StringCopy(&(Global_21714[iVar0 /*10*/].f_1), "", 24);
Global_21714[iVar0 /*10*/].f_7 = 0;
Global_21714[iVar0 /*10*/].f_8 = 0;
iVar0++;
}
Global_21714.f_161 = -99;
Global_21714.f_162 = { 0f, 0f, 0f };
}
bool func_45(int iParam0, int iParam1)//Position - 0x10F0
{
switch (iParam0)
{
case 5:
if (iParam1 > -1)
{
return Global_1673654.f_203[iParam1];
}
break;
}
return BitTest(Global_1673654.f_1048, iParam0);
}
void func_46()//Position - 0x1128
{
AUDIO::RESTART_SCRIPTED_CONVERSATION();
Global_23436 = 0;
if ((AUDIO::IS_MOBILE_PHONE_CALL_ONGOING() || Global_21066.f_1 == 9) || Global_21065 == 1)
{
AUDIO::STOP_SCRIPTED_CONVERSATION(false);
Global_22425 = 6;
Global_21066.f_1 = 3;
return;
}
if (AUDIO::IS_SCRIPTED_CONVERSATION_ONGOING())
{
AUDIO::STOP_SCRIPTED_CONVERSATION(true);
Global_22425 = 6;
return;
}
}
void func_47(var uParam0, int iParam1, char* sParam2, int iParam3, int iParam4, var uParam5)//Position - 0x117F
{
Global_21879 = { *uParam0 };
Global_8235 = iParam1;
StringCopy(&Global_22495, sParam2, 24);
Global_23414 = uParam5;
if (iParam3 == 0)
{
Global_23412 = 1;
Global_23410 = 0;
}
else
{
Global_23412 = 0;
Global_23410 = 1;
}
if (iParam4 == 0)
{
Global_23413 = 1;
Global_23411 = 0;
}
else
{
Global_23413 = 0;
Global_23411 = 1;
}
}
float func_48(int iParam0, int iParam1, bool bParam2)//Position - 0x11D5
{
struct<3> Var0;
struct<3> Var3;
if (!ENTITY::IS_ENTITY_DEAD(iParam0, false))
{
Var0 = { ENTITY::GET_ENTITY_COORDS(iParam0, true) };
}
else
{
Var0 = { ENTITY::GET_ENTITY_COORDS(iParam0, false) };
}
if (!ENTITY::IS_ENTITY_DEAD(iParam1, false))
{
Var3 = { ENTITY::GET_ENTITY_COORDS(iParam1, true) };
}
else
{
Var3 = { ENTITY::GET_ENTITY_COORDS(iParam1, false) };
}
return MISC::GET_DISTANCE_BETWEEN_COORDS(Var0, Var3, bParam2);
}
int func_49()//Position - 0x1233
{
if (Global_22425 != 0 || AUDIO::IS_SCRIPTED_CONVERSATION_ONGOING())
{
return 1;
}
return 0;
}
int func_50(int iParam0)//Position - 0x1255
{
if (ENTITY::DOES_ENTITY_EXIST(iParam0))
{
if (!ENTITY::IS_ENTITY_DEAD(iParam0, false))
{
return 1;
}
}
return 0;
}
void func_51()//Position - 0x1276
{
iLocal_40 = func_52();
if (!func_2(2))
{
Local_208[0 /*11*/].f_3 = { -1569.525f, 444.04f, 108.135f };
Local_208[0 /*11*/].f_9 = 80f;
Local_208[1 /*11*/].f_3 = { -1352.88f, 613.77f, 134.34f };
Local_208[1 /*11*/].f_9 = 198f;
Local_208[2 /*11*/].f_3 = { -1467f, -5.5f, 53.105f };
Local_208[2 /*11*/].f_9 = 104f;
Local_208[3 /*11*/].f_3 = { -1632.8329f, -413.8573f, 39.9441f };
Local_208[3 /*11*/].f_9 = 321.5f;
Local_208[4 /*11*/].f_3 = { -1765.6779f, -423.9763f, 41.5f };
Local_208[4 /*11*/].f_9 = 256.25f;
Local_208[5 /*11*/].f_3 = { -380.75f, 427.79f, 110.97f };
Local_208[5 /*11*/].f_9 = 286.5f;
Local_208[6 /*11*/].f_3 = { -163.2826f, 989.2324f, 234.0641f };
Local_208[6 /*11*/].f_9 = 0f;
Local_208[7 /*11*/].f_3 = { -493.083f, 588.6333f, 122.48499f };
Local_208[7 /*11*/].f_9 = 177.2061f;
Local_208[8 /*11*/].f_3 = { -818.84f, 434.74f, 88.15f };
Local_208[8 /*11*/].f_9 = 91.5f;
Local_208[9 /*11*/].f_3 = { -913.24f, 785.4f, 184.66f };
Local_208[9 /*11*/].f_9 = 96.26f;
Local_208[10 /*11*/].f_3 = { -825.92f, -26.67f, 38.68f };
Local_208[10 /*11*/].f_9 = 15f;
Local_208[11 /*11*/].f_3 = { -1103.5f, 587.29f, 103.25f };
Local_208[11 /*11*/].f_9 = 305.5f;
Local_208[12 /*11*/].f_3 = { -1253.4395f, 491.05f, 94.3706f };
Local_208[12 /*11*/].f_9 = 0f;
Local_208[13 /*11*/].f_3 = { 160.29f, 486.71f, 142.96f };
Local_208[13 /*11*/].f_9 = 95f;
Local_208[14 /*11*/].f_3 = { -1163.859f, 319.19f, 67.96f };
Local_208[14 /*11*/].f_9 = 40f;
iLocal_35 = 1;
}
else
{
iLocal_35 = 2;
}
}
int func_52()//Position - 0x14B8
{
int iVar0;
int iVar1;
var uVar2[32];
if (func_50(PLAYER::PLAYER_PED_ID()))
{
iVar0 = PED::GET_PED_NEARBY_PEDS(PLAYER::PLAYER_PED_ID(), &uVar2, -1);
}
iVar1 = 0;
while (iVar1 < iVar0)
{
if (func_50(uVar2[iVar1]))
{
if (ENTITY::GET_ENTITY_MODEL(uVar2[iVar1]) == func_54(58))
{
iLocal_42 = uVar2[iVar1];
if (!ENTITY::IS_ENTITY_A_MISSION_ENTITY(iLocal_42))
{
ENTITY::SET_ENTITY_AS_MISSION_ENTITY(iLocal_42, true, false);
}
PED::SET_PED_MONEY(iLocal_42, 0);
PED::SET_PED_CAN_BE_TARGETTED(iLocal_42, false);
PED::SET_PED_NAME_DEBUG(iLocal_42, "POSTJOSH");
PED::SET_PED_RELATIONSHIP_GROUP_HASH(iLocal_42, joaat("PLAYER"));
func_53(&uLocal_43, 5, iLocal_42, "JOSH", 1, 1);
return 1;
}
}
iVar1++;
}
return 0;
}
void func_53(var uParam0, int iParam1, int iParam2, char* sParam3, int iParam4, int iParam5)//Position - 0x1560
{
if ((uParam0[iParam1 /*10*/])->f_7 == 1)
{
}
(*uParam0)[iParam1 /*10*/] = iParam2;
StringCopy(&((uParam0[iParam1 /*10*/])->f_1), sParam3, 24);
(uParam0[iParam1 /*10*/])->f_7 = 1;
(uParam0[iParam1 /*10*/])->f_8 = iParam4;
(uParam0[iParam1 /*10*/])->f_9 = iParam5;
if (!Global_79539)
{
if (!PED::IS_PED_INJURED(iParam2))
{
if ((uParam0[iParam1 /*10*/])->f_8 == 0)
{
PED::SET_PED_CAN_PLAY_AMBIENT_ANIMS(iParam2, false);
}
else
{
PED::SET_PED_CAN_PLAY_AMBIENT_ANIMS(iParam2, true);
}
}
if (!PED::IS_PED_INJURED(iParam2))
{
if ((uParam0[iParam1 /*10*/])->f_9 == 0)
{
PED::SET_PED_CAN_USE_AUTO_CONVERSATION_LOOKAT(iParam2, false);
}
else
{
PED::SET_PED_CAN_USE_AUTO_CONVERSATION_LOOKAT(iParam2, true);
}
}
}
}
int func_54(int iParam0)//Position - 0x15FB
{
if (!func_39(iParam0))
{
return func_42(iParam0);
}
else if (iParam0 != 145)
{
}
return 0;
}
int func_55(int iParam0)//Position - 0x1621
{
if (iParam0 == 146 || iParam0 == -1)
{
return 0;
}
return Global_114135.f_9089.f_99.f_58[iParam0];
}
int func_56(int iParam0)//Position - 0x164E
{
int iVar0;
bool bVar1;
if (iParam0 <= 31)
{
iVar0 = 9;
bVar1 = iParam0;
}
else
{
iVar0 = 10;
bVar1 = (iParam0 - 32);
}
if (BitTest(Global_114135.f_9089.f_99.f_219[iVar0], bVar1))
{
return 0;
}
MISC::SET_BIT(&(Global_114135.f_9089.f_99.f_219[iVar0]), bVar1);
return 1;
}
void func_57()//Position - 0x16A5
{
int iVar0;
iVar0 = 0;
while (iVar0 < 15)
{
func_70(&(Local_208[iVar0 /*11*/].f_2));
iVar0++;
}
iVar0 = 0;
while (iVar0 < 15)
{
func_69(&(Local_208[iVar0 /*11*/]), 0);
iVar0++;
}
STREAMING::SET_MODEL_AS_NO_LONGER_NEEDED(iLocal_36);
if (func_2(2) || func_55(105) == 1)
{
func_65(88, 0, 0);
func_64(11);
func_63("JOSH1_TXT" /* GXT: BTW buddy, Avery has a website with all his real estate listings around the city, you might find it useful - ~b~www.lennyavery-realty.com~w~ */, 0);
func_61("JOSH1_TXT" /* GXT: BTW buddy, Avery has a website with all his real estate listings around the city, you might find it useful - ~b~www.lennyavery-realty.com~w~ */);
if (func_55(105) == 0)
{
func_58(joaat("TEXT_FORSALESIGNS_DONE"), 1, 4, 58, 30000, 10000, -1, 176, -1, 0, 1);
}
}
SCRIPT::TERMINATE_THIS_THREAD();
}
int func_58(int iParam0, int iParam1, int iParam2, bool bParam3, int iParam4, int iParam5, int iParam6, int iParam7, int iParam8, int iParam9, int iParam10)//Position - 0x174C
{
struct<14> Var0;
if (func_17(0))
{
return 0;
}
if (iParam4 < 0)
{
return 0;
}
if (iParam5 < 0)
{
return 0;
}
if (iParam6 == 76)
{
return 0;
}
if (iParam7 == 235)
{
return 0;
}
if (bParam3 < 3)
{
if (BitTest(iParam2, bParam3))
{
return 0;
}
}
if (iParam2 < 1 || iParam2 > 7)
{
return 0;
}
if (Global_114135.f_7692.f_764 < 8)
{
Var0.f_0 = iParam0;
Var0.f_3 = func_60(iParam1);
Var0.f_4 = (MISC::GET_GAME_TIMER() + iParam4);
Var0.f_5 = iParam5;
Var0.f_1 = iParam9;
Var0.f_2 = iParam2;
Var0.f_6 = bParam3;
Var0.f_7 = iParam6;
Var0.f_8 = iParam7;
Var0.f_9 = iParam8;
Var0.f_10 = -1;
Var0.f_11 = -1;
Var0.f_13 = iParam10;
MISC::CLEAR_BIT(&(Var0.f_1), 0);
Global_114135.f_7692.f_651[Global_114135.f_7692.f_764 /*14*/] = { Var0 };
Global_114135.f_7692.f_764++;
func_59(0);
func_59(1);
func_59(2);
return 1;
}
return 0;
}
void func_59(bool bParam0)//Position - 0x1864
{
int iVar0;
int iVar1;
int iVar2;
iVar1 = 0;
if (!func_39(bParam0))
{
return;
}
iVar0 = 0;
while (iVar0 < Global_114135.f_7692.f_136)
{
if (BitTest(Global_114135.f_7692[iVar0 /*15*/].f_2, bParam0))
{
if (Global_114135.f_7692[iVar0 /*15*/].f_3 > iVar1)
{
iVar1 = Global_114135.f_7692[iVar0 /*15*/].f_3;
}
}
iVar0++;
}
iVar2 = 0;
while (iVar2 < Global_114135.f_7692.f_764)
{
if (BitTest(Global_114135.f_7692.f_651[iVar2 /*14*/].f_2, bParam0))
{
if (Global_114135.f_7692.f_651[iVar2 /*14*/].f_3 == 5)
{
iVar1 = 5;
}
}
iVar2++;
}
Global_114135.f_7692.f_919[bParam0] = iVar1;
}
int func_60(int iParam0)//Position - 0x1922
{
switch (iParam0)
{
case 0:
case 4:
return 5;
break;
case 7:
return 4;
break;
case 2:
return 3;
break;
case 1:
return 2;
break;
case 3:
return 1;
break;
case 5:
case 6:
return 0;
break;
}
return 7;
}
void func_61(char* sParam0)//Position - 0x198C
{
int iVar0;
iVar0 = 0;
while (iVar0 < 35)
{
if (!MISC::IS_STRING_NULL(&(Global_114135.f_14145[iVar0 /*104*/])))
{
if (MISC::ARE_STRINGS_EQUAL(&(Global_114135.f_14145[iVar0 /*104*/]), sParam0))
{
if (Global_114135.f_14145[iVar0 /*104*/].f_24 == 2)
{
}
else
{
func_36();
Global_114135.f_14145[iVar0 /*104*/].f_99[Global_21066] = 0;
if (func_62(iVar0))
{
}
else
{
Global_114135.f_14145[iVar0 /*104*/].f_24 = 0;
Global_114135.f_14145[iVar0 /*104*/].f_28 = 0;
Global_114135.f_14145[iVar0 /*104*/].f_29 = 0;
}
HUD::THEFEED_REMOVE_ITEM(Global_114135.f_14145[iVar0 /*104*/].f_16);
}
}
}
iVar0++;
}
}
int func_62(int iParam0)//Position - 0x1A40
{
if ((Global_114135.f_14145[iParam0 /*104*/].f_99[0] == 1 || Global_114135.f_14145[iParam0 /*104*/].f_99[1] == 1) || Global_114135.f_14145[iParam0 /*104*/].f_99[2] == 1)
{
return 1;
}
return 0;
}
void func_63(char* sParam0, int iParam1)//Position - 0x1A95
{
int iVar0;
iVar0 = 0;
while (iVar0 < 35)
{
if (!MISC::IS_STRING_NULL(&(Global_114135.f_14145[iVar0 /*104*/])))
{
if (MISC::ARE_STRINGS_EQUAL(&(Global_114135.f_14145[iVar0 /*104*/]), sParam0))
{
if (Global_114135.f_14145[iVar0 /*104*/].f_24 == 0)
{
}
Global_114135.f_14145[iVar0 /*104*/].f_24 = 1;
if (Global_114135.f_14145[iVar0 /*104*/].f_25 == 1)
{
if (Global_114135.f_14145[iVar0 /*104*/].f_99[0] == 1)
{
Global_114135.f_14055[0 /*20*/].f_17 = 0;
}
if (Global_114135.f_14145[iVar0 /*104*/].f_99[1] == 1)
{
Global_114135.f_14055[1 /*20*/].f_17 = 0;
}
if (Global_114135.f_14145[iVar0 /*104*/].f_99[2] == 1)
{
Global_114135.f_14055[2 /*20*/].f_17 = 0;
}
if (Global_114135.f_14145[iVar0 /*104*/].f_99[3] == 1)
{
Global_114135.f_14055[3 /*20*/].f_17 = 0;
}
Global_114135.f_14145[iVar0 /*104*/].f_25 = 0;
if (iParam1 == 1)
{
Global_114135.f_14145[iVar0 /*104*/].f_27 = 1;
}
}
}
}
iVar0++;
}
}
int func_64(int iParam0)//Position - 0x1BAD
{
int iVar0;
bool bVar1;
if (iParam0 <= 31)
{
iVar0 = 9;
bVar1 = iParam0;
}
else
{
iVar0 = 10;
bVar1 = (iParam0 - 32);
}
if (BitTest(Global_114135.f_9089.f_99.f_219[iVar0], bVar1))
{
MISC::CLEAR_BIT(&(Global_114135.f_9089.f_99.f_219[iVar0]), bVar1);
return 1;
}
return 0;
}
void func_65(int iParam0, int iParam1, int iParam2)//Position - 0x1C04
{
bool bVar0;
if (iParam0 < 0)
{
}
if (iParam0 == 321 || iParam0 > 321)
{
}
else
{
func_21((891 + iParam0), 1, -1);
}
bVar0 = true;
if (Global_114135.f_10198[iParam0 /*12*/].f_5 == 1)
{
if (Global_114135.f_10198[iParam0 /*12*/].f_6 == 11 || Global_114135.f_10198[iParam0 /*12*/].f_6 == 12)
{
bVar0 = false;
}
}
else
{
Global_114135.f_10198[iParam0 /*12*/].f_5 = 1;
Global_114135.f_10198[iParam0 /*12*/].f_10 = iParam1;
Global_114135.f_10198[iParam0 /*12*/].f_11 = iParam2;
if (iParam0 == 287)
{
STATS::PRESENCE_EVENT_UPDATESTAT_INT(joaat("NUM_HIDDEN_PACKAGES_0"), 50, 0);
}
if (iParam0 == 286)
{
STATS::PRESENCE_EVENT_UPDATESTAT_INT(joaat("NUM_HIDDEN_PACKAGES_1"), 50, 0);
}
if (iParam0 == 299)
{
STATS::PRESENCE_EVENT_UPDATESTAT_INT(joaat("NUM_HIDDEN_PACKAGES_3"), 50, 0);
}
}
if (bVar0)
{
func_66();
}
}
void func_66()//Position - 0x1CEA
{
int iVar0;
float fVar1;
float fVar2;
float fVar3;
float fVar4;
float fVar5;
float fVar6;
float fVar7;
float fVar8;
int iVar9;
iVar0 = 0;
Global_113871 = 0;
Global_113872 = 0;
Global_113873 = 0;
Global_113874 = 0;
Global_113875 = 0;
Global_113876 = 0;
Global_113877 = 0;
fVar1 = 0f;
fVar2 = 0f;
fVar3 = 0f;
fVar4 = 0f;
fVar5 = 0f;
fVar6 = 0f;
fVar7 = 0f;
fVar8 = Global_114135.f_10198.f_3853;
Global_114135.f_10198.f_3853 = 0f;
while (iVar0 < 321)
{
if (Global_114135.f_10198[iVar0 /*12*/].f_5 == 1)
{
switch (Global_114135.f_10198[iVar0 /*12*/].f_6)
{
case 1:
Global_113871++;
fVar1 = (fVar1 + Global_114135.f_10198[iVar0 /*12*/].f_4);
break;
case 3:
Global_113872++;
fVar2 = (fVar2 + Global_114135.f_10198[iVar0 /*12*/].f_4);
break;
case 5:
Global_113873++;
fVar3 = (fVar3 + Global_114135.f_10198[iVar0 /*12*/].f_4);
break;
case 7:
Global_113874++;
fVar4 = (fVar4 + Global_114135.f_10198[iVar0 /*12*/].f_4);
break;
case 9:
Global_113875++;
fVar5 = (fVar5 + (Global_114135.f_10198[iVar0 /*12*/].f_4 * 4f));
break;
case 11:
Global_113876++;
fVar6 = (fVar6 + Global_114135.f_10198[iVar0 /*12*/].f_4);
break;
case 13:
Global_113877++;
fVar7 = (fVar7 + Global_114135.f_10198[iVar0 /*12*/].f_4);
break;
default:
break;
}
}
iVar0++;
}
if (Global_113854 > 0)
{
if (Global_113871 == Global_113854)
{
fVar1 = 55f;
}
}
if (Global_113855 > 0)
{
if (Global_113872 == Global_113855)
{
fVar2 = 10f;
}
}
if (Global_113856 > 0)
{
if (Global_113873 == Global_113856)
{
fVar3 = 0f;
}
}
if (Global_113857 > 0)
{
if (Global_113874 == Global_113857)
{
fVar4 = 10f;
}
}
if (Global_113858 > 0)
{
if (((Global_113875 == Global_113858 || (Global_113858 * 10 / Global_113875) < 41) || Global_113875 > Global_113861) || Global_113875 == Global_113861)
{
if (!BitTest(Global_114135.f_10198.f_3856, 14))
{
if (Global_113875 == Global_113858)
{
STATS::PRESENCE_EVENT_UPDATESTAT_INT(joaat("NUM_RNDEVENTS_COMPLETED"), Global_113858, 0);
MISC::SET_BIT(&(Global_114135.f_10198.f_3856), 14);
}
}
fVar5 = 5f;
}
}
if (Global_113859 > 0)
{
if (Global_113876 == Global_113859)
{
fVar6 = 15f;
}
}
if (Global_113860 > 0)
{
if (Global_113877 == Global_113860)
{
fVar7 = 5f;
}
}
Global_114135.f_10198.f_3853 = ((((((fVar1 + fVar2) + fVar3) + fVar4) + fVar5) + fVar6) + fVar7);
if (Global_113875 > Global_113861 || Global_113875 == Global_113861)
{
iVar9 = Global_113861;
}
else
{
iVar9 = Global_113875;
}
STATS::STAT_SET_INT(joaat("NUM_MISSIONS_COMPLETED"), Global_113871, true);
STATS::STAT_SET_INT(joaat("NUM_MISSIONS_AVAILABLE"), Global_113854, true);
STATS::STAT_SET_INT(joaat("NUM_MINIGAMES_COMPLETED"), Global_113872, true);
STATS::STAT_SET_INT(joaat("NUM_MINIGAMES_AVAILABLE"), Global_113855, true);
STATS::STAT_SET_INT(joaat("NUM_ODDJOBS_COMPLETED"), Global_113873, true);
STATS::STAT_SET_INT(joaat("NUM_ODDJOBS_AVAILABLE"), Global_113856, true);
STATS::STAT_SET_INT(joaat("NUM_RNDPEOPLE_COMPLETED"), Global_113874, true);
STATS::STAT_SET_INT(joaat("NUM_RNDPEOPLE_AVAILABLE"), Global_113857, true);
STATS::STAT_SET_INT(joaat("NUM_RNDEVENTS_COMPLETED"), iVar9, true);
STATS::STAT_SET_INT(joaat("NUM_RNDEVENTS_AVAILABLE"), Global_113861, true);
STATS::STAT_SET_INT(joaat("NUM_MISC_COMPLETED"), (Global_113877 + Global_113876), true);
STATS::STAT_SET_INT(joaat("NUM_MISC_AVAILABLE"), (Global_113860 + Global_113859), true);
Global_113878 = (Global_113871 * 100 / Global_113854);
Global_113880 = ((Global_113873 + Global_113872) * 100 / (Global_113856 + Global_113855));
Global_113879 = ((Global_113874 + iVar9) * 100 / (Global_113857 + Global_113861));
Global_113881 = ((Global_113876 + Global_113877) * 100 / (Global_113859 + Global_113860));
STATS::STAT_SET_FLOAT(joaat("TOTAL_PROGRESS_MADE"), Global_114135.f_10198.f_3853, true);
STATS::STAT_SET_INT(joaat("PERCENT_STORY_MISSIONS"), Global_113878, true);
STATS::STAT_SET_INT(joaat("PERCENT_AMBIENT_MISSIONS"), Global_113879, true);
STATS::STAT_SET_INT(joaat("PERCENT_ODDJOBS"), Global_113880, true);
if (fVar8 > 0f && SYSTEM::FLOOR(fVar8) < SYSTEM::FLOOR(Global_114135.f_10198.f_3853))
{
func_68(13, SYSTEM::FLOOR(Global_114135.f_10198.f_3853));
}
if (!DATAFILE::DATAFILE_IS_SAVE_PENDING())
{
if (!Global_79539)
{
if (func_67() == 2 == 0 && !NETWORK::NETWORK_IS_GAME_IN_PROGRESS())
{
if (NETWORK::NETWORK_IS_CLOUD_AVAILABLE())
{
Global_113869 = 0;
}
if (!Global_64308)
{
func_16();
}
}
}
}
}
int func_67()//Position - 0x21A8
{
return Global_33087;
}
int func_68(int iParam0, int iParam1)//Position - 0x21B3
{
int iVar0;
if (iParam0 < 0)
{
return 0;
}
if (iParam0 > 78)
{
return 0;
}
if (iParam1 <= 0 || iParam1 > 100)
{
return 0;
}
iVar0 = PLAYER::GET_ACHIEVEMENT_PROGRESS(iParam0);
if (iParam1 > iVar0)
{
return PLAYER::SET_ACHIEVEMENT_PROGRESS(iParam0, iParam1);
}
return 0;
}
void func_69(int* iParam0, bool bParam1)//Position - 0x2204
{
if (ENTITY::DOES_ENTITY_EXIST(*iParam0))
{
if (ENTITY::IS_ENTITY_ATTACHED_TO_ANY_PED(*iParam0))
{
ENTITY::DETACH_ENTITY(*iParam0, true, true);
}
if (!bParam1)
{
ENTITY::SET_OBJECT_AS_NO_LONGER_NEEDED(iParam0);
}
else
{
OBJECT::ONLY_CLEAN_UP_OBJECT_WHEN_OUT_OF_RANGE(*iParam0);
}
}
}
void func_70(int* iParam0)//Position - 0x223F
{
if (HUD::DOES_BLIP_EXIST(*iParam0))
{
HUD::SET_BLIP_ROUTE(*iParam0, false);
HUD::REMOVE_BLIP(iParam0);
}
}