Last active
September 8, 2019 04:05
-
-
Save drunderscore/b534402f56d5be1cda20b9eba94fe628 to your computer and use it in GitHub Desktop.
Reverse engineering GTA V notifications
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #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; | |
| var uLocal_12 = 0; | |
| var uLocal_13 = 0; | |
| float fLocal_14 = 0.00f; | |
| var uLocal_15 = 0; | |
| var uLocal_16 = 0; | |
| int iLocal_17 = 0; | |
| var uLocal_18 = 0; | |
| var uLocal_19 = 0; | |
| int iLocal_20 = 0; | |
| char *sLocal_21 = NULL; | |
| float fLocal_22 = 0.00f; | |
| var uLocal_23 = 0; | |
| var uLocal_24 = 0; | |
| var uLocal_25 = 0; | |
| float fLocal_26 = 0.00f; | |
| float fLocal_27 = 0.00f; | |
| var uLocal_28 = 0; | |
| var uLocal_29 = 0; | |
| float fLocal_30 = 0.00f; | |
| float fLocal_31 = 0.00f; | |
| float fLocal_32 = 0.00f; | |
| var uLocal_33 = 0; | |
| var uLocal_34 = 0; | |
| var uLocal_35 = 10; | |
| var uLocal_36 = 0; | |
| var uLocal_37 = 0; | |
| var uLocal_38 = 0; | |
| var uLocal_39 = 0; | |
| var uLocal_40 = 0; | |
| var uLocal_41 = 0; | |
| var uLocal_42 = 0; | |
| var uLocal_43 = 0; | |
| var uLocal_44 = 0; | |
| var uLocal_45 = 0; | |
| var uLocal_46 = 2; | |
| var uLocal_47 = 0; | |
| var uLocal_48 = 0; | |
| var uLocal_49 = 8; | |
| 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 = 8; | |
| 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; | |
| int iLocal_71 = 0; | |
| int iLocal_72 = 0; | |
| int iLocal_73 = 0; | |
| int iLocal_74 = 0; | |
| var uLocal_75 = 0; | |
| var uLocal_76 = 0; | |
| var uLocal_77 = 0; | |
| int iLocal_78_hasHandledNotification = 0; | |
| int iLocal_79 = 0; | |
| int iLocal_80 = 0; | |
| int iLocal_81 = 0; | |
| int iLocal_82_localNextTime = 0; | |
| int iLocal_83 = 0; | |
| int iLocal_84 = 0; | |
| int iLocal_85 = 0; | |
| int iLocal_86 = 0; | |
| int iLocal_87 = 0; | |
| int iLocal_88 = 0; | |
| int iLocal_89 = 0; | |
| int iLocal_90_notificationState = 0; | |
| var uLocal_91 = 16; | |
| 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; | |
| var uLocal_208 = 0; | |
| var uLocal_209 = 0; | |
| var uLocal_210 = 0; | |
| var uLocal_211 = 0; | |
| var uLocal_212 = 0; | |
| var uLocal_213 = 0; | |
| var uLocal_214 = 0; | |
| var uLocal_215 = 0; | |
| var uLocal_216 = 0; | |
| var uLocal_217 = 0; | |
| var uLocal_218 = 0; | |
| var uLocal_219 = 0; | |
| var uLocal_220 = 0; | |
| var uLocal_221 = 0; | |
| var uLocal_222 = 0; | |
| var uLocal_223 = 0; | |
| var uLocal_224 = 0; | |
| var uLocal_225 = 0; | |
| var uLocal_226 = 0; | |
| var uLocal_227 = 0; | |
| var uLocal_228 = 0; | |
| var uLocal_229 = 0; | |
| var uLocal_230 = 0; | |
| var uLocal_231 = 0; | |
| var uLocal_232 = 0; | |
| var uLocal_233 = 0; | |
| var uLocal_234 = 0; | |
| var uLocal_235 = 0; | |
| var uLocal_236 = 0; | |
| var uLocal_237 = 0; | |
| var uLocal_238 = 0; | |
| var uLocal_239 = 0; | |
| var uLocal_240 = 0; | |
| var uLocal_241 = 0; | |
| var uLocal_242 = 0; | |
| var uLocal_243 = 0; | |
| var uLocal_244 = 0; | |
| var uLocal_245 = 0; | |
| var uLocal_246 = 0; | |
| var uLocal_247 = 0; | |
| var uLocal_248 = 0; | |
| var uLocal_249 = 0; | |
| var uLocal_250 = 0; | |
| var uLocal_251 = 0; | |
| var uLocal_252 = 0; | |
| var uLocal_253 = 0; | |
| var uLocal_254 = 0; | |
| var uLocal_255 = 0; | |
| #endregion | |
| void __EntryFunction__() | |
| { | |
| int iVar0_nextNotificationType; | |
| int iVar1; | |
| int iVar2; | |
| 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_14 = 0.00f; | |
| iLocal_17 = -1; | |
| iLocal_20 = 3; | |
| sLocal_21 = "NULL"; | |
| fLocal_22 = 0.00f; | |
| fLocal_26 = -0.04f; | |
| fLocal_27 = 0.17f; | |
| fLocal_30 = 80.00f; | |
| fLocal_31 = 140.00f; | |
| fLocal_32 = 180.00f; | |
| iLocal_71 = 1; | |
| iLocal_72 = 65; | |
| iLocal_73 = 49; | |
| iLocal_74 = 64; | |
| iLocal_82_localNextTime = -1; | |
| iLocal_85 = -1; | |
| iLocal_89 = -1; | |
| if (PLAYER::HAS_FORCE_CLEANUP_OCCURRED(82)) | |
| { | |
| cleanup_and_terminate(); | |
| } | |
| Global_9070_nextNotificationTime = GAMEPLAY::GET_GAME_TIMER() + 20000; | |
| iVar0_nextNotificationType = 0; | |
| iLocal_86 = GAMEPLAY::GET_GAME_TIMER(); | |
| while (true) | |
| { | |
| iVar1 = GAMEPLAY::GET_GAME_TIMER(); | |
| switch (iLocal_90_notificationState) | |
| { | |
| case 0: | |
| if (is_in_mission() && !func_275(12)) | |
| { | |
| cleanup_and_terminate(); | |
| } | |
| iLocal_78_hasHandledNotification = 0; | |
| if (iLocal_82_localNextTime != -1) | |
| { | |
| iLocal_82_localNextTime = -1; | |
| } | |
| switch (iVar0_nextNotificationType) | |
| { | |
| case 0: | |
| check_phone_calls(&iVar1); | |
| break; | |
| case 1: | |
| check_phone_calls_ex(&iVar1); | |
| break; | |
| case 2: | |
| check_text_messages(&iVar1); | |
| break; | |
| case 3: | |
| update_while_on_phone(&iVar1); | |
| break; | |
| case 4: | |
| check_emails(&iVar1); | |
| break; | |
| } | |
| iVar0_nextNotificationType++; | |
| if (iVar0_nextNotificationType > 4) | |
| { | |
| iVar0_nextNotificationType = 0; | |
| } | |
| if ((((((!func_275(0) && !func_275(4)) && !func_275(5)) && !func_275(2)) && !func_275(1)) && !func_275(3)) && !func_169()) | |
| { | |
| func_149(); | |
| } | |
| break; | |
| case 1: | |
| if (Global_906D == -1) | |
| { | |
| if (!func_147(0) && !func_275(12)) | |
| { | |
| func_139(&iVar1, 0); | |
| iLocal_90_notificationState = 0; | |
| } | |
| } | |
| if (iLocal_90_notificationState == 1) | |
| { | |
| if (iLocal_81) | |
| { | |
| if (!func_138()) | |
| { | |
| iLocal_81 = 0; | |
| } | |
| } | |
| else if (((func_137() || func_136()) || func_138()) || Global_117A4) | |
| { | |
| func_139(&iVar1, 0); | |
| iLocal_90_notificationState = 0; | |
| } | |
| } | |
| if (iLocal_90_notificationState == 1) | |
| { | |
| if (is_phone_in_use(0)) | |
| { | |
| if (func_134()) | |
| { | |
| if (Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/].f_3 == 5) | |
| { | |
| func_133(0); | |
| } | |
| if (GAMEPLAY::IS_BIT_SET(Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/].f_1, 3)) | |
| { | |
| if (func_129()) | |
| { | |
| iLocal_90_notificationState = 2; | |
| } | |
| } | |
| else | |
| { | |
| iLocal_90_notificationState = 2; | |
| } | |
| } | |
| } | |
| } | |
| if (iLocal_90_notificationState == 1) | |
| { | |
| if (iLocal_82_localNextTime == -1) | |
| { | |
| iLocal_82_localNextTime = GAMEPLAY::GET_GAME_TIMER(); | |
| } | |
| else if ((GAMEPLAY::GET_GAME_TIMER() - iLocal_82_localNextTime) > 20000) | |
| { | |
| func_127(); | |
| func_123(1); | |
| func_139(&iVar1, 1); | |
| iLocal_82_localNextTime = -1; | |
| iLocal_90_notificationState = 0; | |
| } | |
| } | |
| break; | |
| case 2: | |
| if (func_122()) | |
| { | |
| func_118(&iVar1); | |
| iLocal_80 = 0; | |
| Global_9070_nextNotificationTime = iVar1 + 20000; | |
| iLocal_90_notificationState = 0; | |
| Global_906C_lastHandledIndex = -1; | |
| } | |
| else if (Global_906C_lastHandledIndex != -1) | |
| { | |
| func_76(); | |
| func_67(); | |
| func_65(iVar1); | |
| } | |
| break; | |
| } | |
| iVar2 = 0; | |
| while (iVar2 < Global_1A045.f_1E02.f_38E) | |
| { | |
| func_49(&iVar1, &(Global_1A045.f_1E02.f_363[iVar2 /*14*/])); | |
| iVar2++; | |
| } | |
| func_36(); | |
| if (Global_906E || Global_906F) | |
| { | |
| update_all_notification_times_by_ratio(); | |
| Global_906F = 0; | |
| } | |
| update_hunting_phone_calls(); | |
| SYSTEM::WAIT(0); | |
| } | |
| } | |
| void update_hunting_phone_calls() | |
| { | |
| if (Global_1A045.f_273B.f_74 == 0) | |
| { | |
| return; | |
| } | |
| if (!func_34(0, 3)) | |
| { | |
| return; | |
| } | |
| if (is_notification_contained(-358013836) || is_notification_contained(-589035286)) | |
| { | |
| if (has_time_passed_from_now(Global_1A045.f_273B.f_74)) | |
| { | |
| func_5(-358013836); | |
| func_5(-589035286); | |
| create_phone_call_object(-1842374536, 4, 54, 3, 7200000, -1, 4); | |
| create_phone_call_object(-418954710, 4, 54, 3, 7200000, -1, 4); | |
| return; | |
| } | |
| } | |
| if (func_2() == -1783816333) | |
| { | |
| func_5(-1783816333); | |
| func_5(-358013836); | |
| func_5(-589035286); | |
| func_5(-1842374536); | |
| func_5(-418954710); | |
| Global_1A045.f_1E02.f_38F = -1; | |
| if (has_time_passed_from_now(Global_1A045.f_273B.f_74)) | |
| { | |
| create_phone_call_object(-1842374536, 4, 54, 3, 7200000, -1, 4); | |
| create_phone_call_object(-418954710, 4, 54, 3, 7200000, -1, 4); | |
| } | |
| else | |
| { | |
| create_phone_call_object(-358013836, 4, 54, 3, 7200000, -1, 4); | |
| create_phone_call_object(-589035286, 4, 54, 3, 7200000, -1, 4); | |
| } | |
| } | |
| } | |
| int func_2() | |
| { | |
| return Global_1A045.f_1E02.f_38F; | |
| } | |
| int create_phone_call_object(int iParam0, int iParam1, int iParam2, int iParam3, int iParam4, int iParam5, int iParam6) | |
| { | |
| struct<15> Var0; | |
| if (func_4(0)) | |
| { | |
| return 0; | |
| } | |
| if (iParam2 < 3) | |
| { | |
| if (GAMEPLAY::IS_BIT_SET(iParam1, iParam2)) | |
| { | |
| return 0; | |
| } | |
| } | |
| if (iParam1 < 1 || iParam1 > 7) | |
| { | |
| return 0; | |
| } | |
| if (iParam4 <= 0) | |
| { | |
| return 0; | |
| } | |
| if (Global_1A045.f_1E02.f_28A < 30) | |
| { | |
| Var0 = iParam0; | |
| if (Global_1A045.f_1E02.f_38F == Var0) | |
| { | |
| Global_1A045.f_1E02.f_38F = -1; | |
| } | |
| Var0.f_1 = 0; | |
| Var0.f_6 = iParam2; | |
| Var0.f_2 = iParam1; | |
| Var0.f_E = iParam3; | |
| Var0.f_3 = iParam6; | |
| Var0.f_7 = -1; | |
| Var0.f_8 = 0; | |
| Var0.f_9 = -1; | |
| Var0.f_4 = (GAMEPLAY::GET_GAME_TIMER() + iParam4); | |
| Var0.f_9 = iParam5; | |
| Var0.f_A = -1; | |
| Var0.f_B = -1; | |
| GAMEPLAY::SET_BIT(&(Var0.f_1), 0); | |
| GAMEPLAY::SET_BIT(&(Var0.f_1), 6); | |
| Global_1A045.f_1E02.f_C7[Global_1A045.f_1E02.f_28A /*15*/] = {Var0}; | |
| Global_1A045.f_1E02.f_28A++; | |
| return 1; | |
| } | |
| return 0; | |
| } | |
| bool func_4(bool bParam0) | |
| { | |
| if (!bParam0 && SCRIPT::_GET_NUM_OF_INSTANCES_OF_SCRIPT_WITH_NAME_HASH(-448212099) > 0) // benchmark script | |
| { | |
| return 1; | |
| } | |
| return GAMEPLAY::IS_BIT_SET(Global_1189E, 0); | |
| } | |
| int func_5(int iParam0) | |
| { | |
| int iVar0; | |
| int iVar1; | |
| iVar1 = 0; | |
| iVar0 = 0; | |
| while (iVar0 < Global_1A045.f_1E02.f_88) | |
| { | |
| if (Global_1A045.f_1E02[iVar0 /*15*/] == iParam0) | |
| { | |
| if (Global_906C_lastHandledIndex != iVar0) | |
| { | |
| func_14(iVar0); | |
| func_11(iParam0); | |
| iVar1 = 1; | |
| } | |
| } | |
| iVar0++; | |
| } | |
| iVar0 = 0; | |
| while (iVar0 < Global_1A045.f_1E02.f_C6) | |
| { | |
| if (Global_1A045.f_1E02.f_89[iVar0 /*15*/] == iParam0) | |
| { | |
| func_11(iParam0); | |
| iVar1 = 1; | |
| } | |
| iVar0++; | |
| } | |
| iVar0 = 0; | |
| while (iVar0 < Global_1A045.f_1E02.f_28A) | |
| { | |
| if (Global_1A045.f_1E02.f_C7[iVar0 /*15*/] == iParam0) | |
| { | |
| func_10(iParam0); | |
| iVar1 = 1; | |
| } | |
| iVar0++; | |
| } | |
| iVar0 = 0; | |
| while (iVar0 < Global_1A045.f_1E02.f_2FC) | |
| { | |
| if (Global_1A045.f_1E02.f_28B[iVar0 /*14*/] == iParam0) | |
| { | |
| func_7(iVar0); | |
| iVar1 = 1; | |
| } | |
| iVar0++; | |
| } | |
| iVar0 = 0; | |
| while (iVar0 < Global_1A045.f_1E02.f_362) | |
| { | |
| if (Global_1A045.f_1E02.f_2FD[iVar0 /*10*/] == iParam0) | |
| { | |
| func_6(iVar0); | |
| iVar1 = 1; | |
| } | |
| iVar0++; | |
| } | |
| return iVar1; | |
| } | |
| void func_6(int iParam0) | |
| { | |
| int iVar0; | |
| struct<10> Var1; | |
| if (iParam0 < 0 || iParam0 >= Global_1A045.f_1E02.f_362) | |
| { | |
| return; | |
| } | |
| if (Global_1A045.f_1E02.f_362 > 1) | |
| { | |
| iVar0 = iParam0; | |
| while (iVar0 <= (Global_1A045.f_1E02.f_362 - 2)) | |
| { | |
| Global_1A045.f_1E02.f_2FD[iVar0 /*10*/] = {Global_1A045.f_1E02.f_2FD[iVar0 + 1 /*10*/]}; | |
| iVar0++; | |
| } | |
| } | |
| if (Global_1A045.f_1E02.f_362 > 0) | |
| { | |
| Global_1A045.f_1E02.f_2FD[(Global_1A045.f_1E02.f_362 - 1) /*10*/] = {Var1}; | |
| Global_1A045.f_1E02.f_362 = (Global_1A045.f_1E02.f_362 - 1); | |
| } | |
| } | |
| void func_7(int iParam0) | |
| { | |
| int iVar0; | |
| struct<14> Var1; | |
| if (iParam0 < 0 || iParam0 >= Global_1A045.f_1E02.f_2FC) | |
| { | |
| return; | |
| } | |
| if (Global_1A045.f_1E02.f_2FC > 1) | |
| { | |
| iVar0 = iParam0; | |
| while (iVar0 <= (Global_1A045.f_1E02.f_2FC - 2)) | |
| { | |
| Global_1A045.f_1E02.f_28B[iVar0 /*14*/] = {Global_1A045.f_1E02.f_28B[iVar0 + 1 /*14*/]}; | |
| iVar0++; | |
| } | |
| } | |
| if (Global_1A045.f_1E02.f_2FC > 0) | |
| { | |
| Global_1A045.f_1E02.f_28B[(Global_1A045.f_1E02.f_2FC - 1) /*14*/] = {Var1}; | |
| Global_1A045.f_1E02.f_2FC = (Global_1A045.f_1E02.f_2FC - 1); | |
| } | |
| func_8(0); | |
| func_8(1); | |
| func_8(2); | |
| } | |
| void func_8(int iParam0) | |
| { | |
| int iVar0; | |
| int iVar1; | |
| int iVar2; | |
| iVar1 = 0; | |
| if (!is_valid_char_index(iParam0)) | |
| { | |
| return; | |
| } | |
| iVar0 = 0; | |
| while (iVar0 < Global_1A045.f_1E02.f_88) | |
| { | |
| if (GAMEPLAY::IS_BIT_SET(Global_1A045.f_1E02[iVar0 /*15*/].f_2, iParam0)) | |
| { | |
| if (Global_1A045.f_1E02[iVar0 /*15*/].f_3 > iVar1) | |
| { | |
| iVar1 = Global_1A045.f_1E02[iVar0 /*15*/].f_3; | |
| } | |
| } | |
| iVar0++; | |
| } | |
| iVar2 = 0; | |
| while (iVar2 < Global_1A045.f_1E02.f_2FC) | |
| { | |
| if (GAMEPLAY::IS_BIT_SET(Global_1A045.f_1E02.f_28B[iVar2 /*14*/].f_2, iParam0)) | |
| { | |
| if (Global_1A045.f_1E02.f_28B[iVar2 /*14*/].f_3 == 5) | |
| { | |
| iVar1 = 5; | |
| } | |
| } | |
| iVar2++; | |
| } | |
| Global_1A045.f_1E02.f_397[iParam0] = iVar1; | |
| } | |
| bool is_valid_char_index(int iParam0) | |
| { | |
| return iParam0 < 3; | |
| } | |
| void func_10(int iParam0) | |
| { | |
| struct<15> Var0; | |
| int iVar15; | |
| int iVar16; | |
| iVar15 = 0; | |
| while (iVar15 < Global_1A045.f_1E02.f_28A) | |
| { | |
| if (Global_1A045.f_1E02.f_C7[iVar15 /*15*/] == iParam0) | |
| { | |
| iVar16 = iVar15; | |
| while (iVar16 <= (Global_1A045.f_1E02.f_28A - 2)) | |
| { | |
| Global_1A045.f_1E02.f_C7[iVar16 /*15*/] = {Global_1A045.f_1E02.f_C7[iVar16 + 1 /*15*/]}; | |
| iVar16++; | |
| } | |
| Global_1A045.f_1E02.f_C7[(Global_1A045.f_1E02.f_28A - 1) /*15*/] = {Var0}; | |
| Global_1A045.f_1E02.f_28A = (Global_1A045.f_1E02.f_28A - 1); | |
| return; | |
| } | |
| iVar15++; | |
| } | |
| } | |
| void func_11(int iParam0) | |
| { | |
| struct<15> Var0; | |
| int iVar15; | |
| int iVar16; | |
| iVar15 = 0; | |
| while (iVar15 < Global_1A045.f_1E02.f_C6) | |
| { | |
| if (Global_1A045.f_1E02.f_89[iVar15 /*15*/] == iParam0) | |
| { | |
| func_12(Global_1A045.f_1E02.f_89[iVar15 /*15*/].f_6); | |
| iVar16 = iVar15; | |
| while (iVar16 <= (Global_1A045.f_1E02.f_C6 - 2)) | |
| { | |
| Global_1A045.f_1E02.f_89[iVar16 /*15*/] = {Global_1A045.f_1E02.f_89[iVar16 + 1 /*15*/]}; | |
| iVar16++; | |
| } | |
| Global_1A045.f_1E02.f_89[(Global_1A045.f_1E02.f_C6 - 1) /*15*/] = {Var0}; | |
| Global_1A045.f_1E02.f_C6 = (Global_1A045.f_1E02.f_C6 - 1); | |
| return; | |
| } | |
| iVar15++; | |
| } | |
| } | |
| int func_12(int iParam0) | |
| { | |
| int iVar0; | |
| if (Global_75[iParam0 /*10*/].f_8 != 147) | |
| { | |
| if (Global_1A045.f_6D8C[iParam0 /*29*/].f_13[Global_38D9] == 1) | |
| { | |
| Global_1A045.f_6D8C[iParam0 /*29*/].f_13[Global_38D9] = 0; | |
| if (Global_1A045.f_6D8C[iParam0 /*29*/].f_18[Global_38D9] == 0) | |
| { | |
| iVar0 = Global_38D9; | |
| func_13(iParam0, iVar0); | |
| } | |
| return 1; | |
| } | |
| else | |
| { | |
| return 0; | |
| } | |
| } | |
| return 0; | |
| } | |
| void func_13(int iParam0, int iParam1) | |
| { | |
| if (Global_75[iParam0 /*10*/].f_8 != 147) | |
| { | |
| if (iParam1 > 3) | |
| { | |
| } | |
| else | |
| { | |
| Global_1A045.f_6D8C[iParam0 /*29*/].f_C[iParam1] = 0; | |
| Global_1A045.f_6D8C[iParam0 /*29*/].f_18[iParam1] = 0; | |
| } | |
| } | |
| } | |
| void func_14(int iParam0) | |
| { | |
| int iVar0; | |
| int iVar1; | |
| struct<15> Var2; | |
| if (iParam0 < 0 || iParam0 >= Global_1A045.f_1E02.f_88) | |
| { | |
| return; | |
| } | |
| iVar1 = Global_1A045.f_1E02[iParam0 /*15*/].f_2; | |
| if (Global_1A045.f_1E02.f_88 > 1) | |
| { | |
| iVar0 = iParam0; | |
| while (iVar0 <= (Global_1A045.f_1E02.f_88 - 2)) | |
| { | |
| Global_1A045.f_1E02[iVar0 /*15*/] = {Global_1A045.f_1E02[iVar0 + 1 /*15*/]}; | |
| iVar0++; | |
| } | |
| } | |
| if (Global_1A045.f_1E02.f_88 > 0) | |
| { | |
| Global_1A045.f_1E02[(Global_1A045.f_1E02.f_88 - 1) /*15*/] = {Var2}; | |
| Global_1A045.f_1E02.f_88 = (Global_1A045.f_1E02.f_88 - 1); | |
| } | |
| iVar0 = 0; | |
| while (iVar0 < 3) | |
| { | |
| if (GAMEPLAY::IS_BIT_SET(iVar1, iVar0)) | |
| { | |
| func_8(iVar0); | |
| } | |
| iVar0++; | |
| } | |
| } | |
| bool has_time_passed_from_now(int iParam0) | |
| { | |
| return has_time_passed(build_time_now(), iParam0); | |
| } | |
| int has_time_passed(int iParam0, int iParam1) | |
| { | |
| int iVar0; | |
| int iVar1; | |
| if (!is_valid_time(iParam1) || !is_valid_time(iParam0)) | |
| { | |
| return 1; | |
| } | |
| iVar0 = get_year_from_time(iParam0); | |
| iVar1 = get_year_from_time(iParam1); | |
| if (iVar0 > iVar1) | |
| { | |
| return 1; | |
| } | |
| else if (iVar0 < iVar1) | |
| { | |
| return 0; | |
| } | |
| iVar0 = get_month_from_time(iParam0); | |
| iVar1 = get_month_from_time(iParam1); | |
| if (iVar0 > iVar1) | |
| { | |
| return 1; | |
| } | |
| else if (iVar0 < iVar1) | |
| { | |
| return 0; | |
| } | |
| iVar0 = get_day_from_time(iParam0); | |
| iVar1 = get_day_from_time(iParam1); | |
| if (iVar0 > iVar1) | |
| { | |
| return 1; | |
| } | |
| else if (iVar0 < iVar1) | |
| { | |
| return 0; | |
| } | |
| iVar0 = get_hours_from_time(iParam0); | |
| iVar1 = get_hours_from_time(iParam1); | |
| if (iVar0 > iVar1) | |
| { | |
| return 1; | |
| } | |
| else if (iVar0 < iVar1) | |
| { | |
| return 0; | |
| } | |
| iVar0 = get_minutes_from_time(iParam0); | |
| iVar1 = get_minutes_from_time(iParam1); | |
| if (iVar0 > iVar1) | |
| { | |
| return 1; | |
| } | |
| else if (iVar0 < iVar1) | |
| { | |
| return 0; | |
| } | |
| iVar0 = get_seconds_from_time(iParam0); | |
| iVar1 = get_seconds_from_time(iParam1); | |
| if (iVar0 > iVar1) | |
| { | |
| return 1; | |
| } | |
| return 0; | |
| } | |
| int get_seconds_from_time(int iParam0) | |
| { | |
| return SYSTEM::SHIFT_RIGHT(iParam0, 20) & 63; | |
| } | |
| int get_minutes_from_time(int iParam0) | |
| { | |
| return SYSTEM::SHIFT_RIGHT(iParam0, 14) & 63; | |
| } | |
| int get_hours_from_time(int iParam0) | |
| { | |
| return SYSTEM::SHIFT_RIGHT(iParam0, 9) & 31; | |
| } | |
| int get_day_from_time(int iParam0) | |
| { | |
| return SYSTEM::SHIFT_RIGHT(iParam0, 4) & 31; | |
| } | |
| int get_month_from_time(int iParam0) | |
| { | |
| return iParam0 & 15; | |
| } | |
| var get_year_from_time(int iParam0) | |
| { | |
| return (SYSTEM::SHIFT_RIGHT(iParam0, 26) & 31 * func_23(GAMEPLAY::IS_BIT_SET(iParam0, 31), -1, 1)) + 2011; | |
| } | |
| int func_23(bool bParam0, int iParam1, int iParam2) | |
| { | |
| if (bParam0) | |
| { | |
| return iParam1; | |
| } | |
| return iParam2; | |
| } | |
| int is_valid_time(int iParam0) | |
| { | |
| int iVar0; | |
| int iVar1; | |
| int iVar2; | |
| int iVar3; | |
| int iVar4; | |
| int iVar5; | |
| if (iParam0 == -15) | |
| { | |
| return 0; | |
| } | |
| iVar0 = get_seconds_from_time(iParam0); | |
| if (iVar0 < 0 || iVar0 >= 60) | |
| { | |
| return 0; | |
| } | |
| iVar1 = get_minutes_from_time(iParam0); | |
| if (iVar1 < 0 || iVar1 >= 60) | |
| { | |
| return 0; | |
| } | |
| iVar2 = get_hours_from_time(iParam0); | |
| if (iVar2 < 0 || iVar2 > 23) | |
| { | |
| return 0; | |
| } | |
| iVar3 = get_year_from_time(iParam0); | |
| if ((iVar3 <= 0 || iVar3 > 2043) || iVar3 < 1979) | |
| { | |
| return 0; | |
| } | |
| iVar4 = get_month_from_time(iParam0); | |
| if (iVar4 < 0 || iVar4 > 11) | |
| { | |
| return 0; | |
| } | |
| iVar5 = get_day_from_time(iParam0); | |
| if (iVar5 < 1 || iVar5 > get_days_in_month(iVar4, iVar3)) | |
| { | |
| return 0; | |
| } | |
| return 1; | |
| } | |
| int get_days_in_month(int iParam0, int iParam1) | |
| { | |
| if (iParam1 < 0) | |
| { | |
| iParam1 = 0; | |
| } | |
| switch (iParam0) | |
| { | |
| case 0: | |
| case 2: | |
| case 4: | |
| case 6: | |
| case 7: | |
| case 9: | |
| case 11: | |
| return 31; | |
| break; | |
| case 3: | |
| case 5: | |
| case 8: | |
| case 10: | |
| return 30; | |
| break; | |
| case 1: | |
| if ((iParam1 % 4) == 0) | |
| { | |
| if ((iParam1 % 100) != 0) | |
| { | |
| return 29; | |
| } | |
| else if ((iParam1 % 400) == 0) | |
| { | |
| return 29; | |
| } | |
| } | |
| return 28; | |
| break; | |
| } | |
| return 30; | |
| } | |
| int build_time_now() | |
| { | |
| var uVar0; | |
| build_time_seconds(&uVar0, TIME::GET_CLOCK_SECONDS()); | |
| build_time_minutes(&uVar0, TIME::GET_CLOCK_MINUTES()); | |
| build_time_hours(&uVar0, TIME::GET_CLOCK_HOURS()); | |
| build_time_day(&uVar0, TIME::GET_CLOCK_DAY_OF_MONTH()); | |
| build_time_month(&uVar0, TIME::GET_CLOCK_MONTH()); | |
| build_time_year(&uVar0, TIME::GET_CLOCK_YEAR()); | |
| return uVar0; | |
| } | |
| void build_time_year(var uParam0, int iParam1) | |
| { | |
| if (iParam1 <= 0) | |
| { | |
| return; | |
| } | |
| if (iParam1 > 2043 || iParam1 < 1979) | |
| { | |
| return; | |
| } | |
| *uParam0 = (*uParam0 - *uParam0 & 2080374784); | |
| if (iParam1 < 2011) | |
| { | |
| *uParam0 = (*uParam0 || SYSTEM::SHIFT_LEFT((2011 - iParam1), 26)); | |
| *uParam0 |= -2147483648; | |
| } | |
| else | |
| { | |
| *uParam0 = (*uParam0 || SYSTEM::SHIFT_LEFT((iParam1 - 2011), 26)); | |
| *uParam0 = (*uParam0 - *uParam0 & -2147483648); | |
| } | |
| } | |
| void build_time_month(var uParam0, int iParam1) | |
| { | |
| if (iParam1 < 0 || iParam1 > 11) | |
| { | |
| return; | |
| } | |
| *uParam0 = (*uParam0 - *uParam0 & 15); | |
| *uParam0 = (*uParam0 || iParam1); | |
| } | |
| void build_time_day(var uParam0, int iParam1) | |
| { | |
| int iVar0; | |
| int iVar1; | |
| iVar0 = get_month_from_time(*uParam0); | |
| iVar1 = get_year_from_time(*uParam0); | |
| if (iParam1 < 1 || iParam1 > get_days_in_month(iVar0, iVar1)) | |
| { | |
| return; | |
| } | |
| *uParam0 = (*uParam0 - *uParam0 & 496); | |
| *uParam0 = (*uParam0 || SYSTEM::SHIFT_LEFT(iParam1, 4)); | |
| } | |
| void build_time_hours(var uParam0, int iParam1) | |
| { | |
| if (iParam1 < 0 || iParam1 > 24) | |
| { | |
| return; | |
| } | |
| *uParam0 = (*uParam0 - *uParam0 & 15872); | |
| *uParam0 = (*uParam0 || SYSTEM::SHIFT_LEFT(iParam1, 9)); | |
| } | |
| void build_time_minutes(var uParam0, int iParam1) | |
| { | |
| if (iParam1 < 0 || iParam1 >= 60) | |
| { | |
| return; | |
| } | |
| *uParam0 = (*uParam0 - *uParam0 & 1032192); | |
| *uParam0 = (*uParam0 || SYSTEM::SHIFT_LEFT(iParam1, 14)); | |
| } | |
| void build_time_seconds(var uParam0, int iParam1) | |
| { | |
| if (iParam1 < 0 || iParam1 >= 60) | |
| { | |
| return; | |
| } | |
| *uParam0 = (*uParam0 - *uParam0 & 66060288); | |
| *uParam0 = (*uParam0 || SYSTEM::SHIFT_LEFT(iParam1, 20)); | |
| } | |
| int is_notification_contained(int iParam0) | |
| { | |
| int iVar0; | |
| iVar0 = 0; | |
| while (iVar0 < Global_1A045.f_1E02.f_88) | |
| { | |
| if (Global_1A045.f_1E02[iVar0 /*15*/] == iParam0) | |
| { | |
| return 1; | |
| } | |
| iVar0++; | |
| } | |
| iVar0 = 0; | |
| while (iVar0 < Global_1A045.f_1E02.f_28A) | |
| { | |
| if (Global_1A045.f_1E02.f_C7[iVar0 /*15*/] == iParam0) | |
| { | |
| return 1; | |
| } | |
| iVar0++; | |
| } | |
| iVar0 = 0; | |
| while (iVar0 < Global_1A045.f_1E02.f_C6) | |
| { | |
| if (Global_1A045.f_1E02.f_89[iVar0 /*15*/] == iParam0) | |
| { | |
| return 1; | |
| } | |
| iVar0++; | |
| } | |
| iVar0 = 0; | |
| while (iVar0 < Global_1A045.f_1E02.f_2FC) | |
| { | |
| if (Global_1A045.f_1E02.f_28B[iVar0 /*14*/] == iParam0) | |
| { | |
| return 1; | |
| } | |
| iVar0++; | |
| } | |
| iVar0 = 0; | |
| while (iVar0 < Global_1A045.f_1E02.f_362) | |
| { | |
| if (Global_1A045.f_1E02.f_2FD[iVar0 /*10*/] == iParam0) | |
| { | |
| return 1; | |
| } | |
| iVar0++; | |
| } | |
| return 0; | |
| } | |
| bool func_34(int iParam0, int iParam1) | |
| { | |
| bool bVar0; | |
| if (iParam0 == 11 || iParam0 == -1) | |
| { | |
| return 0; | |
| } | |
| if (iParam1 < 0 || iParam1 >= 32) | |
| { | |
| return 0; | |
| } | |
| bVar0 = GAMEPLAY::IS_BIT_SET(Global_1A045.f_2377.f_63.f_DB[iParam0], iParam1); | |
| return bVar0; | |
| } | |
| void update_all_notification_times_by_ratio() | |
| { | |
| int iVar0; | |
| int iVar1; | |
| iVar1 = SYSTEM::CEIL((GAMEPLAY::GET_FRAME_TIME() * 1000.00f)); | |
| Global_9070_nextNotificationTime = (Global_9070_nextNotificationTime + iVar1); | |
| iVar0 = 0; | |
| while (iVar0 < Global_1A045.f_1E02.f_88) | |
| { | |
| Global_1A045.f_1E02[iVar0 /*15*/].f_4 = (Global_1A045.f_1E02[iVar0 /*15*/].f_4 + iVar1); | |
| iVar0++; | |
| } | |
| iVar0 = 0; | |
| while (iVar0 < Global_1A045.f_1E02.f_2FC) | |
| { | |
| Global_1A045.f_1E02.f_28B[iVar0 /*14*/].f_4 = (Global_1A045.f_1E02.f_28B[iVar0 /*14*/].f_4 + iVar1); | |
| iVar0++; | |
| } | |
| iVar0 = 0; | |
| while (iVar0 < Global_1A045.f_1E02.f_362) | |
| { | |
| Global_1A045.f_1E02.f_2FD[iVar0 /*10*/].f_4 = (Global_1A045.f_1E02.f_2FD[iVar0 /*10*/].f_4 + iVar1); | |
| iVar0++; | |
| } | |
| iVar0 = 0; | |
| while (iVar0 < Global_1A045.f_1E02.f_28A) | |
| { | |
| Global_1A045.f_1E02.f_C7[iVar0 /*15*/].f_4 = (Global_1A045.f_1E02.f_C7[iVar0 /*15*/].f_4 + iVar1); | |
| iVar0++; | |
| } | |
| iVar0 = 0; | |
| while (iVar0 < 161) | |
| { | |
| Global_9071[iVar0] = (Global_9071[iVar0] + iVar1); | |
| iVar0++; | |
| } | |
| } | |
| void func_36() | |
| { | |
| if (!func_48(2)) | |
| { | |
| if (func_47(0)) | |
| { | |
| if (!func_47(1)) | |
| { | |
| if (is_phone_in_use(1)) | |
| { | |
| if (Global_906C_lastHandledIndex != -1) | |
| { | |
| if (Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/] == 1611093726 || Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/] == 742578279) | |
| { | |
| switch (func_46("AM_H_FCAL1")) | |
| { | |
| case 2: | |
| func_44("AM_H_FCAL1", 2, 0, 1000, 7500, 7, 0, 0, 0); | |
| break; | |
| case 1: | |
| func_43(2); | |
| break; | |
| } | |
| } | |
| } | |
| } | |
| } | |
| } | |
| } | |
| if (!func_48(3)) | |
| { | |
| if (!iLocal_79) | |
| { | |
| if (func_47(0)) | |
| { | |
| if (!func_47(1)) | |
| { | |
| if (is_phone_in_use(1)) | |
| { | |
| if (Global_906C_lastHandledIndex != -1) | |
| { | |
| if (Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/] == 1611093726 || Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/] == 742578279) | |
| { | |
| if (func_134()) | |
| { | |
| if (func_42("AM_H_FCAL1")) | |
| { | |
| func_38("AM_H_FCAL1", 1); | |
| } | |
| if (is_this_help_message_being_displayed("AM_H_FCAL1")) | |
| { | |
| UI::CLEAR_HELP(0); | |
| } | |
| func_43(2); | |
| func_44("AM_H_FCAL2", 2, 0, 1000, 7500, 7, 0, 0, 0); | |
| iLocal_79 = 1; | |
| } | |
| } | |
| } | |
| } | |
| } | |
| } | |
| } | |
| else | |
| { | |
| if (func_46("AM_H_FCAL2") == 2) | |
| { | |
| iLocal_79 = 0; | |
| } | |
| else if (func_46("AM_H_FCAL2") == 1) | |
| { | |
| func_43(3); | |
| } | |
| if (!func_134()) | |
| { | |
| func_38("AM_H_FCAL2", 1); | |
| if (is_this_help_message_being_displayed("AM_H_FCAL2")) | |
| { | |
| UI::CLEAR_HELP(0); | |
| } | |
| func_43(3); | |
| } | |
| } | |
| if (Global_1A045.f_1E02.f_38F == 1611093726 || Global_1A045.f_1E02.f_38F == 742578279) | |
| { | |
| func_43(3); | |
| func_43(2); | |
| if (func_42("AM_H_FCAL1")) | |
| { | |
| func_38("AM_H_FCAL1", 1); | |
| } | |
| if (is_this_help_message_being_displayed("AM_H_FCAL1")) | |
| { | |
| UI::CLEAR_HELP(0); | |
| } | |
| if (func_42("AM_H_FCAL2")) | |
| { | |
| func_38("AM_H_FCAL2", 1); | |
| } | |
| if (is_this_help_message_being_displayed("AM_H_FCAL2")) | |
| { | |
| UI::CLEAR_HELP(0); | |
| } | |
| } | |
| } | |
| } | |
| int is_this_help_message_being_displayed(char *sParam0) | |
| { | |
| UI::BEGIN_TEXT_COMMAND_IS_THIS_HELP_MESSAGE_BEING_DISPLAYED(sParam0); | |
| return UI::END_TEXT_COMMAND_IS_THIS_HELP_MESSAGE_BEING_DISPLAYED(0); | |
| } | |
| void func_38(char *sParam0, int iParam1) | |
| { | |
| int iVar0; | |
| int iVar1; | |
| if (Global_19AF5 && iParam1) | |
| { | |
| if (is_this_help_message_being_displayed(sParam0) && !UI::IS_HELP_MESSAGE_FADING_OUT()) | |
| { | |
| UI::CLEAR_HELP(0); | |
| } | |
| } | |
| iVar0 = 0; | |
| while (iVar0 < Global_1A045.f_4FB4.f_91) | |
| { | |
| if (GAMEPLAY::ARE_STRINGS_EQUAL(sParam0, &(Global_1A045.f_4FB4[iVar0 /*16*/]))) | |
| { | |
| iVar1 = iVar0; | |
| while (iVar1 <= (Global_1A045.f_4FB4.f_91 - 2)) | |
| { | |
| func_41(iVar1, iVar1 + 1); | |
| iVar1++; | |
| } | |
| func_40((Global_1A045.f_4FB4.f_91 - 1)); | |
| Global_1A045.f_4FB4.f_91 = (Global_1A045.f_4FB4.f_91 - 1); | |
| func_39(); | |
| return; | |
| } | |
| iVar0++; | |
| } | |
| } | |
| void func_39() | |
| { | |
| int iVar0; | |
| iVar0 = 0; | |
| while (iVar0 < 3) | |
| { | |
| Global_1A045.f_4FB4.f_92[iVar0] = 0; | |
| iVar0++; | |
| } | |
| iVar0 = 0; | |
| while (iVar0 < Global_1A045.f_4FB4.f_91) | |
| { | |
| if (GAMEPLAY::IS_BIT_SET(Global_1A045.f_4FB4[iVar0 /*16*/].f_B, 0)) | |
| { | |
| if (Global_1A045.f_4FB4[iVar0 /*16*/].f_C > Global_1A045.f_4FB4.f_92[0]) | |
| { | |
| Global_1A045.f_4FB4.f_92[0] = Global_1A045.f_4FB4[iVar0 /*16*/].f_C; | |
| } | |
| } | |
| if (GAMEPLAY::IS_BIT_SET(Global_1A045.f_4FB4[iVar0 /*16*/].f_B, 1)) | |
| { | |
| if (Global_1A045.f_4FB4[iVar0 /*16*/].f_C > Global_1A045.f_4FB4.f_92[1]) | |
| { | |
| Global_1A045.f_4FB4.f_92[1] = Global_1A045.f_4FB4[iVar0 /*16*/].f_C; | |
| } | |
| } | |
| if (GAMEPLAY::IS_BIT_SET(Global_1A045.f_4FB4[iVar0 /*16*/].f_B, 2)) | |
| { | |
| if (Global_1A045.f_4FB4[iVar0 /*16*/].f_C > Global_1A045.f_4FB4.f_92[2]) | |
| { | |
| Global_1A045.f_4FB4.f_92[2] = Global_1A045.f_4FB4[iVar0 /*16*/].f_C; | |
| } | |
| } | |
| iVar0++; | |
| } | |
| } | |
| void func_40(int iParam0) | |
| { | |
| StringCopy(&(Global_1A045.f_4FB4[iParam0 /*16*/]), "", 16); | |
| StringCopy(&(Global_1A045.f_4FB4[iParam0 /*16*/].f_4), "", 16); | |
| Global_1A045.f_4FB4[iParam0 /*16*/].f_8 = 0; | |
| Global_1A045.f_4FB4[iParam0 /*16*/].f_9 = 0; | |
| Global_1A045.f_4FB4[iParam0 /*16*/].f_B = 0; | |
| Global_1A045.f_4FB4[iParam0 /*16*/].f_A = -1; | |
| Global_1A045.f_4FB4[iParam0 /*16*/].f_C = 0; | |
| Global_1A045.f_4FB4[iParam0 /*16*/].f_D = 0; | |
| Global_1A045.f_4FB4[iParam0 /*16*/].f_E = 0; | |
| Global_1A045.f_4FB4[iParam0 /*16*/].f_F = 0; | |
| } | |
| void func_41(int iParam0, int iParam1) | |
| { | |
| Global_1A045.f_4FB4[iParam0 /*16*/] = {Global_1A045.f_4FB4[iParam1 /*16*/]}; | |
| Global_1A045.f_4FB4[iParam0 /*16*/].f_4 = {Global_1A045.f_4FB4[iParam1 /*16*/].f_4}; | |
| Global_1A045.f_4FB4[iParam0 /*16*/].f_8 = Global_1A045.f_4FB4[iParam1 /*16*/].f_8; | |
| Global_1A045.f_4FB4[iParam0 /*16*/].f_A = Global_1A045.f_4FB4[iParam1 /*16*/].f_A; | |
| Global_1A045.f_4FB4[iParam0 /*16*/].f_9 = Global_1A045.f_4FB4[iParam1 /*16*/].f_9; | |
| Global_1A045.f_4FB4[iParam0 /*16*/].f_B = Global_1A045.f_4FB4[iParam1 /*16*/].f_B; | |
| Global_1A045.f_4FB4[iParam0 /*16*/].f_C = Global_1A045.f_4FB4[iParam1 /*16*/].f_C; | |
| Global_1A045.f_4FB4[iParam0 /*16*/].f_D = Global_1A045.f_4FB4[iParam1 /*16*/].f_D; | |
| Global_1A045.f_4FB4[iParam0 /*16*/].f_E = Global_1A045.f_4FB4[iParam1 /*16*/].f_E; | |
| Global_1A045.f_4FB4[iParam0 /*16*/].f_F = Global_1A045.f_4FB4[iParam1 /*16*/].f_F; | |
| } | |
| int func_42(char *sParam0) | |
| { | |
| int iVar0; | |
| iVar0 = 0; | |
| while (iVar0 < Global_1A045.f_4FB4.f_91) | |
| { | |
| if (GAMEPLAY::ARE_STRINGS_EQUAL(sParam0, &(Global_1A045.f_4FB4[iVar0 /*16*/]))) | |
| { | |
| return 1; | |
| } | |
| iVar0++; | |
| } | |
| return 0; | |
| } | |
| void func_43(int iParam0) | |
| { | |
| int iVar0; | |
| int iVar1; | |
| iVar0 = iParam0; | |
| iVar1 = 0; | |
| while (iVar0 > 31) | |
| { | |
| iVar0 = (iVar0 - 32); | |
| iVar1++; | |
| } | |
| if (iVar1 < 3) | |
| { | |
| GAMEPLAY::SET_BIT(&(Global_1A045.f_4FB4.f_96[iVar1]), iVar0); | |
| } | |
| } | |
| void func_44(char *sParam0, int iParam1, int iParam2, int iParam3, int iParam4, int iParam5, int iParam6, int iParam7, int iParam8) | |
| { | |
| func_45(sParam0, "", iParam1, iParam2, iParam3, iParam4, iParam5, iParam6, iParam7, iParam8); | |
| } | |
| void func_45(char *sParam0, char *sParam1, var uParam2, int iParam3, int iParam4, int iParam5, int iParam6, int iParam7, int iParam8, var uParam9) | |
| { | |
| int iVar0; | |
| if (GAMEPLAY::ARE_STRINGS_EQUAL(sParam0, "")) | |
| { | |
| return; | |
| } | |
| if (iParam3 < 0) | |
| { | |
| return; | |
| } | |
| if (iParam5 < 500 && iParam5 != -1) | |
| { | |
| return; | |
| } | |
| if (iParam4 < 0 && iParam4 != -1) | |
| { | |
| return; | |
| } | |
| if (iParam6 < 1 || iParam6 > 7) | |
| { | |
| return; | |
| } | |
| if (iParam7 == 235) | |
| { | |
| return; | |
| } | |
| if (iParam8 == 235) | |
| { | |
| return; | |
| } | |
| iVar0 = 0; | |
| while (iVar0 < Global_1A045.f_4FB4.f_91) | |
| { | |
| if (GAMEPLAY::ARE_STRINGS_EQUAL(&(Global_1A045.f_4FB4[iVar0 /*16*/]), sParam0)) | |
| { | |
| return; | |
| } | |
| iVar0++; | |
| } | |
| if (Global_1A045.f_4FB4.f_91 < 9) | |
| { | |
| StringCopy(&(Global_1A045.f_4FB4[Global_1A045.f_4FB4.f_91 /*16*/]), sParam0, 16); | |
| StringCopy(&(Global_1A045.f_4FB4[Global_1A045.f_4FB4.f_91 /*16*/].f_4), sParam1, 16); | |
| Global_1A045.f_4FB4[Global_1A045.f_4FB4.f_91 /*16*/].f_8 = (GAMEPLAY::GET_GAME_TIMER() + iParam3); | |
| Global_1A045.f_4FB4[Global_1A045.f_4FB4.f_91 /*16*/].f_9 = iParam5; | |
| Global_1A045.f_4FB4[Global_1A045.f_4FB4.f_91 /*16*/].f_B = iParam6; | |
| Global_1A045.f_4FB4[Global_1A045.f_4FB4.f_91 /*16*/].f_C = uParam2; | |
| Global_1A045.f_4FB4[Global_1A045.f_4FB4.f_91 /*16*/].f_D = iParam7; | |
| Global_1A045.f_4FB4[Global_1A045.f_4FB4.f_91 /*16*/].f_E = iParam8; | |
| Global_1A045.f_4FB4[Global_1A045.f_4FB4.f_91 /*16*/].f_F = uParam9; | |
| if (iParam4 != -1) | |
| { | |
| Global_1A045.f_4FB4[Global_1A045.f_4FB4.f_91 /*16*/].f_A = ((GAMEPLAY::GET_GAME_TIMER() + iParam3) + iParam4); | |
| } | |
| else | |
| { | |
| Global_1A045.f_4FB4[Global_1A045.f_4FB4.f_91 /*16*/].f_A = -1; | |
| } | |
| Global_1A045.f_4FB4.f_91++; | |
| func_39(); | |
| } | |
| } | |
| int func_46(char *sParam0) | |
| { | |
| if (GAMEPLAY::ARE_STRINGS_EQUAL(sParam0, &Global_19AF8)) | |
| { | |
| return 1; | |
| } | |
| if (func_42(sParam0)) | |
| { | |
| return 0; | |
| } | |
| return 2; | |
| } | |
| int func_47(int iParam0) | |
| { | |
| if (iParam0 == 94 || iParam0 == -1) | |
| { | |
| return 0; | |
| } | |
| return Global_1A045.f_2377.f_14A[iParam0 /*6*/]; | |
| } | |
| int func_48(int iParam0) | |
| { | |
| int iVar0; | |
| int iVar1; | |
| iVar0 = iParam0; | |
| iVar1 = 0; | |
| while (iVar0 > 31) | |
| { | |
| iVar0 = (iVar0 - 32); | |
| iVar1++; | |
| } | |
| if (iVar1 < 3) | |
| { | |
| return GAMEPLAY::IS_BIT_SET(Global_1A045.f_4FB4.f_96[iVar1], iVar0); | |
| } | |
| return 0; | |
| } | |
| void func_49(int iParam0, var uParam1) | |
| { | |
| char *sVar0; | |
| get_message_gxt_entry(*uParam1, &sVar0); | |
| switch (func_62(&sVar0)) | |
| { | |
| case 0: | |
| Global_1A045.f_1E02.f_394 = 0; | |
| func_50(iParam0, uParam1); | |
| break; | |
| case 3: | |
| Global_1A045.f_1E02.f_394 = 1; | |
| Global_1A045.f_1E02.f_395 = 1; | |
| func_50(iParam0, uParam1); | |
| break; | |
| case 4: | |
| Global_1A045.f_1E02.f_394 = 1; | |
| Global_1A045.f_1E02.f_395 = 0; | |
| break; | |
| } | |
| } | |
| void func_50(var uParam0, var uParam1) | |
| { | |
| func_53(uParam1); | |
| Global_1A045.f_1E02.f_393 = *uParam1; | |
| Global_9070_nextNotificationTime = *uParam0 + 20000; | |
| Global_9071[uParam1->f_6] = *uParam0 + 20000; | |
| func_51(*uParam1); | |
| } | |
| void func_51(int iParam0) | |
| { | |
| int iVar0; | |
| int iVar1; | |
| struct<14> Var2; | |
| iVar0 = func_52(iParam0); | |
| if (iVar0 == -1) | |
| { | |
| return; | |
| } | |
| iVar1 = iVar0; | |
| while (iVar1 <= (Global_1A045.f_1E02.f_38E - 2)) | |
| { | |
| Global_1A045.f_1E02.f_363[iVar1 /*14*/] = {Global_1A045.f_1E02.f_363[iVar1 + 1 /*14*/]}; | |
| iVar1++; | |
| } | |
| Global_1A045.f_1E02.f_363[(Global_1A045.f_1E02.f_38E - 1) /*14*/] = {Var2}; | |
| Global_1A045.f_1E02.f_38E = (Global_1A045.f_1E02.f_38E - 1); | |
| func_8(0); | |
| func_8(1); | |
| func_8(2); | |
| } | |
| int func_52(int iParam0) | |
| { | |
| int iVar0; | |
| iVar0 = 0; | |
| while (iVar0 < Global_1A045.f_1E02.f_38E) | |
| { | |
| if (Global_1A045.f_1E02.f_363[iVar0 /*14*/] == iParam0) | |
| { | |
| return iVar0; | |
| } | |
| iVar0++; | |
| } | |
| return -1; | |
| } | |
| void func_53(var uParam0) | |
| { | |
| int iVar0; | |
| if (uParam0->f_8 == 235) | |
| { | |
| return; | |
| } | |
| if (GAMEPLAY::IS_BIT_SET(uParam0->f_1, 5)) | |
| { | |
| iVar0 = 0; | |
| while (iVar0 < 3) | |
| { | |
| if (GAMEPLAY::IS_BIT_SET(uParam0->f_2, iVar0)) | |
| { | |
| func_55(uParam0->f_6, iVar0, 0); | |
| } | |
| iVar0++; | |
| } | |
| } | |
| if (uParam0->f_8 != 0) | |
| { | |
| func_54(uParam0->f_8, 0); | |
| return; | |
| } | |
| } | |
| void func_54(int iParam0, int iParam1) | |
| { | |
| if (iParam0 == 235 || iParam0 == 0) | |
| { | |
| return; | |
| } | |
| Global_1A045.f_219F[iParam0] = 1; | |
| Global_1A045.f_219F.f_EC[iParam0] = (GAMEPLAY::GET_GAME_TIMER() + iParam1); | |
| } | |
| void func_55(int iParam0, int iParam1, bool bParam2) | |
| { | |
| Global_C25 = iParam0; | |
| if (Global_75[iParam0 /*10*/].f_8 != 147) | |
| { | |
| func_57(); | |
| if (iParam1 == 4) | |
| { | |
| Global_1A045.f_6D8C[iParam0 /*29*/].f_C[0] = 1; | |
| Global_1A045.f_6D8C[iParam0 /*29*/].f_C[1] = 1; | |
| Global_1A045.f_6D8C[iParam0 /*29*/].f_C[2] = 1; | |
| Global_1A045.f_6D8C[iParam0 /*29*/].f_18[0] = 1; | |
| Global_1A045.f_6D8C[iParam0 /*29*/].f_18[1] = 1; | |
| Global_1A045.f_6D8C[iParam0 /*29*/].f_18[2] = 1; | |
| } | |
| else | |
| { | |
| if (Global_1A045.f_6D8C[iParam0 /*29*/].f_C[iParam1] == 1 && Global_1A045.f_6D8C[iParam0 /*29*/].f_18[iParam1] == 1) | |
| { | |
| bParam2 = false; | |
| } | |
| Global_1A045.f_6D8C[iParam0 /*29*/].f_C[iParam1] = 1; | |
| Global_1A045.f_6D8C[iParam0 /*29*/].f_18[iParam1] = 1; | |
| } | |
| if (bParam2) | |
| { | |
| if (!Global_117A6) | |
| { | |
| if (iParam1 != 4) | |
| { | |
| if (Global_38D9 != iParam1) | |
| { | |
| Global_C0A[iParam1 /*4*/] = {Global_1A045.f_6D8C[iParam0 /*29*/].f_3}; | |
| Global_C1B[iParam1] = 1; | |
| Global_C20[iParam1] = iParam0; | |
| } | |
| else if (iParam0 == Global_38D9) | |
| { | |
| } | |
| else | |
| { | |
| Global_BD9[1 /*6*/] = {Global_1A045.f_6D8C[iParam0 /*29*/].f_3}; | |
| Global_BD9[1 /*6*/].f_5 = iParam1; | |
| new_contact_alert(); | |
| } | |
| } | |
| else | |
| { | |
| Global_BD9[1 /*6*/] = {Global_1A045.f_6D8C[iParam0 /*29*/].f_3}; | |
| Global_BD9[1 /*6*/].f_5 = iParam1; | |
| new_contact_alert(); | |
| } | |
| } | |
| else | |
| { | |
| Global_BD9[1 /*6*/] = {Global_1A045.f_6D8C[iParam0 /*29*/].f_3}; | |
| Global_BD9[1 /*6*/].f_5 = iParam1; | |
| new_contact_alert(); | |
| } | |
| } | |
| } | |
| } | |
| void new_contact_alert() | |
| { | |
| char cVar0[64]; | |
| char cVar16[64]; | |
| char *sVar32; | |
| StringCopy(&cVar0, UI::_GET_LABEL_TEXT(&(Global_1A045.f_6D8C[Global_C25 /*29*/].f_7)), 64); | |
| if (Global_C38 == 0) | |
| { | |
| UI::_SET_NOTIFICATION_TEXT_ENTRY(""); | |
| StringCopy(&cVar16, UI::_GET_LABEL_TEXT(&(Global_BD9[1 /*6*/])), 64); | |
| sVar32 = UI::_GET_LABEL_TEXT("CELL_253"); | |
| UI::_SET_NOTIFICATION_MESSAGE(&cVar0, &cVar0, 0, 3, sVar32, &cVar16); | |
| } | |
| else | |
| { | |
| UI::_SET_NOTIFICATION_TEXT_ENTRY("CELL_255"); | |
| UI::ADD_TEXT_COMPONENT_SUBSTRING_TEXT_LABEL(&(Global_BD9[1 /*6*/])); | |
| UI::_SET_NOTIFICATION_MESSAGE(&cVar0, &cVar0, 0, 3, "", 0); | |
| } | |
| GAMEPLAY::CLEAR_BIT(&Global_977, 0); | |
| } | |
| void func_57() | |
| { | |
| if (func_275(14)) | |
| { | |
| if (!ENTITY::IS_ENTITY_DEAD(PLAYER::PLAYER_PED_ID(), 0)) | |
| { | |
| if (ENTITY::GET_ENTITY_MODEL(PLAYER::PLAYER_PED_ID()) == Global_1A045.f_6D8C[0 /*29*/]) | |
| { | |
| Global_38D9 = 0; | |
| } | |
| else if (ENTITY::GET_ENTITY_MODEL(PLAYER::PLAYER_PED_ID()) == Global_1A045.f_6D8C[1 /*29*/]) | |
| { | |
| Global_38D9 = 1; | |
| } | |
| else if (ENTITY::GET_ENTITY_MODEL(PLAYER::PLAYER_PED_ID()) == Global_1A045.f_6D8C[2 /*29*/]) | |
| { | |
| Global_38D9 = 2; | |
| } | |
| else | |
| { | |
| Global_38D9 = 0; | |
| } | |
| } | |
| } | |
| else | |
| { | |
| Global_38D9 = get_active_char_index(); | |
| if (Global_38D9 == 145) | |
| { | |
| Global_38D9 = 3; | |
| } | |
| if (Global_117A6) | |
| { | |
| Global_38D9 = 3; | |
| } | |
| if (Global_38D9 > 3) | |
| { | |
| Global_38D9 = 3; | |
| } | |
| } | |
| } | |
| int get_active_char_index() | |
| { | |
| update_global_char_index(); | |
| return Global_1A045.f_935.f_21B.f_10E1; | |
| } | |
| void update_global_char_index() | |
| { | |
| int iVar0; | |
| if (ENTITY::DOES_ENTITY_EXIST(PLAYER::PLAYER_PED_ID())) | |
| { | |
| if (get_ped_of_char_index(Global_1A045.f_935.f_21B.f_10E1) != ENTITY::GET_ENTITY_MODEL(PLAYER::PLAYER_PED_ID())) | |
| { | |
| iVar0 = func_60(PLAYER::PLAYER_PED_ID()); | |
| if (is_valid_char_index(iVar0) && (!func_275(14) || Global_19C2C)) | |
| { | |
| if (Global_1A045.f_935.f_21B.f_10E1 != iVar0 && is_valid_char_index(Global_1A045.f_935.f_21B.f_10E1)) | |
| { | |
| Global_1A045.f_935.f_21B.f_10E2 = Global_1A045.f_935.f_21B.f_10E1; | |
| } | |
| Global_1A045.f_935.f_21B.f_10E3 = iVar0; | |
| Global_1A045.f_935.f_21B.f_10E1 = iVar0; | |
| return; | |
| } | |
| } | |
| else | |
| { | |
| if (Global_1A045.f_935.f_21B.f_10E1 != 145) | |
| { | |
| Global_1A045.f_935.f_21B.f_10E3 = Global_1A045.f_935.f_21B.f_10E1; | |
| } | |
| return; | |
| } | |
| } | |
| Global_1A045.f_935.f_21B.f_10E1 = 145; | |
| } | |
| int func_60(int iParam0) | |
| { | |
| int iVar0; | |
| int iVar1; | |
| if (ENTITY::DOES_ENTITY_EXIST(iParam0)) | |
| { | |
| iVar1 = ENTITY::GET_ENTITY_MODEL(iParam0); | |
| iVar0 = 0; | |
| while (iVar0 <= 2) | |
| { | |
| if (get_ped_of_char_index(iVar0) == iVar1) | |
| { | |
| return iVar0; | |
| } | |
| iVar0++; | |
| } | |
| } | |
| return 145; | |
| } | |
| int get_ped_of_char_index(int iParam0) | |
| { | |
| if (is_valid_char_index(iParam0)) | |
| { | |
| return Global_1A045.f_6D8C[iParam0 /*29*/]; | |
| } | |
| else if (iParam0 != 145) | |
| { | |
| } | |
| return 0; | |
| } | |
| int func_62(char *sParam0) | |
| { | |
| int iVar0; | |
| int iVar1; | |
| iVar0 = 0; | |
| iVar1 = 0; | |
| while (iVar0 < 35) | |
| { | |
| if (!GAMEPLAY::IS_STRING_NULL(&(Global_1A045.f_3737[iVar0 /*104*/]))) | |
| { | |
| if (GAMEPLAY::ARE_STRINGS_EQUAL(&(Global_1A045.f_3737[iVar0 /*104*/]), sParam0)) | |
| { | |
| iVar1 = Global_1A045.f_3737[iVar0 /*104*/].f_1D; | |
| return iVar1; | |
| } | |
| } | |
| iVar0++; | |
| } | |
| return iVar1; | |
| } | |
| void get_message_gxt_entry(int iParam0, char *sParam1) | |
| { | |
| if (func_64(iParam0) == 2) | |
| { | |
| switch (iParam0) | |
| { | |
| case 1834414893: | |
| StringCopy(sParam1, "AH_1_U", 16); | |
| break; | |
| case 2114893093: | |
| StringCopy(sParam1, "AH_2_U", 16); | |
| break; | |
| case 230961098: | |
| StringCopy(sParam1, "AH_P_U", 16); | |
| break; | |
| case 639116137: | |
| StringCopy(sParam1, "AH_GETA_R", 16); | |
| break; | |
| case 1943637475: | |
| StringCopy(sParam1, "AH3B_UNLK", 16); | |
| break; | |
| case 1635608802: | |
| StringCopy(sParam1, "ASS1_MIS", 16); | |
| break; | |
| case -799417230: | |
| StringCopy(sParam1, "ASS_FINA", 16); | |
| break; | |
| case -2135245515: | |
| StringCopy(sParam1, "ASS_FINB", 16); | |
| break; | |
| case -1982006572: | |
| StringCopy(sParam1, "ARM2_END", 16); | |
| break; | |
| case 866793964: | |
| StringCopy(sParam1, "ARM3_END2", 16); | |
| break; | |
| case 410510653: | |
| StringCopy(sParam1, "ARM3_END1", 16); | |
| break; | |
| case 341684477: | |
| StringCopy(sParam1, "CAR1_ALL", 16); | |
| break; | |
| case 1328556918: | |
| StringCopy(sParam1, "CAR2_DONE", 16); | |
| break; | |
| case 1023767: | |
| StringCopy(sParam1, "CAR3_F_REM", 16); | |
| break; | |
| case 190444893: | |
| StringCopy(sParam1, "CAR3_MT_REM", 16); | |
| break; | |
| case 1761525528: | |
| StringCopy(sParam1, "MIC2_MIS", 16); | |
| break; | |
| case 1674644829: | |
| StringCopy(sParam1, "CHOP_UNLOCK", 16); | |
| break; | |
| case 152157591: | |
| StringCopy(sParam1, "CITY_RON", 16); | |
| break; | |
| case 736324744: | |
| StringCopy(sParam1, "CHEF_U", 16); | |
| break; | |
| case 839361606: | |
| StringCopy(sParam1, "DOCKS1_F_SHT", 16); | |
| break; | |
| case 411396589: | |
| StringCopy(sParam1, "DCKP1_U", 16); | |
| break; | |
| case -631719301: | |
| StringCopy(sParam1, "DCKP2B_U", 16); | |
| break; | |
| case -549935988: | |
| StringCopy(sParam1, "DCKP2B_R", 16); | |
| break; | |
| case 1759805585: | |
| StringCopy(sParam1, "DOCKS1_M_FLY", 16); | |
| break; | |
| case 1269300253: | |
| StringCopy(sParam1, "DCK2_U", 16); | |
| break; | |
| case 610159002: | |
| StringCopy(sParam1, "EXIL2_U", 16); | |
| break; | |
| case -1281173598: | |
| StringCopy(sParam1, "EXIL2_OSC", 16); | |
| break; | |
| case -1293573249: | |
| StringCopy(sParam1, "RBH_PAT", 16); | |
| break; | |
| case 1328243545: | |
| StringCopy(sParam1, "EXIL_WAD", 16); | |
| break; | |
| case 1400447159: | |
| StringCopy(sParam1, "EXL_HUNT_PIE", 16); | |
| break; | |
| case 981904836: | |
| StringCopy(sParam1, "EXL_JIM_MCAR", 16); | |
| break; | |
| case -1428654185: | |
| StringCopy(sParam1, "FAM1_END", 16); | |
| break; | |
| case -1608680660: | |
| StringCopy(sParam1, "FAM3_INIT", 16); | |
| break; | |
| case 25048086: | |
| StringCopy(sParam1, "FAM5_END", 16); | |
| break; | |
| case 6861963: | |
| StringCopy(sParam1, "FBI4I_U", 16); | |
| break; | |
| case -655205392: | |
| StringCopy(sParam1, "FB4_RM_M", 16); | |
| break; | |
| case 1266526796: | |
| StringCopy(sParam1, "FB4_RM_FT", 16); | |
| break; | |
| case -1652588035: | |
| StringCopy(sParam1, "FBI4_UM", 16); | |
| break; | |
| case -125167689: | |
| StringCopy(sParam1, "FBI4_UFT", 16); | |
| break; | |
| case 1323596299: | |
| StringCopy(sParam1, "FBI4_ASS", 16); | |
| break; | |
| case -1205448796: | |
| StringCopy(sParam1, "FBI4_MTASS", 16); | |
| break; | |
| case -1942568571: | |
| StringCopy(sParam1, "FIH_PA_U", 16); | |
| break; | |
| case -408163515: | |
| StringCopy(sParam1, "FIH_PB_U", 16); | |
| break; | |
| case 2073240496: | |
| StringCopy(sParam1, "FIH_PD_U", 16); | |
| break; | |
| case -1216150262: | |
| StringCopy(sParam1, "FIH_GETA_R", 16); | |
| break; | |
| case 704657460: | |
| StringCopy(sParam1, "FIH_KILLM", 16); | |
| break; | |
| case -1198893762: | |
| StringCopy(sParam1, "FIH_KILLT", 16); | |
| break; | |
| case 497850717: | |
| StringCopy(sParam1, "FORSALE_TXT", 16); | |
| break; | |
| case -1501908698: | |
| StringCopy(sParam1, "FRAN0_END", 16); | |
| break; | |
| case 943848816: | |
| StringCopy(sParam1, "FRA1_END", 16); | |
| break; | |
| case 689367973: | |
| StringCopy(sParam1, "JP1A_U", 16); | |
| break; | |
| case -666454256: | |
| StringCopy(sParam1, "JH1A_FRNK", 16); | |
| break; | |
| case -270587643: | |
| StringCopy(sParam1, "JP2A_U", 16); | |
| break; | |
| case -1641645609: | |
| StringCopy(sParam1, "JP1B_U", 16); | |
| break; | |
| case 1471029448: | |
| StringCopy(sParam1, "JP1B_HOST", 16); | |
| break; | |
| case -1879623490: | |
| StringCopy(sParam1, "JH2_P", 16); | |
| break; | |
| case -1816533207: | |
| StringCopy(sParam1, "JOSH1_TXT", 16); | |
| break; | |
| case -474700046: | |
| StringCopy(sParam1, "MAR1_U", 16); | |
| break; | |
| case -1577577773: | |
| StringCopy(sParam1, "MAR_CASH1", 16); | |
| break; | |
| case -1235391473: | |
| StringCopy(sParam1, "MAR_CASH2", 16); | |
| break; | |
| case 251204761: | |
| StringCopy(sParam1, "MAR_TREV", 16); | |
| break; | |
| case -1207693656: | |
| StringCopy(sParam1, "ME_A_FAIL", 16); | |
| break; | |
| case 809731919: | |
| StringCopy(sParam1, "ME_A_FAIL2", 16); | |
| break; | |
| case -149728591: | |
| StringCopy(sParam1, "ME_J_FAIL", 16); | |
| break; | |
| case 1245740196: | |
| StringCopy(sParam1, "ME_T_FAIL", 16); | |
| break; | |
| case -1589024007: | |
| StringCopy(sParam1, "MIC4_M", 16); | |
| break; | |
| case -658009473: | |
| StringCopy(sParam1, "MIC4_F", 16); | |
| break; | |
| case 772720529: | |
| StringCopy(sParam1, "PLTSC_U", 16); | |
| break; | |
| case 902928934: | |
| StringCopy(sParam1, "RBH_U", 16); | |
| break; | |
| case -831144864: | |
| StringCopy(sParam1, "RBH_P_U", 16); | |
| break; | |
| case 486824538: | |
| StringCopy(sParam1, "SHOOT_U", 16); | |
| break; | |
| case -384575792: | |
| StringCopy(sParam1, "SXT_", 16); | |
| break; | |
| case -1924990311: | |
| StringCopy(sParam1, "FTX_", 16); | |
| break; | |
| case 2091854273: | |
| StringCopy(sParam1, "FTX_", 16); | |
| break; | |
| case 328868333: | |
| StringCopy(sParam1, "FTX_", 16); | |
| break; | |
| case -1813399915: | |
| StringCopy(sParam1, "FTX_", 16); | |
| break; | |
| case 465306446: | |
| StringCopy(sParam1, "FTX_", 16); | |
| break; | |
| case -816460512: | |
| StringCopy(sParam1, "FTX_", 16); | |
| break; | |
| case -702667427: | |
| StringCopy(sParam1, "FTX_", 16); | |
| break; | |
| case 271682265: | |
| StringCopy(sParam1, "PRM", 16); | |
| break; | |
| case 1694883968: | |
| StringCopy(sParam1, "BSTXT_", 16); | |
| break; | |
| case -181320640: | |
| StringCopy(sParam1, "FGTXT_M", 16); | |
| break; | |
| case 1418815087: | |
| StringCopy(sParam1, "FGTXT_F", 16); | |
| break; | |
| case 2087297077: | |
| StringCopy(sParam1, "FGTXT_T", 16); | |
| break; | |
| case -1789721694: | |
| StringCopy(sParam1, "FGTXT_H", 16); | |
| break; | |
| case 483349085: | |
| StringCopy(sParam1, "BARR3_U", 16); | |
| break; | |
| case 1800466587: | |
| StringCopy(sParam1, "BARR4_U", 16); | |
| break; | |
| case 2106164812: | |
| StringCopy(sParam1, "EPSI6_U", 16); | |
| break; | |
| case -1783809705: | |
| StringCopy(sParam1, "EXTR2_U", 16); | |
| break; | |
| case -1159983966: | |
| StringCopy(sParam1, "EXTR3_U", 16); | |
| break; | |
| case -1134717682: | |
| StringCopy(sParam1, "HUNT1_U", 16); | |
| break; | |
| case -1444331296: | |
| StringCopy(sParam1, "PAP3_U", 16); | |
| break; | |
| case 969002696: | |
| StringCopy(sParam1, "TON3_U", 16); | |
| break; | |
| case 1794975438: | |
| StringCopy(sParam1, "TON4_U", 16); | |
| break; | |
| case 1988415324: | |
| StringCopy(sParam1, "RE_BUR_MIS", 16); | |
| break; | |
| case 1234461962: | |
| StringCopy(sParam1, "SOL2_PASS", 16); | |
| break; | |
| case 1516526930: | |
| StringCopy(sParam1, "DRF3_U", 16); | |
| break; | |
| case -685399607: | |
| StringCopy(sParam1, "DRF4_U", 16); | |
| break; | |
| case -527573502: | |
| StringCopy(sParam1, "SR_AIRPORT", 16); | |
| break; | |
| case 277048894: | |
| StringCopy(sParam1, "SR_FREEWAY", 16); | |
| break; | |
| case 477030223: | |
| StringCopy(sParam1, "SR_CANALS", 16); | |
| break; | |
| case -1900821691: | |
| StringCopy(sParam1, "MGTNS_U", 16); | |
| break; | |
| case -1845612607: | |
| StringCopy(sParam1, "MGTNS_U2", 16); | |
| break; | |
| case -815326385: | |
| StringCopy(sParam1, "T_LOST_HANGER", 16); | |
| break; | |
| case 367701416: | |
| StringCopy(sParam1, "OMEGA_TXT1", 16); | |
| break; | |
| case 65881433: | |
| StringCopy(sParam1, "BLAZER3_U", 16); | |
| break; | |
| case 1256519626: | |
| StringCopy(sParam1, "ABI1_MISS", 16); | |
| break; | |
| case 1324777792: | |
| StringCopy(sParam1, "HAO1_ENDT", 16); | |
| break; | |
| case 552744224: | |
| StringCopy(sParam1, "PHT_WLD_BEV1", 16); | |
| break; | |
| case 1751306471: | |
| StringCopy(sParam1, "MNKY_CAR_UNLK", 16); | |
| break; | |
| case -899711929: | |
| StringCopy(sParam1, "MNKY_LAMAR", 16); | |
| break; | |
| case 1139718847: | |
| StringCopy(sParam1, "CRACE_UNLK", 16); | |
| break; | |
| default: | |
| break; | |
| } | |
| } | |
| else | |
| { | |
| return; | |
| } | |
| } | |
| int func_64(int iParam0) | |
| { | |
| switch (iParam0) | |
| { | |
| case -1323332922: | |
| case -651018670: | |
| case -236506853: | |
| case -518176220: | |
| case -1889998615: | |
| case 777679877: | |
| case -1547927413: | |
| case 1770589463: | |
| case -1358914512: | |
| case 1611093726: | |
| case 742578279: | |
| case -1753640864: | |
| case 24012281: | |
| case 343235192: | |
| case 687625470: | |
| case -1134988206: | |
| case -1155501333: | |
| case -951496: | |
| case -1108940541: | |
| case 1372476011: | |
| case -452599906: | |
| case 944724110: | |
| case -749738207: | |
| case -1478217267: | |
| case -1451910289: | |
| case -1151582404: | |
| case 1645231: | |
| case -769656371: | |
| case -694220424: | |
| case -885867010: | |
| case -632277372: | |
| case -1763624884: | |
| case 1995383583: | |
| case -881570909: | |
| case -444489072: | |
| case 154402960: | |
| case 795730787: | |
| case -1847734803: | |
| case -714760066: | |
| case -1198055521: | |
| case 1374342572: | |
| case 530956160: | |
| case 240475766: | |
| case 580731697: | |
| case 728176806: | |
| case 910240872: | |
| case 74540475: | |
| case -1200353264: | |
| case 801340541: | |
| case 1527885205: | |
| case -224691627: | |
| case -2014002000: | |
| case -314546970: | |
| case -1306479777: | |
| case -621899663: | |
| case -1615086084: | |
| case -1989308064: | |
| case -1970925435: | |
| case -1060930305: | |
| case -1817481777: | |
| case 1080702705: | |
| case -2099041387: | |
| case -1468151569: | |
| case -121056641: | |
| case -579786137: | |
| case -1398697867: | |
| case 466185907: | |
| case 185453884: | |
| case 1972824823: | |
| case -288258721: | |
| case -47439340: | |
| case -553769964: | |
| case -1434443191: | |
| case -2032593637: | |
| case -458789713: | |
| case 321648831: | |
| case 312697495: | |
| case -1980743701: | |
| case 1567521709: | |
| case -1687842043: | |
| case -1631047976: | |
| case 962970051: | |
| case -1323797481: | |
| case 2095586439: | |
| case 1608868018: | |
| case 1134611425: | |
| case 187813079: | |
| case -39544602: | |
| case -997367701: | |
| case -128912482: | |
| case -131238069: | |
| case -330732224: | |
| case -1334144471: | |
| case -211946295: | |
| case 1679209251: | |
| case -1394105734: | |
| case 94848458: | |
| case -1106471007: | |
| case -268883259: | |
| case 546458037: | |
| case -78001721: | |
| case 327673956: | |
| case -1746082591: | |
| case -1945164276: | |
| case -1052097629: | |
| case 1595158098: | |
| case -420969532: | |
| case -2068958976: | |
| case -1366489923: | |
| case 406771743: | |
| case -837794877: | |
| case -441095892: | |
| case 153235461: | |
| case -67922520: | |
| case 707131591: | |
| case 2033185762: | |
| case 1801771084: | |
| case -1716308760: | |
| case -2116452823: | |
| case -1141220854: | |
| case 1880611494: | |
| case -1276059507: | |
| case -1434698871: | |
| case 1632742627: | |
| case -1074970768: | |
| case 643619115: | |
| case 720676600: | |
| case 1303349750: | |
| case -1343914045: | |
| case -1199050901: | |
| case 1082655975: | |
| case -2100435596: | |
| case -974942855: | |
| case -577064562: | |
| case 2025906743: | |
| case -1404384954: | |
| case -112860461: | |
| case 339632201: | |
| case 453095043: | |
| case 2111803439: | |
| case 1290939985: | |
| case -1690219790: | |
| case 1766909710: | |
| case -358013836: | |
| case -589035286: | |
| case -1842374536: | |
| case -418954710: | |
| case -1783816333: | |
| case 1438498239: | |
| case -2139605007: | |
| case 1906711117: | |
| case -1949184344: | |
| case 2065444157: | |
| case 624853379: | |
| case -1766792090: | |
| case -1878340166: | |
| case 279793409: | |
| case 460547213: | |
| case -330856906: | |
| case -690594988: | |
| case -349863294: | |
| case 424926942: | |
| case 1890717037: | |
| case -1636767510: | |
| case -1893250473: | |
| case -1160994395: | |
| case 963157723: | |
| case 1730771548: | |
| case 1410028576: | |
| case -2082393141: | |
| case -1497396589: | |
| case -1196085634: | |
| case 170512742: | |
| case 469005563: | |
| case -306898819: | |
| case 82970585: | |
| case 1867406480: | |
| case 1502097668: | |
| case -1621970384: | |
| case 1031237239: | |
| case 194808514: | |
| case 1509435260: | |
| case 673727449: | |
| case 71040001: | |
| case -755689100: | |
| case 556840426: | |
| case -177054098: | |
| return 0; | |
| break; | |
| default: | |
| switch (iParam0) | |
| { | |
| case -835252192: | |
| case 616513703: | |
| case 2064117051: | |
| case -1758542647: | |
| case 1089542219: | |
| case 675079903: | |
| case -1613846760: | |
| case 518202687: | |
| case 946886745: | |
| case 1229388294: | |
| case 522335044: | |
| case 2097475336: | |
| case -108894207: | |
| case -950205513: | |
| case -703684326: | |
| case -1982920067: | |
| case 1319343143: | |
| case -1118768768: | |
| case -705125709: | |
| case -782984853: | |
| case -92968020: | |
| case -406305198: | |
| case -1130010274: | |
| case 684213521: | |
| case 1388615949: | |
| case -2062910056: | |
| case -643694497: | |
| case -278713375: | |
| case -1105442476: | |
| case -805704433: | |
| case -1565848713: | |
| case -1351801605: | |
| case 1311040108: | |
| case 1562602199: | |
| case 1113666899: | |
| case 814649774: | |
| case 225734768: | |
| case 1628462442: | |
| case 1791324372: | |
| case -240877892: | |
| case -1141042322: | |
| case 1806999335: | |
| case 2054503592: | |
| case -2009081795: | |
| case 520422857: | |
| case -375893868: | |
| case 313472619: | |
| case 2038672434: | |
| case 1666308520: | |
| case 1894462438: | |
| case 1728635625: | |
| case 975196153: | |
| case -710274964: | |
| case 1289879258: | |
| case 1621076324: | |
| case 1005256598: | |
| case 1127548000: | |
| case -1291788156: | |
| case 1993031175: | |
| return 0; | |
| break; | |
| case 1635046052: | |
| case -464957327: | |
| case 178720519: | |
| case 738411510: | |
| case -100973682: | |
| case 1752783247: | |
| case 1016954269: | |
| case -456311088: | |
| case 2129099422: | |
| case 1357642229: | |
| case -767033321: | |
| case -1240893790: | |
| return 1; | |
| break; | |
| case 1834414893: | |
| case 2114893093: | |
| case 230961098: | |
| case 639116137: | |
| case 1943637475: | |
| case 1635608802: | |
| case -799417230: | |
| case -2135245515: | |
| case -1982006572: | |
| case 866793964: | |
| case 410510653: | |
| case 341684477: | |
| case 1328556918: | |
| case 1023767: | |
| case 190444893: | |
| case 1761525528: | |
| case 1674644829: | |
| case 152157591: | |
| case 736324744: | |
| case 839361606: | |
| case 411396589: | |
| case -631719301: | |
| case -549935988: | |
| case 1759805585: | |
| case 1269300253: | |
| case 610159002: | |
| case -1281173598: | |
| case 1328243545: | |
| case 1400447159: | |
| case -1293573249: | |
| case 981904836: | |
| case -1428654185: | |
| case -1608680660: | |
| case 25048086: | |
| case 6861963: | |
| case -655205392: | |
| case 1266526796: | |
| case -1652588035: | |
| case -125167689: | |
| case 1323596299: | |
| case -1205448796: | |
| case -1942568571: | |
| case -408163515: | |
| case 2073240496: | |
| case -1216150262: | |
| case 704657460: | |
| case -1198893762: | |
| case 497850717: | |
| case -1501908698: | |
| case 943848816: | |
| case 689367973: | |
| case -666454256: | |
| case -270587643: | |
| case -1641645609: | |
| case 1471029448: | |
| case -1879623490: | |
| case -1816533207: | |
| case -474700046: | |
| case -1207693656: | |
| case 809731919: | |
| case -149728591: | |
| case 1245740196: | |
| case -1589024007: | |
| case -658009473: | |
| case 772720529: | |
| case 483349085: | |
| case 1800466587: | |
| case 2106164812: | |
| case -1783809705: | |
| case -1159983966: | |
| case -1134717682: | |
| case -1444331296: | |
| case 969002696: | |
| case 1794975438: | |
| case 1988415324: | |
| case 902928934: | |
| case -831144864: | |
| case 1234461962: | |
| case 486824538: | |
| case 1516526930: | |
| case -685399607: | |
| case -527573502: | |
| case 277048894: | |
| case 477030223: | |
| case -1900821691: | |
| case -1845612607: | |
| case -815326385: | |
| case 367701416: | |
| case -384575792: | |
| case -1924990311: | |
| case 2091854273: | |
| case 328868333: | |
| case -1813399915: | |
| case 465306446: | |
| case -816460512: | |
| case -702667427: | |
| case 271682265: | |
| case 1694883968: | |
| case -181320640: | |
| case 1418815087: | |
| case 2087297077: | |
| case -1789721694: | |
| case -1577577773: | |
| case -1235391473: | |
| case 251204761: | |
| case 65881433: | |
| case 1256519626: | |
| case 1324777792: | |
| case 552744224: | |
| case 1751306471: | |
| case -899711929: | |
| case 1139718847: | |
| return 2; | |
| break; | |
| default: | |
| switch (iParam0) | |
| { | |
| case 2021846885: | |
| case 801347631: | |
| case 2107010167: | |
| case 1440910066: | |
| case 2063740346: | |
| case 957098437: | |
| case 338918687: | |
| case 1818503402: | |
| case 1511064644: | |
| case 1217225025: | |
| case -929373866: | |
| case -1252410668: | |
| case -1548445814: | |
| case -1853951201: | |
| case -709067855: | |
| case -1023257027: | |
| case 692693384: | |
| case 1209844154: | |
| case -1144971313: | |
| case 801546988: | |
| case 319357731: | |
| case -423103492: | |
| case -1504002834: | |
| case 1343538152: | |
| case 1357988739: | |
| case 374347954: | |
| case -1718545517: | |
| case 2022687760: | |
| case -1069372983: | |
| case -789275824: | |
| case 183426861: | |
| case -1303362934: | |
| case 632406285: | |
| case 859937019: | |
| case 430981897: | |
| case -771149390: | |
| case -1649944291: | |
| case -1821325152: | |
| case -132533604: | |
| case 711875844: | |
| case -1523625340: | |
| case -2135625223: | |
| case -2076002026: | |
| case -1897604564: | |
| case -1430864197: | |
| case 1424059178: | |
| case -666761274: | |
| case -2038240170: | |
| case -1551606815: | |
| case -980148216: | |
| case -1857996981: | |
| case -1674789340: | |
| case 448778385: | |
| case 546388833: | |
| case 1051395607: | |
| case -505415049: | |
| case 430538716: | |
| case 1428562614: | |
| case -748636148: | |
| case 353549167: | |
| case 1400649789: | |
| case 135464153: | |
| case -536513155: | |
| case 967465509: | |
| case -2132612619: | |
| case -1419493641: | |
| case -521917970: | |
| case -1521020490: | |
| case 1894922981: | |
| case 233370836: | |
| case 984305268: | |
| case -833431660: | |
| case 372434771: | |
| case -92983336: | |
| case 1638023784: | |
| case 2121956376: | |
| case -452245192: | |
| case 763248121: | |
| case -720564968: | |
| case -1067764575: | |
| case -921778680: | |
| case -606278748: | |
| case -414580094: | |
| case -1871231456: | |
| case 1127068257: | |
| case 359978756: | |
| case -1406368651: | |
| case -1093228087: | |
| case 143441204: | |
| case -615685450: | |
| case 1963267619: | |
| return 3; | |
| break; | |
| } | |
| break; | |
| } | |
| break; | |
| } | |
| return -1; | |
| } | |
| void func_65(int iParam0) | |
| { | |
| int iVar0; | |
| if (GAMEPLAY::IS_BIT_SET(Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/].f_1, 3)) | |
| { | |
| iVar0 = Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/].f_7; | |
| if (iVar0 != -1) | |
| { | |
| if (is_near_important_area(PLAYER::PLAYER_PED_ID(), iVar0, (Global_8E4A[iVar0 /*5*/].f_3 * 0.35f))) | |
| { | |
| func_139(&iParam0, 0); | |
| func_123(0); | |
| iLocal_90_notificationState = 0; | |
| Global_9070_nextNotificationTime = iParam0 + 20000; | |
| } | |
| } | |
| } | |
| } | |
| int is_near_important_area(int iParam0, int iParam1, float fParam2) | |
| { | |
| struct<5> Var0; | |
| float fVar5; | |
| if (!ENTITY::IS_ENTITY_DEAD(iParam0, 0)) | |
| { | |
| Var0 = {Global_8E4A[iParam1 /*5*/]}; | |
| fVar5 = Var0.f_3; | |
| if (fParam2 > 0.00f) | |
| { | |
| fVar5 = fParam2; | |
| } | |
| if (GAMEPLAY::GET_DISTANCE_BETWEEN_COORDS(ENTITY::GET_ENTITY_COORDS(iParam0, true), Var0, true) < fVar5) | |
| { | |
| return 1; | |
| } | |
| else if (Var0.f_4 != -1) | |
| { | |
| return is_near_important_area(iParam0, Var0.f_4, fParam2); | |
| } | |
| } | |
| return 0; | |
| } | |
| void func_67() | |
| { | |
| int iVar0; | |
| if (GAMEPLAY::IS_BIT_SET(Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/].f_1, 1)) | |
| { | |
| if (!func_48(26)) | |
| { | |
| if (func_75()) | |
| { | |
| switch (Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/]) | |
| { | |
| case 1635046052: | |
| case -464957327: | |
| case 178720519: | |
| func_74("AM_H_FDEC", -1); | |
| func_43(26); | |
| break; | |
| } | |
| } | |
| } | |
| if (!Global_1A045.f_1E02.f_391) | |
| { | |
| if (func_73() != 0) | |
| { | |
| if (is_this_help_message_being_displayed("AM_H_FDEC")) | |
| { | |
| UI::CLEAR_HELP(0); | |
| } | |
| if (func_73() == 1) | |
| { | |
| Global_1A045.f_1E02.f_392 = 1; | |
| Global_1A045.f_1E02.f_391 = 1; | |
| } | |
| else | |
| { | |
| if (Global_906D != -1) | |
| { | |
| func_72(&Global_906D); | |
| func_70(); | |
| iVar0 = 0; | |
| while (iVar0 < 9) | |
| { | |
| if (Global_1A045.f_46B1.f_AF[iVar0 /*19*/].f_8 == 0) | |
| { | |
| func_68(&(Global_1A045.f_46B1.f_AF[iVar0 /*19*/].f_5), 300.00f); | |
| } | |
| iVar0++; | |
| } | |
| } | |
| Global_1A045.f_1E02.f_392 = 0; | |
| Global_1A045.f_1E02.f_391 = 1; | |
| } | |
| } | |
| } | |
| } | |
| } | |
| void func_68(int iParam0, float fParam1) | |
| { | |
| iParam0->f_1 = (func_69(GAMEPLAY::IS_BIT_SET(*iParam0, 4)) - fParam1); | |
| GAMEPLAY::SET_BIT(iParam0, 1); | |
| GAMEPLAY::CLEAR_BIT(iParam0, 2); | |
| iParam0->f_2 = 0.00f; | |
| } | |
| float func_69(bool bParam0) | |
| { | |
| float fVar0; | |
| float fVar1; | |
| int iVar2; | |
| float fVar3; | |
| float fVar4; | |
| if (bParam0) | |
| { | |
| fVar0 = SYSTEM::TO_FLOAT(GAMEPLAY::GET_GAME_TIMER()); | |
| fVar1 = (fVar0 / 1000.00f); | |
| return fVar1; | |
| } | |
| if (NETWORK::NETWORK_IS_GAME_IN_PROGRESS()) | |
| { | |
| iVar2 = NETWORK::GET_NETWORK_TIME(); | |
| fVar3 = SYSTEM::TO_FLOAT(iVar2); | |
| fVar4 = (fVar3 / 1000.00f); | |
| return fVar4; | |
| } | |
| return (SYSTEM::TO_FLOAT(GAMEPLAY::GET_GAME_TIMER()) / 1000.00f); | |
| } | |
| void func_70() | |
| { | |
| int iVar0; | |
| iVar0 = 0; | |
| while (iVar0 < 8) | |
| { | |
| if (Global_16215[iVar0 /*17*/] && !Global_16215[iVar0 /*17*/].f_1) | |
| { | |
| if (Global_16215[iVar0 /*17*/].f_3 == 0) | |
| { | |
| if ((Global_16215[iVar0 /*17*/].f_5 != 88 && Global_16215[iVar0 /*17*/].f_5 != 89) && Global_16215[iVar0 /*17*/].f_5 != 92) | |
| { | |
| func_71(Global_16215[iVar0 /*17*/].f_5, 1); | |
| } | |
| } | |
| } | |
| iVar0++; | |
| } | |
| } | |
| void func_71(int iParam0, bool bParam1) | |
| { | |
| if (bParam1) | |
| { | |
| if ((iParam0 != 88 && iParam0 != 89) && iParam0 != 92) | |
| { | |
| Global_15691[iParam0 /*2*/] = 1; | |
| } | |
| } | |
| else | |
| { | |
| Global_15691[iParam0 /*2*/] = 0; | |
| } | |
| } | |
| void func_72(var uParam0) | |
| { | |
| if (*uParam0 == -1) | |
| { | |
| return; | |
| } | |
| if (!*uParam0 == Global_8E23) | |
| { | |
| *uParam0 = -1; | |
| return; | |
| } | |
| *uParam0 = -1; | |
| Global_8E22 = 0; | |
| Global_8E24 = 0; | |
| Global_8E49 = 15; | |
| Global_DCAB = 0; | |
| Global_DCAC = 0; | |
| } | |
| int func_73() | |
| { | |
| return Global_41F3; | |
| } | |
| void func_74(char *sParam0, int iParam1) | |
| { | |
| UI::BEGIN_TEXT_COMMAND_DISPLAY_HELP(sParam0); | |
| UI::END_TEXT_COMMAND_DISPLAY_HELP(0, 0, 1, iParam1); | |
| } | |
| int func_75() | |
| { | |
| if (GAMEPLAY::IS_BIT_SET(Global_978, 23)) | |
| { | |
| if (Global_3E2F == 1) | |
| { | |
| return 1; | |
| } | |
| else | |
| { | |
| return 0; | |
| } | |
| } | |
| return 0; | |
| } | |
| void func_76() | |
| { | |
| int iVar0; | |
| int iVar1; | |
| struct<5> Var2; | |
| if (iLocal_80) | |
| { | |
| iVar0 = Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/].f_9; | |
| if (iVar0 != -1) | |
| { | |
| if (execute_func_for_index(Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/].f_9)) | |
| { | |
| iVar1 = Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/].f_A; | |
| } | |
| else | |
| { | |
| iVar1 = Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/].f_B; | |
| } | |
| if (iVar1 != -1) | |
| { | |
| get_phone_call_data(iVar1, &Var2); | |
| func_77(&Var2, &(Var2.f_4)); | |
| } | |
| } | |
| iLocal_80 = 0; | |
| } | |
| } | |
| void func_77(char *sParam0, char *sParam1) | |
| { | |
| if (AUDIO::IS_MOBILE_PHONE_CALL_ONGOING()) | |
| { | |
| Global_3E33 = 1; | |
| StringCopy(&Global_3E3A, sParam0, 24); | |
| StringCopy(&Global_3E34, sParam1, 24); | |
| } | |
| } | |
| void get_phone_call_data(int iParam0, char *sParam1) | |
| { | |
| if (func_64(iParam0) == 0) | |
| { | |
| StringCopy(sParam1, "CHATCAU", 16); | |
| StringCopy(&(sParam1->f_8), "", 16); | |
| switch (iParam0) | |
| { | |
| case -1323332922: | |
| StringCopy(sParam1, "FB3aAUD", 16); | |
| StringCopy(&(sParam1->f_4), "F3A_INTALT", 16); | |
| break; | |
| case -651018670: | |
| StringCopy(sParam1, "AHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "AHF_C4", 16); | |
| break; | |
| case -236506853: | |
| StringCopy(sParam1, "AHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "AHF_C7", 16); | |
| break; | |
| case -518176220: | |
| StringCopy(sParam1, "AHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "AHF_C5", 16); | |
| break; | |
| case -1889998615: | |
| StringCopy(sParam1, "AHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "AHF_C6", 16); | |
| break; | |
| case 777679877: | |
| StringCopy(sParam1, "AHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "AHF_C8", 16); | |
| break; | |
| case -1547927413: | |
| StringCopy(sParam1, "AHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "AHF_C9", 16); | |
| break; | |
| case 1770589463: | |
| StringCopy(sParam1, "FBIS4AU", 16); | |
| StringCopy(&(sParam1->f_4), "AH3A_PASS", 16); | |
| break; | |
| case -1358914512: | |
| StringCopy(sParam1, "AH3BAUD", 16); | |
| StringCopy(&(sParam1->f_4), "AH3B_PASS", 16); | |
| break; | |
| case 1611093726: | |
| StringCopy(sParam1, "ARFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "ARFL_CALL1", 16); | |
| break; | |
| case 742578279: | |
| StringCopy(sParam1, "ARFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "ARFL_CALL_CT", 16); | |
| break; | |
| case -1753640864: | |
| StringCopy(sParam1, "ARFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "ARFL_CALL2", 16); | |
| break; | |
| case 24012281: | |
| StringCopy(sParam1, "ASFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "ASFL_CALL1", 16); | |
| break; | |
| case 343235192: | |
| StringCopy(sParam1, "OJASAUD", 16); | |
| StringCopy(&(sParam1->f_4), "OJAS_HOTEL_C", 16); | |
| break; | |
| case 687625470: | |
| StringCopy(sParam1, "CSFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "CSFL_CALL0", 16); | |
| break; | |
| case -1134988206: | |
| StringCopy(sParam1, "MIFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "MIFL_CALL2", 16); | |
| break; | |
| case -1155501333: | |
| StringCopy(sParam1, "CHFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "CHFL_CALL1", 16); | |
| StringCopy(&(sParam1->f_8), "CHFL_CALL2", 16); | |
| break; | |
| case -951496: | |
| StringCopy(sParam1, "DHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "DHF_C3", 16); | |
| break; | |
| case -1108940541: | |
| StringCopy(sParam1, "DHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "DHF_C4", 16); | |
| break; | |
| case 1372476011: | |
| StringCopy(sParam1, "DHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "DHF_C3B", 16); | |
| break; | |
| case -452599906: | |
| StringCopy(sParam1, "DHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "DHF_WP1", 16); | |
| break; | |
| case 944724110: | |
| StringCopy(sParam1, "DHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "DHF_WP2", 16); | |
| break; | |
| case -749738207: | |
| StringCopy(sParam1, "DHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "DHF_C2A", 16); | |
| break; | |
| case -1478217267: | |
| StringCopy(sParam1, "EXL1AUD", 16); | |
| StringCopy(&(sParam1->f_4), "EXL1_CALLM", 16); | |
| break; | |
| case -1451910289: | |
| StringCopy(sParam1, "EXILAUD", 16); | |
| StringCopy(&(sParam1->f_4), "EXIL_CALL1", 16); | |
| break; | |
| case -1151582404: | |
| StringCopy(sParam1, "EXILAUD", 16); | |
| StringCopy(&(sParam1->f_4), "EXIL_CALL2", 16); | |
| break; | |
| case 1628462442: | |
| StringCopy(sParam1, "EXILAUD", 16); | |
| StringCopy(&(sParam1->f_4), "EXIL_MAR09", 16); | |
| break; | |
| case 1791324372: | |
| StringCopy(sParam1, "EXILAUD", 16); | |
| StringCopy(&(sParam1->f_4), "EXIL_MAR10", 16); | |
| break; | |
| case -240877892: | |
| StringCopy(sParam1, "EXILAUD", 16); | |
| StringCopy(&(sParam1->f_4), "EXIL_MAR11", 16); | |
| break; | |
| case -1141042322: | |
| StringCopy(sParam1, "EXILAUD", 16); | |
| StringCopy(&(sParam1->f_4), "EXIL_MAR05", 16); | |
| break; | |
| case 1806999335: | |
| StringCopy(sParam1, "EXILAUD", 16); | |
| StringCopy(&(sParam1->f_4), "EXIL_MAR12", 16); | |
| break; | |
| case 2054503592: | |
| StringCopy(sParam1, "EXILAUD", 16); | |
| StringCopy(&(sParam1->f_4), "EXIL_MAR13", 16); | |
| break; | |
| case -2009081795: | |
| StringCopy(sParam1, "EXILAUD", 16); | |
| StringCopy(&(sParam1->f_4), "EXIL_MAR14", 16); | |
| break; | |
| case 520422857: | |
| StringCopy(sParam1, "EXILAUD", 16); | |
| StringCopy(&(sParam1->f_4), "EXIL_MAR07", 16); | |
| break; | |
| case 1645231: | |
| StringCopy(sParam1, "FMFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FMFL_AM4", 16); | |
| break; | |
| case -769656371: | |
| StringCopy(sParam1, "EXL3AUD", 16); | |
| StringCopy(&(sParam1->f_4), "EXL3_STEVE", 16); | |
| break; | |
| case -694220424: | |
| StringCopy(sParam1, "EPSDAUD", 16); | |
| StringCopy(&(sParam1->f_4), "EPSD_CRIS", 16); | |
| break; | |
| case -885867010: | |
| StringCopy(sParam1, "EPSDAUD", 16); | |
| StringCopy(&(sParam1->f_4), "EPSD_FIN", 16); | |
| break; | |
| case -632277372: | |
| StringCopy(sParam1, "EPS8AU", 16); | |
| StringCopy(&(sParam1->f_4), "EPS8_CF1", 16); | |
| break; | |
| case -1763624884: | |
| StringCopy(sParam1, "EPS8AU", 16); | |
| StringCopy(&(sParam1->f_4), "EPS8_CF3", 16); | |
| break; | |
| case 1995383583: | |
| StringCopy(sParam1, "FMFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FMFL_TRFAM4", 16); | |
| break; | |
| case -881570909: | |
| StringCopy(sParam1, "FMFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FMFL_TRCHILL", 16); | |
| break; | |
| case -444489072: | |
| StringCopy(sParam1, "FOFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FOFL_CALL1A", 16); | |
| StringCopy(&(sParam1->f_8), "FOFL_CALL1A2", 16); | |
| break; | |
| case 154402960: | |
| StringCopy(sParam1, "FOFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FOFL_CALL1B", 16); | |
| break; | |
| case 795730787: | |
| StringCopy(sParam1, "FOFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FOFL_CALL4", 16); | |
| break; | |
| case -1847734803: | |
| StringCopy(sParam1, "FBIPRAU", 16); | |
| StringCopy(&(sParam1->f_4), "FBIP1_MENDC", 16); | |
| break; | |
| case -714760066: | |
| StringCopy(sParam1, "FBIPRAU", 16); | |
| StringCopy(&(sParam1->f_4), "FBIP1_FENDC", 16); | |
| break; | |
| case -1198055521: | |
| StringCopy(sParam1, "FBIPRAU", 16); | |
| StringCopy(&(sParam1->f_4), "FBIP1_TENDC", 16); | |
| break; | |
| case 1374342572: | |
| StringCopy(sParam1, "FBIPRAU", 16); | |
| StringCopy(&(sParam1->f_4), "FBIP2_MENDC", 16); | |
| break; | |
| case 530956160: | |
| StringCopy(sParam1, "FBIPRAU", 16); | |
| StringCopy(&(sParam1->f_4), "FBIP2_FENDC", 16); | |
| break; | |
| case 240475766: | |
| StringCopy(sParam1, "FBIPRAU", 16); | |
| StringCopy(&(sParam1->f_4), "FBIP2_TENDC", 16); | |
| break; | |
| case 580731697: | |
| StringCopy(sParam1, "FBIPRAU", 16); | |
| StringCopy(&(sParam1->f_4), "FBIP4_MENDC", 16); | |
| break; | |
| case 728176806: | |
| StringCopy(sParam1, "FBIPRAU", 16); | |
| StringCopy(&(sParam1->f_4), "FBIP4_FENDC", 16); | |
| break; | |
| case 910240872: | |
| StringCopy(sParam1, "FBIPRAU", 16); | |
| StringCopy(&(sParam1->f_4), "FBIP4_TENDC", 16); | |
| break; | |
| case 74540475: | |
| StringCopy(sParam1, "FBIPRAU", 16); | |
| StringCopy(&(sParam1->f_4), "FBIP5_MENDC", 16); | |
| break; | |
| case -1200353264: | |
| StringCopy(sParam1, "FBIPRAU", 16); | |
| StringCopy(&(sParam1->f_4), "FBIP5_FENDC", 16); | |
| break; | |
| case 801340541: | |
| StringCopy(sParam1, "FBIPRAU", 16); | |
| StringCopy(&(sParam1->f_4), "FBIP5_TENDC", 16); | |
| break; | |
| case 1527885205: | |
| StringCopy(sParam1, "FBIPRAU", 16); | |
| StringCopy(&(sParam1->f_4), "FBI4_READY", 16); | |
| break; | |
| case -224691627: | |
| StringCopy(sParam1, "FBIPRAU", 16); | |
| StringCopy(&(sParam1->f_4), "FBI4_WAIT", 16); | |
| break; | |
| case -2014002000: | |
| StringCopy(sParam1, "FBIPRAU", 16); | |
| StringCopy(&(sParam1->f_4), "FBI4_READY", 16); | |
| break; | |
| case -314546970: | |
| StringCopy(sParam1, "FBIPRAU", 16); | |
| StringCopy(&(sParam1->f_4), "FBI4_ITSONF", 16); | |
| break; | |
| case -1306479777: | |
| StringCopy(sParam1, "FBIPRAU", 16); | |
| StringCopy(&(sParam1->f_4), "FBI4_ITSONT", 16); | |
| break; | |
| case -621899663: | |
| StringCopy(sParam1, "FBIPRAU", 16); | |
| StringCopy(&(sParam1->f_4), "FBI4_ISAGO", 16); | |
| break; | |
| case -1615086084: | |
| StringCopy(sParam1, "FNFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FNFL_CHC1", 16); | |
| break; | |
| case -1989308064: | |
| StringCopy(sParam1, "FNFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FNFL_CHC1B", 16); | |
| break; | |
| case -1970925435: | |
| StringCopy(sParam1, "FNFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FNFL_CHC2", 16); | |
| break; | |
| case -1060930305: | |
| StringCopy(sParam1, "FNFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FNFL_CHC2B", 16); | |
| break; | |
| case -1817481777: | |
| StringCopy(sParam1, "FNFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FNFL_CHC3", 16); | |
| break; | |
| case -2099041387: | |
| StringCopy(sParam1, "FNFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FNFL_AMAN", 16); | |
| break; | |
| case -1468151569: | |
| StringCopy(sParam1, "FNFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FNFL_DAVE", 16); | |
| break; | |
| case -121056641: | |
| StringCopy(sParam1, "FNFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FNFL_DEV09", 16); | |
| break; | |
| case -579786137: | |
| StringCopy(sParam1, "FNFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FNFL_LAM22", 16); | |
| break; | |
| case -1398697867: | |
| StringCopy(sParam1, "FNFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FNFL_MDEAD1", 16); | |
| break; | |
| case 466185907: | |
| StringCopy(sParam1, "FNFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FNFL_MDEAD2", 16); | |
| break; | |
| case 185453884: | |
| StringCopy(sParam1, "FNFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FNFL_MDEAD3", 16); | |
| break; | |
| case 1972824823: | |
| StringCopy(sParam1, "FNFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FNFL_STE01", 16); | |
| break; | |
| case -288258721: | |
| StringCopy(sParam1, "FNFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FNFL_TDEAD1", 16); | |
| break; | |
| case -47439340: | |
| StringCopy(sParam1, "FNFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FNFL_TDEAD2", 16); | |
| break; | |
| case -553769964: | |
| StringCopy(sParam1, "FHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FHF_STN1", 16); | |
| break; | |
| case -1434443191: | |
| StringCopy(sParam1, "FHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FHF_STN2", 16); | |
| break; | |
| case -2032593637: | |
| StringCopy(sParam1, "FHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FHF_STN3", 16); | |
| break; | |
| case -458789713: | |
| StringCopy(sParam1, "FHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FHF_CUT1E", 16); | |
| break; | |
| case 321648831: | |
| StringCopy(sParam1, "FHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FHF_CUT2E", 16); | |
| break; | |
| case 312697495: | |
| StringCopy(sParam1, "FHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FHF_CUT3E", 16); | |
| break; | |
| case -1980743701: | |
| StringCopy(sParam1, "FHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FHF_MPC1", 16); | |
| break; | |
| case 1567521709: | |
| StringCopy(sParam1, "FHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FHF_FPC1", 16); | |
| break; | |
| case -1687842043: | |
| StringCopy(sParam1, "FHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FHF_TPC1", 16); | |
| break; | |
| case -1631047976: | |
| StringCopy(sParam1, "FHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FHF_MPC2", 16); | |
| break; | |
| case 962970051: | |
| StringCopy(sParam1, "FHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FHF_FPC2", 16); | |
| break; | |
| case -1323797481: | |
| StringCopy(sParam1, "FHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FHF_TPC2", 16); | |
| break; | |
| case 2095586439: | |
| StringCopy(sParam1, "FHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FHF_CAR1", 16); | |
| break; | |
| case 1608868018: | |
| StringCopy(sParam1, "FHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FHF_CAR2", 16); | |
| break; | |
| case 1134611425: | |
| StringCopy(sParam1, "FHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FHF_CAR3", 16); | |
| break; | |
| case 187813079: | |
| StringCopy(sParam1, "FHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FHF_TRN1", 16); | |
| break; | |
| case -39544602: | |
| StringCopy(sParam1, "FHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FHF_TRN2", 16); | |
| break; | |
| case -997367701: | |
| StringCopy(sParam1, "FHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FHF_TRN3", 16); | |
| break; | |
| case -128912482: | |
| StringCopy(sParam1, "FHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FHF_GETA1", 16); | |
| break; | |
| case -131238069: | |
| StringCopy(sParam1, "FHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FHF_GETA2", 16); | |
| break; | |
| case -330732224: | |
| StringCopy(sParam1, "FHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FHF_GETA3", 16); | |
| break; | |
| case -1334144471: | |
| StringCopy(sParam1, "FHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FHF_RDY", 16); | |
| break; | |
| case -211946295: | |
| StringCopy(sParam1, "FHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FHF_PREP", 16); | |
| break; | |
| case 1679209251: | |
| StringCopy(sParam1, "FHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FHF_STNG", 16); | |
| break; | |
| case -1394105734: | |
| StringCopy(sParam1, "FHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FHF_GETA", 16); | |
| break; | |
| case 94848458: | |
| StringCopy(sParam1, "FHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FHF_DRILL", 16); | |
| break; | |
| case -1106471007: | |
| StringCopy(sParam1, "FHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FHF_TRN", 16); | |
| break; | |
| case -268883259: | |
| StringCopy(sParam1, "FHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FHF_GAU", 16); | |
| break; | |
| case 546458037: | |
| StringCopy(sParam1, "FRFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FRFL_1LC", 16); | |
| break; | |
| case -2068958976: | |
| StringCopy(sParam1, "LSFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "LSFL_ENG01", 16); | |
| break; | |
| case -1366489923: | |
| StringCopy(sParam1, "LSFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "LSFL_ENG02", 16); | |
| break; | |
| case 406771743: | |
| StringCopy(sParam1, "LSFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "LSFL_ENG03", 16); | |
| break; | |
| case -837794877: | |
| StringCopy(sParam1, "LSFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "LSFL_ENG04", 16); | |
| break; | |
| case -78001721: | |
| StringCopy(sParam1, "JHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "JHF_C1", 16); | |
| break; | |
| case 327673956: | |
| StringCopy(sParam1, "JHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "JHF_C3A", 16); | |
| break; | |
| case -1746082591: | |
| StringCopy(sParam1, "JHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "JHF_P10A", 16); | |
| break; | |
| case -1945164276: | |
| StringCopy(sParam1, "JHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "JHF_P10B", 16); | |
| break; | |
| case -1052097629: | |
| StringCopy(sParam1, "JHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "JHF_BZD1", 16); | |
| break; | |
| case 1595158098: | |
| StringCopy(sParam1, "JHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "JHF_TRANSM", 16); | |
| break; | |
| case -420969532: | |
| StringCopy(sParam1, "JHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "JHF_TRANSF", 16); | |
| break; | |
| case -441095892: | |
| StringCopy(sParam1, "MIFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "MIFL_DAVE", 16); | |
| break; | |
| case 153235461: | |
| StringCopy(sParam1, "MIFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "MIFL_TR1", 16); | |
| break; | |
| case -375893868: | |
| StringCopy(sParam1, "MIFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "MIFL_PREM", 16); | |
| break; | |
| case -67922520: | |
| StringCopy(sParam1, "MIFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "MIFL_AM1", 16); | |
| break; | |
| case 707131591: | |
| StringCopy(sParam1, "PAP3AAU", 16); | |
| StringCopy(&(sParam1->f_4), "PAP3A_ENDCAL", 16); | |
| break; | |
| case 2033185762: | |
| StringCopy(sParam1, "PAFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "PAFL_01", 16); | |
| break; | |
| case 1801771084: | |
| StringCopy(sParam1, "PAFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "PAFL_02", 16); | |
| break; | |
| case -1716308760: | |
| StringCopy(sParam1, "PAFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "PAFL_03", 16); | |
| break; | |
| case -2116452823: | |
| StringCopy(sParam1, "RHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "RHF_C1", 16); | |
| break; | |
| case -1141220854: | |
| StringCopy(sParam1, "RHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "RHF_C1A", 16); | |
| break; | |
| case 1880611494: | |
| StringCopy(sParam1, "RHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "RHF_C2", 16); | |
| break; | |
| case -1276059507: | |
| StringCopy(sParam1, "RHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "RHF_C2A", 16); | |
| break; | |
| case -1434698871: | |
| StringCopy(sParam1, "RHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "RHF_C3", 16); | |
| break; | |
| case 1080702705: | |
| StringCopy(sParam1, "FNFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FNFL_TANISHA", 16); | |
| break; | |
| case 1632742627: | |
| StringCopy(sParam1, "FMFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FMFL_CALL2B", 16); | |
| break; | |
| case -1074970768: | |
| StringCopy(sParam1, "SLFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "SLFL_MAR04", 16); | |
| break; | |
| case 643619115: | |
| StringCopy(sParam1, "T1M4AUD", 16); | |
| StringCopy(&(sParam1->f_4), "SOL3_PASS", 16); | |
| break; | |
| case 720676600: | |
| StringCopy(sParam1, "DIVEAU", 16); | |
| StringCopy(&(sParam1->f_4), "DIVE_PHONE", 16); | |
| break; | |
| case 1303349750: | |
| StringCopy(sParam1, "SONARAU", 16); | |
| StringCopy(&(sParam1->f_4), "SONAR_PHONE", 16); | |
| break; | |
| case -1343914045: | |
| StringCopy(sParam1, "TRV5AUD", 16); | |
| StringCopy(&(sParam1->f_4), "TRV5_LESCALL", 16); | |
| break; | |
| case -1199050901: | |
| StringCopy(sParam1, "REBU2AU", 16); | |
| StringCopy(&(sParam1->f_4), "REBU2_CALLM", 16); | |
| break; | |
| case 1082655975: | |
| StringCopy(sParam1, "REBU2AU", 16); | |
| StringCopy(&(sParam1->f_4), "REBU2_CALLF", 16); | |
| break; | |
| case -2100435596: | |
| StringCopy(sParam1, "REBU2AU", 16); | |
| StringCopy(&(sParam1->f_4), "REBU2_CALLT", 16); | |
| break; | |
| case -974942855: | |
| StringCopy(sParam1, "HAO1AU", 16); | |
| StringCopy(&(sParam1->f_4), "HAO1_PCW", 16); | |
| break; | |
| case -577064562: | |
| StringCopy(sParam1, "TOWAUD", 16); | |
| StringCopy(&(sParam1->f_4), "TOW_CALLSALE", 16); | |
| break; | |
| case 2025906743: | |
| StringCopy(sParam1, "PROPAUD", 16); | |
| StringCopy(&(sParam1->f_4), "PRP_INTRO", 16); | |
| break; | |
| case -1404384954: | |
| StringCopy(sParam1, "PROPAUD", 16); | |
| StringCopy(&(sParam1->f_4), "PRP_INTROM", 16); | |
| break; | |
| case -112860461: | |
| StringCopy(sParam1, "PROPAUD", 16); | |
| StringCopy(&(sParam1->f_4), "PRP_INTROF2", 16); | |
| break; | |
| case 339632201: | |
| StringCopy(sParam1, "PMPLANE", 16); | |
| StringCopy(&(sParam1->f_4), "PMPLA_MAN", 16); | |
| break; | |
| case 453095043: | |
| StringCopy(sParam1, "PROPAUD", 16); | |
| StringCopy(&(sParam1->f_4), "PRP_INTROF", 16); | |
| break; | |
| case 313472619: | |
| StringCopy(sParam1, "FMMAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FMM_GRGa", 16); | |
| break; | |
| case 2038672434: | |
| StringCopy(sParam1, "FMMAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FMM_GRRa", 16); | |
| break; | |
| case 1666308520: | |
| StringCopy(sParam1, "FMMAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FMM_GRCa", 16); | |
| break; | |
| case 1894462438: | |
| StringCopy(sParam1, "FMMAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FMM_GRHa", 16); | |
| break; | |
| case 1728635625: | |
| StringCopy(sParam1, "FMFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FMF_GRGa", 16); | |
| break; | |
| case 975196153: | |
| StringCopy(sParam1, "FMFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FMF_GRRa", 16); | |
| break; | |
| case -710274964: | |
| StringCopy(sParam1, "FMFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FMF_GRCa", 16); | |
| break; | |
| case 1289879258: | |
| StringCopy(sParam1, "FMFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FMF_GRB", 16); | |
| break; | |
| case 1621076324: | |
| StringCopy(sParam1, "FMFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FMF_GRHa", 16); | |
| break; | |
| case 1005256598: | |
| StringCopy(sParam1, "FMTAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FMT_GRGa", 16); | |
| break; | |
| case 1127548000: | |
| StringCopy(sParam1, "FMTAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FMT_GRRa", 16); | |
| break; | |
| case -1291788156: | |
| StringCopy(sParam1, "FMTAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FMT_GRCa", 16); | |
| break; | |
| case 1993031175: | |
| StringCopy(sParam1, "FMTAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FMT_GRHa", 16); | |
| break; | |
| default: | |
| switch (iParam0) | |
| { | |
| case 2111803439: | |
| StringCopy(sParam1, "FMFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FMFL_AM1", 16); | |
| break; | |
| case 1290939985: | |
| StringCopy(sParam1, "FMFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FMFL_AM2", 16); | |
| break; | |
| case -1690219790: | |
| StringCopy(sParam1, "FMFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FMFL_AM3", 16); | |
| break; | |
| case 1766909710: | |
| StringCopy(sParam1, "FMFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FMFL_AM4", 16); | |
| break; | |
| case -358013836: | |
| StringCopy(sParam1, "HTAMBAU", 16); | |
| StringCopy(&(sParam1->f_4), "HTAMB_PH1", 16); | |
| break; | |
| case -589035286: | |
| StringCopy(sParam1, "HTAMBAU", 16); | |
| StringCopy(&(sParam1->f_4), "HTAMB_PH2", 16); | |
| break; | |
| case -1842374536: | |
| StringCopy(sParam1, "HTAMBAU", 16); | |
| StringCopy(&(sParam1->f_4), "HTAMB_PH3", 16); | |
| break; | |
| case -418954710: | |
| StringCopy(sParam1, "HTAMBAU", 16); | |
| StringCopy(&(sParam1->f_4), "HTAMB_PH4", 16); | |
| break; | |
| case -1783816333: | |
| StringCopy(sParam1, "HTAMBAU", 16); | |
| StringCopy(&(sParam1->f_4), "HTAMB_PH5", 16); | |
| break; | |
| case 1438498239: | |
| StringCopy(sParam1, "JHFAUD", 16); | |
| StringCopy(&(sParam1->f_4), "JHF_DAVE", 16); | |
| break; | |
| case -2139605007: | |
| StringCopy(&(sParam1->f_4), "CHATC_DEV03", 16); | |
| break; | |
| case 1906711117: | |
| StringCopy(&(sParam1->f_4), "CHATC_DEV04", 16); | |
| break; | |
| case -1949184344: | |
| StringCopy(&(sParam1->f_4), "CHATC_DEV05", 16); | |
| break; | |
| case 2065444157: | |
| StringCopy(&(sParam1->f_4), "CHATC_DEV06", 16); | |
| break; | |
| case 624853379: | |
| StringCopy(&(sParam1->f_4), "CHATC_DEV07", 16); | |
| break; | |
| case -1766792090: | |
| StringCopy(&(sParam1->f_4), "CHATC_DEV08", 16); | |
| break; | |
| case -1878340166: | |
| StringCopy(&(sParam1->f_4), "CHATC_JIM05", 16); | |
| break; | |
| case 279793409: | |
| StringCopy(&(sParam1->f_4), "CHATC_JIM06", 16); | |
| break; | |
| case 460547213: | |
| StringCopy(&(sParam1->f_4), "CHATC_JIM07", 16); | |
| break; | |
| case -330856906: | |
| StringCopy(&(sParam1->f_4), "CHATC_JIM08", 16); | |
| break; | |
| case -690594988: | |
| StringCopy(&(sParam1->f_4), "CHATC_JIM09", 16); | |
| break; | |
| case -349863294: | |
| StringCopy(&(sParam1->f_4), "CHATC_JIM10", 16); | |
| break; | |
| case 424926942: | |
| StringCopy(&(sParam1->f_4), "CHATC_JIM11", 16); | |
| break; | |
| case 1890717037: | |
| StringCopy(&(sParam1->f_4), "CHATC_JIM12", 16); | |
| break; | |
| case -1636767510: | |
| StringCopy(&(sParam1->f_4), "CHATC_JIM13", 16); | |
| break; | |
| case -1893250473: | |
| StringCopy(&(sParam1->f_4), "CHATC_JIM14", 16); | |
| break; | |
| case -1160994395: | |
| StringCopy(&(sParam1->f_4), "CHATC_JIM15", 16); | |
| break; | |
| case 963157723: | |
| StringCopy(&(sParam1->f_4), "CHATC_JIM16", 16); | |
| break; | |
| case 1730771548: | |
| StringCopy(&(sParam1->f_4), "CHATC_JIM17", 16); | |
| break; | |
| case 1410028576: | |
| StringCopy(&(sParam1->f_4), "CHATC_JIM18", 16); | |
| break; | |
| case -2082393141: | |
| StringCopy(&(sParam1->f_4), "CHATC_JIM19", 16); | |
| break; | |
| case -1497396589: | |
| StringCopy(&(sParam1->f_4), "CHATC_JIM20", 16); | |
| break; | |
| case -1196085634: | |
| StringCopy(&(sParam1->f_4), "CHATC_JIM21", 16); | |
| break; | |
| case 170512742: | |
| StringCopy(&(sParam1->f_4), "CHATC_JIM22", 16); | |
| break; | |
| case 469005563: | |
| StringCopy(&(sParam1->f_4), "CHATC_JIM23", 16); | |
| break; | |
| case -306898819: | |
| StringCopy(&(sParam1->f_4), "CHATC_JIM24", 16); | |
| break; | |
| case 82970585: | |
| StringCopy(sParam1, "CSFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "LAM_06", 16); | |
| break; | |
| case 1867406480: | |
| StringCopy(&(sParam1->f_4), "CHATC_LAM08", 16); | |
| break; | |
| case 1502097668: | |
| StringCopy(&(sParam1->f_4), "CHATC_LAM09", 16); | |
| break; | |
| case -1621970384: | |
| StringCopy(&(sParam1->f_4), "CHATC_LAM10", 16); | |
| break; | |
| case 1031237239: | |
| StringCopy(&(sParam1->f_4), "CHATC_LAM11", 16); | |
| break; | |
| case 194808514: | |
| StringCopy(&(sParam1->f_4), "CHATC_LAM12", 16); | |
| break; | |
| case 1509435260: | |
| StringCopy(&(sParam1->f_4), "CHATC_LAM13", 16); | |
| break; | |
| case 673727449: | |
| StringCopy(&(sParam1->f_4), "CHATC_LAM14", 16); | |
| break; | |
| case 71040001: | |
| StringCopy(&(sParam1->f_4), "CHATC_LAM15", 16); | |
| break; | |
| case -755689100: | |
| StringCopy(&(sParam1->f_4), "CHATC_LAM16", 16); | |
| break; | |
| case 556840426: | |
| StringCopy(&(sParam1->f_4), "CHATC_LAM17", 16); | |
| break; | |
| case -177054098: | |
| StringCopy(&(sParam1->f_4), "CHATC_LAM18", 16); | |
| break; | |
| case -835252192: | |
| StringCopy(&(sParam1->f_4), "CHATC_LAM19", 16); | |
| break; | |
| case 616513703: | |
| StringCopy(&(sParam1->f_4), "CHATC_LAM20", 16); | |
| break; | |
| case 2064117051: | |
| StringCopy(sParam1, "FNFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FNFL_LAM21", 16); | |
| break; | |
| case -1758542647: | |
| StringCopy(&(sParam1->f_4), "CHATC_RON03", 16); | |
| break; | |
| case 1089542219: | |
| StringCopy(&(sParam1->f_4), "CHATC_RON04", 16); | |
| break; | |
| case 675079903: | |
| StringCopy(&(sParam1->f_4), "CHATC_RON05", 16); | |
| break; | |
| case -1613846760: | |
| StringCopy(&(sParam1->f_4), "CHATC_SOL01", 16); | |
| break; | |
| case 518202687: | |
| StringCopy(&(sParam1->f_4), "CHATC_SOL02", 16); | |
| break; | |
| case 946886745: | |
| StringCopy(&(sParam1->f_4), "CHATC_SOL03", 16); | |
| break; | |
| case 1229388294: | |
| StringCopy(&(sParam1->f_4), "CHATC_SOL04", 16); | |
| break; | |
| case 522335044: | |
| StringCopy(&(sParam1->f_4), "CHATC_STR01", 16); | |
| break; | |
| case 2097475336: | |
| StringCopy(&(sParam1->f_4), "CHATC_STR02", 16); | |
| break; | |
| case -108894207: | |
| StringCopy(&(sParam1->f_4), "CHATC_STR03", 16); | |
| break; | |
| case -950205513: | |
| StringCopy(&(sParam1->f_4), "CHATC_STR04", 16); | |
| break; | |
| case -703684326: | |
| StringCopy(&(sParam1->f_4), "CHATC_STR05", 16); | |
| break; | |
| case -1982920067: | |
| StringCopy(&(sParam1->f_4), "CHATC_TEXIL1", 16); | |
| break; | |
| case 1319343143: | |
| StringCopy(&(sParam1->f_4), "CHATC_TEXIL2", 16); | |
| break; | |
| case -1118768768: | |
| StringCopy(&(sParam1->f_4), "CHATC_TEXIL3", 16); | |
| break; | |
| case -705125709: | |
| StringCopy(&(sParam1->f_4), "CHATC_TEXIL4", 16); | |
| break; | |
| case -782984853: | |
| StringCopy(&(sParam1->f_4), "CHATC_TEXIL5", 16); | |
| break; | |
| case -92968020: | |
| StringCopy(&(sParam1->f_4), "CHATC_TEXIL6", 16); | |
| break; | |
| case -406305198: | |
| StringCopy(&(sParam1->f_4), "CHATC_TEXIL7", 16); | |
| break; | |
| case -1130010274: | |
| StringCopy(sParam1, "FMFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "FMFL_TNOT", 16); | |
| break; | |
| case 684213521: | |
| StringCopy(&(sParam1->f_4), "CHATC_TFAM", 16); | |
| break; | |
| case 1388615949: | |
| StringCopy(&(sParam1->f_4), "CHATC_TFAM4", 16); | |
| break; | |
| case -2062910056: | |
| StringCopy(&(sParam1->f_4), "CHATC_TFAM5", 16); | |
| break; | |
| case -643694497: | |
| StringCopy(&(sParam1->f_4), "CHATC_WADE01", 16); | |
| break; | |
| case -278713375: | |
| StringCopy(&(sParam1->f_4), "CHATC_WADE02", 16); | |
| break; | |
| case -1105442476: | |
| StringCopy(&(sParam1->f_4), "CHATC_WADE04", 16); | |
| break; | |
| case -805704433: | |
| StringCopy(&(sParam1->f_4), "CHATC_WADE05", 16); | |
| break; | |
| case -1565848713: | |
| StringCopy(&(sParam1->f_4), "CHATC_MAR01", 16); | |
| break; | |
| case -1351801605: | |
| StringCopy(&(sParam1->f_4), "CHATC_MAR02", 16); | |
| break; | |
| case 1311040108: | |
| StringCopy(&(sParam1->f_4), "CHATC_MAR03", 16); | |
| break; | |
| case 1562602199: | |
| StringCopy(&(sParam1->f_4), "CHATC_CHG1", 16); | |
| break; | |
| case 1113666899: | |
| StringCopy(&(sParam1->f_4), "CHATC_CHG2", 16); | |
| break; | |
| case 814649774: | |
| StringCopy(&(sParam1->f_4), "CHATC_CHG3", 16); | |
| break; | |
| case 225734768: | |
| StringCopy(&(sParam1->f_4), "CHATC_HOSP", 16); | |
| break; | |
| default: | |
| break; | |
| } | |
| break; | |
| } | |
| } | |
| else | |
| { | |
| return; | |
| } | |
| } | |
| int execute_func_for_index(int iParam0) | |
| { | |
| var uVar0; | |
| if (iParam0 == -1 || iParam0 == 30) | |
| { | |
| return 0; | |
| } | |
| get_func_location_for_index(iParam0, &uVar0); | |
| Call_Loc(uVar0); | |
| return StackVal; | |
| } | |
| void get_func_location_for_index(int iParam0, var uParam1) | |
| { | |
| switch (iParam0) | |
| { | |
| case 0: | |
| *uParam1 = 23919; | |
| break; | |
| case 1: | |
| *uParam1 = 23818; | |
| break; | |
| case 2: | |
| *uParam1 = 23769; | |
| break; | |
| case 3: | |
| *uParam1 = 23735; | |
| break; | |
| case 4: | |
| *uParam1 = 23587; | |
| break; | |
| case 5: | |
| *uParam1 = 23564; | |
| break; | |
| case 6: | |
| *uParam1 = 23540; | |
| break; | |
| case 7: | |
| *uParam1 = 23302; | |
| break; | |
| case 8: | |
| *uParam1 = 23194; | |
| break; | |
| case 9: | |
| *uParam1 = 23170; | |
| break; | |
| case 10: | |
| *uParam1 = 23147; | |
| break; | |
| case 11: | |
| *uParam1 = 23123; | |
| break; | |
| case 12: | |
| *uParam1 = 22981; | |
| break; | |
| case 13: | |
| *uParam1 = 22958; | |
| break; | |
| case 14: | |
| *uParam1 = 22934; | |
| break; | |
| case 16: | |
| *uParam1 = 22902; | |
| break; | |
| case 17: | |
| *uParam1 = 22880; | |
| break; | |
| case 18: | |
| *uParam1 = 22714; | |
| break; | |
| case 19: | |
| *uParam1 = 22700; | |
| break; | |
| case 20: | |
| *uParam1 = 22676; | |
| break; | |
| case 21: | |
| *uParam1 = 22618; | |
| break; | |
| case 22: | |
| *uParam1 = 22558; | |
| break; | |
| case 23: | |
| *uParam1 = 21724; | |
| break; | |
| case 24: | |
| *uParam1 = 21697; | |
| break; | |
| case 25: | |
| *uParam1 = 21670; | |
| break; | |
| case 26: | |
| *uParam1 = 21643; | |
| break; | |
| case 27: | |
| *uParam1 = 21594; | |
| break; | |
| case 28: | |
| *uParam1 = 21545; | |
| break; | |
| case 29: | |
| *uParam1 = 21496; | |
| break; | |
| default: | |
| *uParam1 = 23919; | |
| break; | |
| } | |
| } | |
| int func_81() | |
| { | |
| int iVar0; | |
| iVar0 = (5 - 3); | |
| if (iVar0 >= 0 && iVar0 < 3) | |
| { | |
| if (ENTITY::DOES_ENTITY_EXIST(Global_15DCA[iVar0])) | |
| { | |
| return 0; | |
| } | |
| } | |
| return 1; | |
| } | |
| int func_82() | |
| { | |
| int iVar0; | |
| iVar0 = (4 - 3); | |
| if (iVar0 >= 0 && iVar0 < 3) | |
| { | |
| if (ENTITY::DOES_ENTITY_EXIST(Global_15DCA[iVar0])) | |
| { | |
| return 0; | |
| } | |
| } | |
| return 1; | |
| } | |
| int func_83() | |
| { | |
| int iVar0; | |
| iVar0 = (3 - 3); | |
| if (iVar0 >= 0 && iVar0 < 3) | |
| { | |
| if (ENTITY::DOES_ENTITY_EXIST(Global_15DCA[iVar0])) | |
| { | |
| return 0; | |
| } | |
| } | |
| return 1; | |
| } | |
| int func_84() | |
| { | |
| if (ENTITY::DOES_ENTITY_EXIST(Global_16436[2])) | |
| { | |
| return 0; | |
| } | |
| return 1; | |
| } | |
| int func_85() | |
| { | |
| if (ENTITY::DOES_ENTITY_EXIST(Global_16436[1])) | |
| { | |
| return 0; | |
| } | |
| return 1; | |
| } | |
| int func_86() | |
| { | |
| if (ENTITY::DOES_ENTITY_EXIST(Global_16436[0])) | |
| { | |
| return 0; | |
| } | |
| return 1; | |
| } | |
| int func_87() | |
| { | |
| int iVar0; | |
| int iVar1; | |
| int iVar2; | |
| int iVar3; | |
| int iVar4; | |
| if (SCRIPT::IS_THREAD_ACTIVE(Global_1A045.f_46B1.f_18B)) | |
| { | |
| return 0; | |
| } | |
| iVar0 = (4 - 3); | |
| if (iVar0 < 3) | |
| { | |
| if (ENTITY::DOES_ENTITY_EXIST(Global_15DCA[iVar0])) | |
| { | |
| return 0; | |
| } | |
| } | |
| iVar1 = 14; | |
| iVar2 = 5; | |
| iVar3 = TIME::GET_CLOCK_HOURS(); | |
| if (iVar1 < iVar2) | |
| { | |
| if (iVar3 < iVar1 || iVar3 >= iVar2) | |
| { | |
| return 0; | |
| } | |
| } | |
| else if (iVar3 < iVar1 && iVar3 >= iVar2) | |
| { | |
| return 0; | |
| } | |
| iVar4 = func_91(func_92(get_active_char_index()), 4); | |
| if (iVar4 >= 9) | |
| { | |
| return 0; | |
| } | |
| else | |
| { | |
| if (Global_15DE0[iVar4 /*2*/] != 0) | |
| { | |
| return 0; | |
| } | |
| if (Global_1A045.f_46B1.f_AF[iVar4 /*19*/].f_2 != 0) | |
| { | |
| return 0; | |
| } | |
| if (func_90(&(Global_1A045.f_46B1.f_AF[iVar4 /*19*/].f_5)) && func_88(&(Global_1A045.f_46B1.f_AF[iVar4 /*19*/].f_5)) < (5.00f * 60.00f)) | |
| { | |
| return 0; | |
| } | |
| } | |
| return 1; | |
| } | |
| float func_88(var uParam0) | |
| { | |
| if (func_90(uParam0)) | |
| { | |
| if (func_89(uParam0)) | |
| { | |
| return uParam0->f_2; | |
| } | |
| else | |
| { | |
| return (func_69(GAMEPLAY::IS_BIT_SET(*uParam0, 4)) - uParam0->f_1); | |
| } | |
| } | |
| return uParam0->f_1; | |
| } | |
| bool func_89(var uParam0) | |
| { | |
| return GAMEPLAY::IS_BIT_SET(*uParam0, 2); | |
| } | |
| bool func_90(var uParam0) | |
| { | |
| return GAMEPLAY::IS_BIT_SET(*uParam0, 1); | |
| } | |
| int func_91(int iParam0, int iParam1) | |
| { | |
| int iVar0; | |
| if ((iParam0 != 0 && iParam0 != 1) && iParam0 != 2) | |
| { | |
| if ((iParam1 == 0 || iParam1 == 1) || iParam1 == 2) | |
| { | |
| iVar0 = iParam1; | |
| iParam1 = iParam0; | |
| iParam0 = iVar0; | |
| } | |
| } | |
| switch (iParam0) | |
| { | |
| case 0: | |
| switch (iParam1) | |
| { | |
| case 0: | |
| return 10; | |
| break; | |
| case 1: | |
| return 0; | |
| break; | |
| case 2: | |
| return 2; | |
| break; | |
| case 3: | |
| return 10; | |
| break; | |
| case 4: | |
| return 5; | |
| break; | |
| case 5: | |
| return 8; | |
| break; | |
| default: | |
| return 10; | |
| break; | |
| } | |
| break; | |
| case 1: | |
| switch (iParam1) | |
| { | |
| case 0: | |
| return 0; | |
| break; | |
| case 1: | |
| return 10; | |
| break; | |
| case 2: | |
| return 1; | |
| break; | |
| case 3: | |
| return 3; | |
| break; | |
| case 4: | |
| return 6; | |
| break; | |
| case 5: | |
| return 10; | |
| break; | |
| default: | |
| return 10; | |
| break; | |
| } | |
| break; | |
| case 2: | |
| switch (iParam1) | |
| { | |
| case 0: | |
| return 2; | |
| break; | |
| case 1: | |
| return 1; | |
| break; | |
| case 2: | |
| return 10; | |
| break; | |
| case 3: | |
| return 4; | |
| break; | |
| case 4: | |
| return 7; | |
| break; | |
| case 5: | |
| return 10; | |
| break; | |
| default: | |
| return 10; | |
| break; | |
| } | |
| break; | |
| } | |
| return 10; | |
| } | |
| int func_92(int iParam0) | |
| { | |
| if (iParam0 == 145) | |
| { | |
| return 7; | |
| } | |
| if (iParam0 < 161) | |
| { | |
| return Global_1A045.f_6D8C[iParam0 /*29*/].f_B; | |
| } | |
| if (iParam0 == 144) | |
| { | |
| return 7; | |
| } | |
| if (iParam0 == 161) | |
| { | |
| return 6; | |
| } | |
| if (iParam0 == 162) | |
| { | |
| return 6; | |
| } | |
| return 6; | |
| } | |
| int func_93() | |
| { | |
| int iVar0; | |
| if (SCRIPT::IS_THREAD_ACTIVE(Global_1A045.f_46B1.f_18B)) | |
| { | |
| return 0; | |
| } | |
| iVar0 = (3 - 3); | |
| if (iVar0 < 3) | |
| { | |
| if (ENTITY::DOES_ENTITY_EXIST(Global_15DCA[iVar0])) | |
| { | |
| return 0; | |
| } | |
| } | |
| return 1; | |
| } | |
| int func_94() | |
| { | |
| int iVar0; | |
| iVar0 = 0; | |
| while (iVar0 < Global_1A045.f_1E02.f_88) | |
| { | |
| if (Global_1A045.f_1E02[iVar0 /*15*/] == 2033185762) | |
| { | |
| return 0; | |
| } | |
| iVar0++; | |
| } | |
| return 1; | |
| } | |
| bool func_95() | |
| { | |
| return GAMEPLAY::IS_BIT_SET(Global_1A045.f_4888[26 /*6*/], 3); | |
| } | |
| int func_96() | |
| { | |
| return func_47(15); | |
| } | |
| int func_97() | |
| { | |
| float fVar0; | |
| if (Global_15A8A == -1) | |
| { | |
| Global_15A8A = GAMEPLAY::GET_GAME_TIMER(); | |
| } | |
| if ((GAMEPLAY::GET_GAME_TIMER() - Global_15A8A) > 240000) | |
| { | |
| Global_15A8A = -1; | |
| return 1; | |
| } | |
| if (!PED::IS_PED_INJURED(PLAYER::PLAYER_PED_ID())) | |
| { | |
| fVar0 = SYSTEM::VDIST2(ENTITY::GET_ENTITY_COORDS(PLAYER::PLAYER_PED_ID(), true), func_98(212, 0)); | |
| if (fVar0 > 22500.00f) | |
| { | |
| Global_15A8A = -1; | |
| return 1; | |
| } | |
| } | |
| return 0; | |
| } | |
| Vector3 func_98(int iParam0, int iParam1) | |
| { | |
| int iVar0; | |
| iVar0 = iParam0; | |
| if ((iVar0 < 0 || iVar0 >= 263) || iParam0 == 263) | |
| { | |
| return 0.00f, 0.00f, 0.00f; | |
| } | |
| return Global_661C[iVar0 /*23*/][iParam1 /*3*/]; | |
| } | |
| var func_99() | |
| { | |
| return Global_1A045.f_2377.f_14A[71 /*6*/]; | |
| } | |
| int func_100() | |
| { | |
| if (Global_1A045.f_2377.f_63.f_CD[8] == 4) | |
| { | |
| return 1; | |
| } | |
| return 0; | |
| } | |
| bool func_101() | |
| { | |
| return !Global_1A045.f_2377.f_63.f_3A[77]; | |
| } | |
| var func_102() | |
| { | |
| return Global_1A045.f_2377.f_63.f_3A[77]; | |
| } | |
| int func_103() | |
| { | |
| if (func_47(88)) | |
| { | |
| return 1; | |
| } | |
| else if (func_104(88)) | |
| { | |
| return 1; | |
| } | |
| return 0; | |
| } | |
| int func_104(int iParam0) | |
| { | |
| int iVar0; | |
| if (iParam0 == 94 || iParam0 == -1) | |
| { | |
| return 0; | |
| } | |
| if (Global_15691[iParam0 /*2*/]) | |
| { | |
| return 1; | |
| } | |
| iVar0 = 0; | |
| while (iVar0 < Global_149F0) | |
| { | |
| if (Global_149F0[iVar0 /*5*/] != -1) | |
| { | |
| if (Global_118B3.f_6D[Global_149F0[iVar0 /*5*/] /*4*/] == iParam0) | |
| { | |
| return 1; | |
| } | |
| } | |
| iVar0++; | |
| } | |
| return 0; | |
| } | |
| bool func_105() | |
| { | |
| return !Global_1A045.f_2377.f_63.f_3A[12]; | |
| } | |
| var func_106() | |
| { | |
| return Global_1A045.f_2377.f_63.f_3A[12]; | |
| } | |
| bool func_107() | |
| { | |
| return !Global_1A045.f_2377.f_63.f_3A[34]; | |
| } | |
| int func_108() | |
| { | |
| if (!func_47(40)) | |
| { | |
| return 0; | |
| } | |
| if (!PED::IS_PED_INJURED(PLAYER::PLAYER_PED_ID())) | |
| { | |
| if (SYSTEM::VDIST2(func_98(181, 0), ENTITY::GET_ENTITY_COORDS(PLAYER::PLAYER_PED_ID(), true)) > 40000.00f) | |
| { | |
| return 1; | |
| } | |
| } | |
| if (Global_15A8A == -1) | |
| { | |
| Global_15A8A = GAMEPLAY::GET_GAME_TIMER(); | |
| } | |
| if ((GAMEPLAY::GET_GAME_TIMER() - Global_15A8A) > 30000) | |
| { | |
| Global_15A8A = -1; | |
| return 1; | |
| } | |
| return 0; | |
| } | |
| int func_109() | |
| { | |
| int iVar0; | |
| int iVar1; | |
| bool bVar2; | |
| iVar0 = 0; | |
| while (iVar0 < 10) | |
| { | |
| iVar1 = 0; | |
| while (iVar1 < Global_15E8D[iVar0 /*19*/]) | |
| { | |
| bVar2 = false; | |
| switch (iVar0) | |
| { | |
| case 1: | |
| case 2: | |
| bVar2 = func_47(90); | |
| break; | |
| case 3: | |
| bVar2 = func_47(74); | |
| break; | |
| case 4: | |
| bVar2 = func_47(75); | |
| break; | |
| case 5: | |
| bVar2 = func_47(93); | |
| break; | |
| case 6: | |
| bVar2 = func_47(69); | |
| break; | |
| case 7: | |
| bVar2 = func_47(70); | |
| break; | |
| case 8: | |
| bVar2 = func_47(84); | |
| break; | |
| case 9: | |
| bVar2 = func_47(85); | |
| break; | |
| } | |
| if (bVar2 && Global_1A045.f_1.f_C[iVar0 /*6*/][iVar1] == 12) | |
| { | |
| return 1; | |
| } | |
| iVar1++; | |
| } | |
| iVar0++; | |
| } | |
| return 0; | |
| } | |
| bool func_110() | |
| { | |
| return !Global_1A045.f_2377.f_63.f_3A[45]; | |
| } | |
| var func_111() | |
| { | |
| return Global_1A045.f_2377.f_63.f_3A[45]; | |
| } | |
| int func_112() | |
| { | |
| if (func_113(0)) | |
| { | |
| return 0; | |
| } | |
| return 1; | |
| } | |
| int func_113(int iParam0) | |
| { | |
| int iVar0; | |
| int iVar1; | |
| int iVar2; | |
| if (iParam0 >= 161) | |
| { | |
| return 0; | |
| } | |
| iVar0 = func_92(iParam0); | |
| if (iVar0 != 7) | |
| { | |
| iVar1 = 0; | |
| while (iVar1 < 9) | |
| { | |
| if (Global_1A045.f_46B1.f_AF[iVar1 /*19*/] == iVar0 || Global_1A045.f_46B1.f_AF[iVar1 /*19*/].f_1 == iVar0) | |
| { | |
| iVar2 = Global_15DE0[iVar1 /*2*/]; | |
| if (iVar2 == 3 || iVar2 == 4) | |
| { | |
| return 1; | |
| } | |
| } | |
| iVar1++; | |
| } | |
| } | |
| return 0; | |
| } | |
| int func_114() | |
| { | |
| if (func_113(0)) | |
| { | |
| return 0; | |
| } | |
| if (func_104(49)) | |
| { | |
| return 0; | |
| } | |
| return 1; | |
| } | |
| int is_day_time() | |
| { | |
| int iVar0; | |
| if (func_113(0)) | |
| { | |
| return 0; | |
| } | |
| iVar0 = TIME::GET_CLOCK_HOURS(); | |
| if (iVar0 < 6 || iVar0 > 14) | |
| { | |
| return 0; | |
| } | |
| return 1; | |
| } | |
| int func_116() | |
| { | |
| if (Global_15A8A == -1) | |
| { | |
| Global_15A8A = GAMEPLAY::GET_GAME_TIMER(); | |
| } | |
| if (!PED::IS_PED_INJURED(PLAYER::PLAYER_PED_ID())) | |
| { | |
| if (!is_near_important_area(PLAYER::PLAYER_PED_ID(), 11, 0)) | |
| { | |
| Global_15A8A = -1; | |
| return 1; | |
| } | |
| if ((GAMEPLAY::GET_GAME_TIMER() - Global_15A8A) > 240000) | |
| { | |
| if (!is_near_important_area(PLAYER::PLAYER_PED_ID(), 10, 0)) | |
| { | |
| Global_15A8A = -1; | |
| return 1; | |
| } | |
| } | |
| } | |
| return 0; | |
| } | |
| int func_117() | |
| { | |
| return 1; | |
| } | |
| void func_118(int iParam0) | |
| { | |
| int iVar0; | |
| if (Global_906C_lastHandledIndex != -1) | |
| { | |
| if (GAMEPLAY::IS_BIT_SET(Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/].f_1, 1) && !Global_1A045.f_1E02.f_391) | |
| { | |
| func_139(iParam0, 0); | |
| } | |
| else | |
| { | |
| Global_1A045.f_1E02.f_390 = 1; | |
| func_120(Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/].f_6, get_active_char_index()); | |
| func_119(); | |
| func_53(&(Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/])); | |
| Global_1A045.f_1E02.f_38F = Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/]; | |
| Global_9070_nextNotificationTime = *iParam0 + 20000; | |
| Global_9071[Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/].f_6] = *iParam0 + 20000; | |
| func_11(Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/]); | |
| func_10(Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/]); | |
| func_14(Global_906C_lastHandledIndex); | |
| if (GAMEPLAY::IS_BIT_SET(Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/].f_1, 15)) | |
| { | |
| switch (get_active_char_index()) | |
| { | |
| case 0: | |
| iVar0 = 0; | |
| break; | |
| case 1: | |
| iVar0 = 1; | |
| break; | |
| case 2: | |
| iVar0 = 2; | |
| break; | |
| } | |
| func_13(Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/].f_6, iVar0); | |
| GAMEPLAY::CLEAR_BIT(&(Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/].f_1), 15); | |
| } | |
| if (func_48(3)) | |
| { | |
| if (!func_47(1)) | |
| { | |
| if (is_this_help_message_being_displayed("AM_H_FCAL2")) | |
| { | |
| UI::CLEAR_HELP(0); | |
| } | |
| } | |
| } | |
| } | |
| } | |
| } | |
| void func_119() | |
| { | |
| struct<165> Var0; | |
| Var0 = 16; | |
| Global_8FC7 = {Var0}; | |
| } | |
| void func_120(int iParam0, int iParam1) | |
| { | |
| int iVar0; | |
| int iVar1; | |
| int iVar2; | |
| if (iParam0 != iParam1) | |
| { | |
| iVar0 = func_92(iParam0); | |
| iVar1 = func_92(iParam1); | |
| if (iVar0 != 7 && iVar1 != 7) | |
| { | |
| iVar2 = func_91(iVar0, iVar1); | |
| if (iVar2 != 10) | |
| { | |
| func_121(&(Global_1A045.f_46B1.f_AF[iVar2 /*19*/].f_5)); | |
| Global_1A045.f_46B1.f_AF[iVar2 /*19*/].f_8 = 0; | |
| } | |
| } | |
| } | |
| } | |
| void func_121(int iParam0) | |
| { | |
| func_68(iParam0, 0.00f); | |
| } | |
| int func_122() | |
| { | |
| if (Global_3DFA == 0) | |
| { | |
| return 1; | |
| } | |
| return 0; | |
| } | |
| void func_123(int iParam0) | |
| { | |
| if (func_126()) | |
| { | |
| return; | |
| } | |
| if (Global_3985) | |
| { | |
| func_125(0, 0); | |
| } | |
| if (Global_38D9.f_1 == 10 || Global_38D9.f_1 == 9) | |
| { | |
| GAMEPLAY::SET_BIT(&Global_978, 16); | |
| } | |
| if (AUDIO::IS_MOBILE_PHONE_CALL_ONGOING()) | |
| { | |
| AUDIO::STOP_SCRIPTED_CONVERSATION(false); | |
| } | |
| Global_3DFA = 5; | |
| if (iParam0 == 1) | |
| { | |
| GAMEPLAY::SET_BIT(&Global_977, 30); | |
| } | |
| else | |
| { | |
| GAMEPLAY::CLEAR_BIT(&Global_977, 30); | |
| } | |
| if (!func_124()) | |
| { | |
| Global_38D9.f_1 = 3; | |
| } | |
| } | |
| int func_124() | |
| { | |
| if (Global_38D9.f_1 == 1 || Global_38D9.f_1 == 0) | |
| { | |
| return 1; | |
| } | |
| return 0; | |
| } | |
| void func_125(bool bParam0, bool bParam1) | |
| { | |
| if (bParam0) | |
| { | |
| if (is_phone_in_use(0)) | |
| { | |
| Global_3985 = 1; | |
| if (bParam1) | |
| { | |
| MOBILE::GET_MOBILE_PHONE_POSITION(&Global_389A); | |
| } | |
| Global_3891 = {Global_38A3[Global_38A2 /*3*/]}; | |
| MOBILE::SET_MOBILE_PHONE_POSITION(Global_3891); | |
| } | |
| } | |
| else if (Global_3985 == 1) | |
| { | |
| Global_3985 = 0; | |
| Global_3891 = {Global_38AA[Global_38A2 /*3*/]}; | |
| if (bParam1) | |
| { | |
| MOBILE::SET_MOBILE_PHONE_POSITION(Global_389A); | |
| } | |
| else | |
| { | |
| MOBILE::SET_MOBILE_PHONE_POSITION(Global_3891); | |
| } | |
| } | |
| } | |
| bool func_126() | |
| { | |
| return GAMEPLAY::IS_BIT_SET(Global_19A8DC, 19); | |
| } | |
| void func_127() | |
| { | |
| Global_398C = 0; | |
| func_128(); | |
| } | |
| void func_128() | |
| { | |
| if (AUDIO::IS_MOBILE_PHONE_CALL_ONGOING() || Global_38D8 == 1) | |
| { | |
| AUDIO::RESTART_SCRIPTED_CONVERSATION(); | |
| Global_41ED = 0; | |
| AUDIO::STOP_SCRIPTED_CONVERSATION(false); | |
| Global_3DFA = 6; | |
| Global_38D9.f_1 = Global_38DB; | |
| return; | |
| } | |
| } | |
| int func_129() | |
| { | |
| switch (func_130(&Global_906D, 5, 0, 0, 0)) | |
| { | |
| case 1: | |
| return 1; | |
| break; | |
| case 0: | |
| func_123(0); | |
| break; | |
| } | |
| return 0; | |
| } | |
| int func_130(var uParam0, int iParam1, int iParam2, bool bParam3, int iParam4) | |
| { | |
| int iVar0; | |
| if (iParam1 == 7) | |
| { | |
| return 0; | |
| } | |
| if (!bParam3) | |
| { | |
| if (Global_16436.f_2C == 1) | |
| { | |
| return 2; | |
| } | |
| } | |
| if (iParam1 == 0) | |
| { | |
| if (func_132(0)) | |
| { | |
| return 0; | |
| } | |
| Global_8E25++; | |
| *uParam0 = Global_8E25; | |
| PLAYER::SET_PLAYER_INVINCIBLE(PLAYER::GET_PLAYER_INDEX(), 0); | |
| Global_4378.f_5 = 0; | |
| if (iParam2 != 5) | |
| { | |
| PLAYER::FORCE_CLEANUP(8); | |
| } | |
| Global_8E49 = iParam2; | |
| Global_8E23 = *uParam0; | |
| Global_8E24 = iParam4; | |
| Global_8E22 = 0; | |
| return 1; | |
| } | |
| if (*uParam0 != -1) | |
| { | |
| if (Global_8E22 > 0) | |
| { | |
| iVar0 = 0; | |
| iVar0 = 0; | |
| while (iVar0 < Global_8E22) | |
| { | |
| if (Global_8E28[iVar0 /*4*/] == *uParam0) | |
| { | |
| return 2; | |
| } | |
| iVar0++; | |
| } | |
| } | |
| else if (Global_8E23 == *uParam0) | |
| { | |
| return 1; | |
| } | |
| *uParam0 = -1; | |
| } | |
| if (*uParam0 == -1) | |
| { | |
| if (!func_147(iParam2)) | |
| { | |
| return 0; | |
| } | |
| if (Global_8E22 == 8) | |
| { | |
| return 0; | |
| } | |
| Global_8E25++; | |
| *uParam0 = Global_8E25; | |
| Global_8E28[Global_8E22 /*4*/] = Global_8E25; | |
| Global_8E28[Global_8E22 /*4*/].f_1 = iParam1; | |
| Global_8E28[Global_8E22 /*4*/].f_2 = iParam2; | |
| Global_8E28[Global_8E22 /*4*/].f_3 = 0; | |
| Global_8E22++; | |
| if (iParam4 != 0) | |
| { | |
| func_131(uParam0, iParam4); | |
| } | |
| } | |
| return 2; | |
| } | |
| void func_131(var uParam0, int iParam1) | |
| { | |
| int iVar0; | |
| if (Global_8E22 == 0) | |
| { | |
| return; | |
| } | |
| if (*uParam0 == -1) | |
| { | |
| return; | |
| } | |
| iVar0 = 0; | |
| iVar0 = 0; | |
| while (iVar0 < Global_8E22) | |
| { | |
| if (Global_8E28[iVar0 /*4*/] == *uParam0) | |
| { | |
| Global_8E28[iVar0 /*4*/].f_3 = iParam1; | |
| } | |
| iVar0++; | |
| } | |
| *uParam0 = -1; | |
| } | |
| int func_132(int iParam0) | |
| { | |
| if (Global_8E49 == 15) | |
| { | |
| return 0; | |
| } | |
| if (func_147(iParam0)) | |
| { | |
| return 0; | |
| } | |
| return 1; | |
| } | |
| void func_133(int iParam0) | |
| { | |
| if (iParam0 == 1) | |
| { | |
| GAMEPLAY::SET_BIT(&Global_977, 20); | |
| } | |
| else | |
| { | |
| GAMEPLAY::CLEAR_BIT(&Global_977, 20); | |
| } | |
| } | |
| int func_134() | |
| { | |
| if (Global_3DFA == 4) | |
| { | |
| if (AUDIO::IS_MOBILE_PHONE_CALL_ONGOING()) | |
| { | |
| return 1; | |
| } | |
| else | |
| { | |
| return 0; | |
| } | |
| } | |
| return 0; | |
| } | |
| int is_phone_in_use(int onlyOut) | |
| { | |
| if (onlyOut == 1) | |
| { | |
| if (Global_38D9.f_1 > 3) | |
| { | |
| if (GAMEPLAY::IS_BIT_SET(Global_977, 14)) | |
| { | |
| return 1; | |
| } | |
| else | |
| { | |
| return 0; | |
| } | |
| } | |
| else | |
| { | |
| return 0; | |
| } | |
| } | |
| if (SCRIPT::_GET_NUM_OF_INSTANCES_OF_SCRIPT_WITH_NAME_HASH(-754107665) > 0) // 'cellphone_flashhand' | |
| { | |
| return 1; | |
| } | |
| if (Global_38D9.f_1 > 3) | |
| { | |
| return 1; | |
| } | |
| return 0; | |
| } | |
| int func_136() | |
| { | |
| if (Global_3E2B == 1 || Global_41F2 == 1) | |
| { | |
| return 1; | |
| } | |
| return 0; | |
| } | |
| int func_137() | |
| { | |
| if (Global_41F2) | |
| { | |
| return 1; | |
| } | |
| return 0; | |
| } | |
| int func_138() | |
| { | |
| if (Global_38CA) | |
| { | |
| return 1; | |
| } | |
| return 0; | |
| } | |
| void func_139(int iParam0, int iParam1) | |
| { | |
| int iVar0; | |
| int iVar1; | |
| func_123(0); | |
| if (is_this_help_message_being_displayed("AM_H_FCAL1")) | |
| { | |
| UI::CLEAR_HELP(0); | |
| } | |
| if (GAMEPLAY::IS_BIT_SET(Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/].f_1, 15)) | |
| { | |
| switch (get_active_char_index()) | |
| { | |
| case 0: | |
| iVar0 = 0; | |
| break; | |
| case 1: | |
| iVar0 = 1; | |
| break; | |
| case 2: | |
| iVar0 = 2; | |
| break; | |
| } | |
| func_13(Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/].f_6, iVar0); | |
| GAMEPLAY::CLEAR_BIT(&(Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/].f_1), 15); | |
| } | |
| if (GAMEPLAY::IS_BIT_SET(Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/].f_1, 1)) | |
| { | |
| if (!Global_1A045.f_1E02.f_391) | |
| { | |
| GAMEPLAY::SET_BIT(&(Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/].f_1), 10); | |
| func_143(&(Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/])); | |
| if (Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/].f_6 == 17) | |
| { | |
| func_54(125, 0); | |
| } | |
| else if (Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/].f_6 == 14) | |
| { | |
| func_54(126, 0); | |
| } | |
| else if (Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/].f_6 == 15) | |
| { | |
| func_54(127, 0); | |
| } | |
| } | |
| } | |
| if (Global_906D != -1) | |
| { | |
| func_70(); | |
| func_72(&Global_906D); | |
| iVar1 = 0; | |
| while (iVar1 < 9) | |
| { | |
| if (Global_1A045.f_46B1.f_AF[iVar1 /*19*/].f_8 == 0) | |
| { | |
| func_68(&(Global_1A045.f_46B1.f_AF[iVar1 /*19*/].f_5), 300.00f); | |
| } | |
| iVar1++; | |
| } | |
| } | |
| if (GAMEPLAY::IS_BIT_SET(Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/].f_1, 10) || iParam1) | |
| { | |
| func_142(*iParam0, &(Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/]), 0); | |
| if (GAMEPLAY::IS_BIT_SET(Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/].f_1, 3)) | |
| { | |
| if (Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/].f_5 < 300000) | |
| { | |
| Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/].f_5 = (Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/].f_5 + 60000); | |
| } | |
| } | |
| if (GAMEPLAY::IS_BIT_SET(Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/].f_1, 8)) | |
| { | |
| func_143(&(Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/])); | |
| } | |
| } | |
| else if (GAMEPLAY::IS_BIT_SET(Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/].f_1, 11)) | |
| { | |
| create_text_message_object(Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/].f_A, 1, Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/].f_2, Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/].f_6, Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/].f_5, Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/].f_5, Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/].f_7, Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/].f_8, Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/].f_9, Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/].f_1, 1); | |
| Global_1A045.f_1E02.f_38F = Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/]; | |
| Global_1A045.f_1E02.f_390 = 0; | |
| func_11(Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/]); | |
| func_10(Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/]); | |
| func_14(Global_906C_lastHandledIndex); | |
| } | |
| else | |
| { | |
| Global_1A045.f_1E02.f_38F = Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/]; | |
| Global_1A045.f_1E02.f_390 = 0; | |
| func_11(Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/]); | |
| func_10(Global_1A045.f_1E02[Global_906C_lastHandledIndex /*15*/]); | |
| func_14(Global_906C_lastHandledIndex); | |
| } | |
| func_119(); | |
| Global_906C_lastHandledIndex = -1; | |
| } | |
| int create_text_message_object(var uParam0, int iParam1, int iParam2, int iParam3, int iParam4, int iParam5, int iParam6, int iParam7, var uParam8, var uParam9, int iParam10) | |
| { | |
| struct<14> Var0; | |
| if (func_4(0)) | |
| { | |
| return 0; | |
| } | |
| if (iParam4 < 0) | |
| { | |
| return 0; | |
| } | |
| if (iParam5 < 0) | |
| { | |
| return 0; | |
| } | |
| if (iParam6 == 76) | |
| { | |
| return 0; | |
| } | |
| if (iParam7 == 235) | |
| { | |
| return 0; | |
| } | |
| if (iParam3 < 3) | |
| { | |
| if (GAMEPLAY::IS_BIT_SET(iParam2, iParam3)) | |
| { | |
| return 0; | |
| } | |
| } | |
| if (iParam2 < 1 || iParam2 > 7) | |
| { | |
| return 0; | |
| } | |
| if (Global_1A045.f_1E02.f_2FC < 8) | |
| { | |
| Var0 = uParam0; | |
| Var0.f_3 = func_141(iParam1); | |
| Var0.f_4 = (GAMEPLAY::GET_GAME_TIMER() + iParam4); | |
| Var0.f_5 = iParam5; | |
| Var0.f_1 = uParam9; | |
| Var0.f_2 = iParam2; | |
| Var0.f_6 = iParam3; | |
| Var0.f_7 = iParam6; | |
| Var0.f_8 = iParam7; | |
| Var0.f_9 = uParam8; | |
| Var0.f_A = -1; | |
| Var0.f_B = -1; | |
| Var0.f_D = iParam10; | |
| GAMEPLAY::CLEAR_BIT(&(Var0.f_1), 0); | |
| Global_1A045.f_1E02.f_28B[Global_1A045.f_1E02.f_2FC /*14*/] = {Var0}; | |
| Global_1A045.f_1E02.f_2FC++; | |
| func_8(0); | |
| func_8(1); | |
| func_8(2); | |
| return 1; | |
| } | |
| return 0; | |
| } | |
| int func_141(int iParam0) | |
| { | |
| 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_142(int iParam0, var uParam1, bool bParam2) | |
| { | |
| if (uParam1->f_3 == 5) | |
| { | |
| uParam1->f_4 = iParam0 + 1000; | |
| } | |
| else if (bParam2) | |
| { | |
| uParam1->f_4 = iParam0 + 10000; | |
| } | |
| else | |
| { | |
| uParam1->f_4 = (iParam0 + uParam1->f_5); | |
| } | |
| } | |
| void func_143(var uParam0) | |
| { | |
| if (!func_146(*uParam0)) | |
| { | |
| if (Global_1A045.f_1E02.f_C6 < 4) | |
| { | |
| Global_1A045.f_1E02.f_89[Global_1A045.f_1E02.f_C6 /*15*/] = {*uParam0}; | |
| Global_1A045.f_1E02.f_C6++; | |
| func_144(uParam0->f_6); | |
| } | |
| } | |
| } | |
| int func_144(int iParam0) | |
| { | |
| int iVar0; | |
| if (Global_75[iParam0 /*10*/].f_8 != 147) | |
| { | |
| Global_1A045.f_6D8C[iParam0 /*29*/].f_13[Global_38D9] = 1; | |
| if (Global_1A045.f_6D8C[iParam0 /*29*/].f_C[Global_38D9] == 0) | |
| { | |
| iVar0 = Global_38D9; | |
| func_145(iParam0, iVar0, 0); | |
| } | |
| return 1; | |
| } | |
| return 0; | |
| } | |
| void func_145(int iParam0, int iParam1, bool bParam2) | |
| { | |
| if (Global_75[iParam0 /*10*/].f_8 != 147) | |
| { | |
| if (iParam1 == 4) | |
| { | |
| Global_1A045.f_6D8C[iParam0 /*29*/].f_C[0] = 1; | |
| Global_1A045.f_6D8C[iParam0 /*29*/].f_C[1] = 1; | |
| Global_1A045.f_6D8C[iParam0 /*29*/].f_C[2] = 1; | |
| Global_1A045.f_6D8C[iParam0 /*29*/].f_18[0] = 0; | |
| Global_1A045.f_6D8C[iParam0 /*29*/].f_18[1] = 0; | |
| Global_1A045.f_6D8C[iParam0 /*29*/].f_18[2] = 0; | |
| } | |
| else | |
| { | |
| Global_1A045.f_6D8C[iParam0 /*29*/].f_C[iParam1] = 1; | |
| Global_1A045.f_6D8C[iParam0 /*29*/].f_18[iParam1] = 0; | |
| } | |
| if (bParam2) | |
| { | |
| Global_BD9[1 /*6*/] = {Global_1A045.f_6D8C[iParam0 /*29*/].f_3}; | |
| Global_BD9[1 /*6*/].f_5 = iParam1; | |
| GAMEPLAY::SET_BIT(&Global_977, 0); | |
| } | |
| } | |
| } | |
| int func_146(int iParam0) | |
| { | |
| int iVar0; | |
| iVar0 = 0; | |
| while (iVar0 < Global_1A045.f_1E02.f_C6) | |
| { | |
| if (Global_1A045.f_1E02.f_89[iVar0 /*15*/] == iParam0) | |
| { | |
| return 1; | |
| } | |
| iVar0++; | |
| } | |
| return 0; | |
| } | |
| bool func_147(int iParam0) | |
| { | |
| return func_148(iParam0, Global_8E49); | |
| } | |
| int func_148(int iParam0, int iParam1) | |
| { | |
| if (iParam1 == 15) | |
| { | |
| return 1; | |
| } | |
| if (iParam0 == 15) | |
| { | |
| return 0; | |
| } | |
| switch (iParam0) | |
| { | |
| case 16: | |
| switch (iParam1) | |
| { | |
| case 9: | |
| case 10: | |
| case 7: | |
| case 13: | |
| case 14: | |
| return 0; | |
| break; | |
| } | |
| return 1; | |
| break; | |
| case 0: | |
| switch (iParam1) | |
| { | |
| case 5: | |
| case 17: | |
| return 1; | |
| break; | |
| } | |
| break; | |
| case 2: | |
| case 3: | |
| switch (iParam1) | |
| { | |
| case 5: | |
| case 6: | |
| case 8: | |
| case 17: | |
| return 1; | |
| break; | |
| } | |
| break; | |
| case 4: | |
| if (iParam1 == 17) | |
| { | |
| return 1; | |
| } | |
| break; | |
| case 5: | |
| break; | |
| case 6: | |
| case 8: | |
| if (iParam1 == 5) | |
| { | |
| return 1; | |
| } | |
| break; | |
| case 7: | |
| if (iParam1 == 6) | |
| { | |
| return 1; | |
| } | |
| break; | |
| case 9: | |
| if (iParam1 == 5) | |
| { | |
| return 1; | |
| } | |
| break; | |
| case 10: | |
| switch (iParam1) | |
| { | |
| case 5: | |
| case 6: | |
| case 17: | |
| return 1; | |
| break; | |
| } | |
| break; | |
| case 11: | |
| if (iParam1 == 5) | |
| { | |
| return 1; | |
| } | |
| break; | |
| case 17: | |
| switch (iParam1) | |
| { | |
| case 17: | |
| case 12: | |
| case 5: | |
| return 1; | |
| break; | |
| } | |
| break; | |
| case 18: | |
| case 12: | |
| switch (iParam1) | |
| { | |
| case 5: | |
| case 6: | |
| case 8: | |
| return 1; | |
| break; | |
| } | |
| break; | |
| case 13: | |
| switch (iParam1) | |
| { | |
| case 5: | |
| return 1; | |
| break; | |
| } | |
| break; | |
| case 14: | |
| switch (iParam1) | |
| { | |
| case 5: | |
| return 1; | |
| break; | |
| } | |
| break; | |
| } | |
| return 0; | |
| } | |
| void func_149() | |
| { | |
| if (iLocal_84 == 1) | |
| { | |
| if (!func_168()) | |
| { | |
| AUDIO::STOP_SOUND(iLocal_89); | |
| AUDIO::PLAY_SOUND_FRONTEND(-1, "End_Squelch", "CB_RADIO_SFX", 1); | |
| iLocal_84 = 0; | |
| } | |
| else if (!PED::IS_PED_IN_ANY_VEHICLE(PLAYER::PLAYER_PED_ID(), 1)) | |
| { | |
| func_166(); | |
| AUDIO::STOP_SOUND(iLocal_89); | |
| AUDIO::PLAY_SOUND_FRONTEND(-1, "End_Squelch", "CB_RADIO_SFX", 1); | |
| iLocal_84 = 0; | |
| } | |
| } | |
| else if ((GAMEPLAY::GET_GAME_TIMER() - iLocal_86) >= 10000 || iLocal_85 >= 1) | |
| { | |
| if (get_active_char_index() == 2) | |
| { | |
| if (PLAYER::IS_PLAYER_PLAYING(PLAYER::PLAYER_ID())) | |
| { | |
| if (PED::IS_PED_IN_ANY_VEHICLE(PLAYER::PLAYER_PED_ID(), 0)) | |
| { | |
| if (AUDIO::_IS_VEHICLE_RADIO_LOUD(PED::GET_VEHICLE_PED_IS_IN(PLAYER::PLAYER_PED_ID(), 0))) | |
| { | |
| switch (iLocal_85) | |
| { | |
| case -1: | |
| iLocal_87 = GAMEPLAY::GET_GAME_TIMER(); | |
| iLocal_88 = GAMEPLAY::GET_GAME_TIMER(); | |
| iLocal_85++; | |
| iLocal_89 = AUDIO::GET_SOUND_ID(); | |
| break; | |
| case 0: | |
| if ((GAMEPLAY::GET_GAME_TIMER() - iLocal_87) >= 120000) | |
| { | |
| iLocal_85 = 1; | |
| } | |
| if ((GAMEPLAY::GET_GAME_TIMER() - iLocal_88) >= 300000) | |
| { | |
| iLocal_85 = 2; | |
| } | |
| break; | |
| case 1: | |
| if (func_165()) | |
| { | |
| iLocal_84 = 1; | |
| iLocal_87 = GAMEPLAY::GET_GAME_TIMER(); | |
| iLocal_85 = 0; | |
| } | |
| break; | |
| case 2: | |
| if (func_150()) | |
| { | |
| iLocal_84 = 1; | |
| iLocal_88 = GAMEPLAY::GET_GAME_TIMER(); | |
| iLocal_85 = 0; | |
| } | |
| break; | |
| } | |
| } | |
| } | |
| else if (iLocal_85 != -1) | |
| { | |
| iLocal_85 = -1; | |
| } | |
| } | |
| } | |
| iLocal_86 = GAMEPLAY::GET_GAME_TIMER(); | |
| } | |
| } | |
| int func_150() | |
| { | |
| struct<2> Var0; | |
| int iVar4; | |
| struct<2> Var5; | |
| bool bVar9; | |
| int iVar10; | |
| int iVar11; | |
| struct<2> Var12; | |
| bVar9 = func_164(); | |
| if (bVar9) | |
| { | |
| StringCopy(&Var0, "CB_MON", 16); | |
| iVar4 = func_162(); | |
| StringIntConCat(&Var0, iVar4, 16); | |
| StringCopy(&Var5, "CB_CHAR", 16); | |
| StringIntConCat(&Var5, iVar4, 16); | |
| func_161(&uLocal_91, 3, 0, &Var5, 0, 0); | |
| if (func_152(&uLocal_91, "CBRADAU", &Var0, 1, 1, 0, 0)) | |
| { | |
| AUDIO::PLAY_SOUND_FRONTEND(-1, "Start_Squelch", "CB_RADIO_SFX", 1); | |
| AUDIO::PLAY_SOUND_FRONTEND(iLocal_89, "Background_Loop", "CB_RADIO_SFX", 1); | |
| return 1; | |
| } | |
| } | |
| else | |
| { | |
| StringCopy(&Var0, "CB_CONVO", 16); | |
| iVar4 = GAMEPLAY::GET_RANDOM_INT_IN_RANGE(1, 23); | |
| StringIntConCat(&Var0, iVar4, 16); | |
| func_151(iVar4, &iVar10, &iVar11); | |
| StringCopy(&Var5, "CB_CHAR", 16); | |
| StringIntConCat(&Var5, iVar10, 16); | |
| func_161(&uLocal_91, 3, 0, &Var5, 0, 0); | |
| StringCopy(&Var12, "CB_CHAR", 16); | |
| StringIntConCat(&Var12, iVar11, 16); | |
| func_161(&uLocal_91, 4, 0, &Var12, 0, 0); | |
| if (func_152(&uLocal_91, "CBRADAU", &Var0, 1, 1, 0, 0)) | |
| { | |
| AUDIO::PLAY_SOUND_FRONTEND(-1, "Start_Squelch", "CB_RADIO_SFX", 1); | |
| AUDIO::PLAY_SOUND_FRONTEND(iLocal_89, "Background_Loop", "CB_RADIO_SFX", 1); | |
| return 1; | |
| } | |
| } | |
| return 0; | |
| } | |
| void func_151(int iParam0, var uParam1, var uParam2) | |
| { | |
| switch (iParam0) | |
| { | |
| case 1: | |
| *uParam1 = 1; | |
| *uParam2 = 8; | |
| break; | |
| case 2: | |
| *uParam1 = 5; | |
| *uParam2 = 2; | |
| break; | |
| case 3: | |
| *uParam1 = 3; | |
| *uParam2 = 10; | |
| break; | |
| case 4: | |
| *uParam1 = 4; | |
| *uParam2 = 13; | |
| break; | |
| case 5: | |
| *uParam1 = 7; | |
| *uParam2 = 6; | |
| break; | |
| case 6: | |
| *uParam1 = 12; | |
| *uParam2 = 9; | |
| break; | |
| case 7: | |
| *uParam1 = 11; | |
| *uParam2 = 44; | |
| break; | |
| case 8: | |
| *uParam1 = 34; | |
| *uParam2 = 14; | |
| break; | |
| case 9: | |
| *uParam1 = 15; | |
| *uParam2 = 28; | |
| break; | |
| case 10: | |
| *uParam1 = 43; | |
| *uParam2 = 16; | |
| break; | |
| case 11: | |
| *uParam1 = 17; | |
| *uParam2 = 18; | |
| break; | |
| case 12: | |
| *uParam1 = 19; | |
| *uParam2 = 20; | |
| break; | |
| case 13: | |
| *uParam1 = 26; | |
| *uParam2 = 21; | |
| break; | |
| case 14: | |
| *uParam1 = 22; | |
| *uParam2 = 23; | |
| break; | |
| case 15: | |
| *uParam1 = 24; | |
| *uParam2 = 25; | |
| break; | |
| case 16: | |
| *uParam1 = 27; | |
| *uParam2 = 29; | |
| break; | |
| case 17: | |
| *uParam1 = 30; | |
| *uParam2 = 31; | |
| break; | |
| case 18: | |
| *uParam1 = 33; | |
| *uParam2 = 32; | |
| break; | |
| case 19: | |
| *uParam1 = 35; | |
| *uParam2 = 36; | |
| break; | |
| case 20: | |
| *uParam1 = 38; | |
| *uParam2 = 37; | |
| break; | |
| case 21: | |
| *uParam1 = 40; | |
| *uParam2 = 39; | |
| break; | |
| case 22: | |
| *uParam1 = 41; | |
| *uParam2 = 42; | |
| break; | |
| default: | |
| *uParam1 = 1; | |
| *uParam2 = 2; | |
| break; | |
| } | |
| } | |
| bool func_152(var uParam0, char *sParam1, char *sParam2, int iParam3, int iParam4, int iParam5, int iParam6) | |
| { | |
| func_160(uParam0, 145, sParam1, iParam4, iParam5, iParam6); | |
| if (iParam3 > 7) | |
| { | |
| if (iParam3 < 12) | |
| { | |
| iParam3 = 7; | |
| } | |
| } | |
| Global_3E01 = 0; | |
| Global_3E03 = 0; | |
| Global_3E08 = 0; | |
| Global_41D9 = 0; | |
| Global_41DB = 0; | |
| Global_41DF = 0; | |
| Global_280001 = 0; | |
| return func_153(sParam2, iParam3, 0); | |
| } | |
| int func_153(char *sParam0, int iParam1, bool bParam2) | |
| { | |
| Global_3DFB = 0; | |
| if (Global_3DFA == 0 || Global_3DFC == 2) | |
| { | |
| if (Global_3DFA != 0) | |
| { | |
| if (iParam1 > Global_3DFC) | |
| { | |
| if (Global_3E01 == 0) | |
| { | |
| AUDIO::STOP_SCRIPTED_CONVERSATION(false); | |
| Global_38D9.f_1 = 3; | |
| Global_3DFA = 0; | |
| Global_3DFB = 1; | |
| Global_3E2F = 0; | |
| Global_3DF6 = 0; | |
| Global_3DF7 = 0; | |
| Global_3E05 = 0; | |
| Global_3E04 = 0; | |
| Global_38D8 = 0; | |
| } | |
| else | |
| { | |
| restart_scripted_conversation_helper(); | |
| return 0; | |
| } | |
| } | |
| else | |
| { | |
| return 0; | |
| } | |
| } | |
| if (AUDIO::IS_SCRIPTED_CONVERSATION_ONGOING()) | |
| { | |
| return 0; | |
| } | |
| if (func_158(8, -1)) | |
| { | |
| return 0; | |
| } | |
| Global_3E46 = {Global_3E40}; | |
| func_157(); | |
| Global_3B33 = {Global_3BD8}; | |
| Global_3E00 = Global_3E01; | |
| Global_3E07 = Global_3E08; | |
| Global_280002 = Global_280001; | |
| Global_3E09 = {Global_3E19}; | |
| Global_3E02 = Global_3E03; | |
| Global_41D8 = Global_41D9; | |
| Global_41E0 = {Global_41E6}; | |
| Global_41DA = Global_41DB; | |
| Global_41DC = Global_41DD; | |
| Global_41DE = Global_41DF; | |
| Global_3C7D.f_172 = Global_41D7; | |
| Global_3C7D.f_170 = Global_41D5; | |
| Global_3C7D.f_171 = Global_41D6; | |
| Global_3DF6 = Global_3DF7; | |
| if (Global_3E00) | |
| { | |
| GAMEPLAY::CLEAR_BIT(&Global_977, 20); | |
| GAMEPLAY::CLEAR_BIT(&Global_978, 17); | |
| GAMEPLAY::CLEAR_BIT(&Global_979, 0); | |
| if (bParam2) | |
| { | |
| func_57(); | |
| if (Global_C9C[Global_38D9 /*2811*/][0 /*281*/].f_103 == 2) | |
| { | |
| if (iParam1 == 13) | |
| { | |
| } | |
| else | |
| { | |
| return 0; | |
| } | |
| } | |
| if (Global_38D9.f_1 > 3) | |
| { | |
| return 0; | |
| } | |
| } | |
| if (Global_38B7 == 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_156()) | |
| { | |
| return 0; | |
| } | |
| if (AI::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(), -72657034)) | |
| { | |
| return 0; | |
| } | |
| if (!Global_117A6) | |
| { | |
| 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())) | |
| { | |
| return 0; | |
| } | |
| } | |
| } | |
| if (func_124()) | |
| { | |
| return 0; | |
| } | |
| else | |
| { | |
| switch (Global_38D9.f_1) | |
| { | |
| case 7: | |
| return 0; | |
| break; | |
| case 8: | |
| return 0; | |
| break; | |
| case 9: | |
| break; | |
| case 10: | |
| break; | |
| default: | |
| break; | |
| } | |
| if (GAMEPLAY::IS_BIT_SET(Global_977, 9)) | |
| { | |
| return 0; | |
| } | |
| } | |
| func_155(); | |
| Global_3E04 = bParam2; | |
| } | |
| Global_3DFC = iParam1; | |
| StringCopy(&Global_3C7D, sParam0, 24); | |
| Global_398C = 0; | |
| func_154(); | |
| return 1; | |
| } | |
| if (Global_3DFA == 5) | |
| { | |
| return 0; | |
| } | |
| if (iParam1 < Global_3DFC || iParam1 == Global_3DFC) | |
| { | |
| return 0; | |
| } | |
| if (iParam1 == 2) | |
| { | |
| } | |
| else | |
| { | |
| restart_scripted_conversation_helper(); | |
| } | |
| return 0; | |
| } | |
| void func_154() | |
| { | |
| int iVar0; | |
| iVar0 = 0; | |
| while (iVar0 <= 69) | |
| { | |
| StringCopy(&(Global_398E[iVar0 /*6*/]), "", 24); | |
| iVar0++; | |
| } | |
| AUDIO::STOP_SCRIPTED_CONVERSATION(false); | |
| Global_3DFA = 1; | |
| } | |
| void func_155() | |
| { | |
| Global_3E2F = Global_3E2E; | |
| Global_3E29 = Global_3E2A; | |
| Global_3E58 = {Global_3E4C}; | |
| Global_3E5E = {Global_3E52}; | |
| Global_3E31 = Global_3E30; | |
| Global_3E76 = {Global_3E64}; | |
| Global_3E7C = {Global_3E6A}; | |
| Global_3E82 = {Global_3E70}; | |
| Global_3E88 = {Global_3E8E}; | |
| Global_6CA = Global_6CB; | |
| Global_6CC = Global_6CD; | |
| Global_3E05 = Global_3E06; | |
| Global_3E07 = Global_3E08; | |
| Global_3E09 = {Global_3E19}; | |
| Global_3DFE = Global_3DFF; | |
| Global_41F2 = 0; | |
| Global_3E2B = 0; | |
| Global_3E2C = 0; | |
| GAMEPLAY::CLEAR_BIT(&Global_978, 16); | |
| } | |
| int func_156() | |
| { | |
| int iVar0; | |
| int iVar1; | |
| if (Global_117A6) | |
| { | |
| iVar0 = 0; | |
| WEAPON::GET_CURRENT_PED_WEAPON(PLAYER::PLAYER_PED_ID(), &iVar1, 1); | |
| if (PLAYER::IS_PLAYER_PLAYING(PLAYER::PLAYER_ID())) | |
| { | |
| if ((iVar1 == 100416529 || iVar1 == 205991906) || iVar1 == 856002082) | |
| { | |
| 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, 1)) | |
| { | |
| return 1; | |
| } | |
| else | |
| { | |
| return 0; | |
| } | |
| } | |
| return 1; | |
| } | |
| void func_157() | |
| { | |
| int iVar0; | |
| iVar0 = 0; | |
| while (iVar0 <= 15) | |
| { | |
| Global_3B33[iVar0 /*10*/] = 0; | |
| StringCopy(&(Global_3B33[iVar0 /*10*/].f_1), "", 24); | |
| Global_3B33[iVar0 /*10*/].f_7 = 0; | |
| Global_3B33[iVar0 /*10*/].f_8 = 0; | |
| iVar0++; | |
| } | |
| Global_3B33.f_A1 = -99; | |
| Global_3B33.f_A2 = {0.00f, 0.00f, 0.00f}; | |
| } | |
| bool func_158(int iParam0, int iParam1) | |
| { | |
| switch (iParam0) | |
| { | |
| case 5: | |
| if (iParam1 > -1) | |
| { | |
| return Global_14EF2B.f_CB[iParam1]; | |
| } | |
| break; | |
| } | |
| return GAMEPLAY::IS_BIT_SET(Global_14EF2B.f_418, iParam0); | |
| } | |
| void restart_scripted_conversation_helper() | |
| { | |
| AUDIO::RESTART_SCRIPTED_CONVERSATION(); | |
| Global_41ED = 0; | |
| if ((AUDIO::IS_MOBILE_PHONE_CALL_ONGOING() || Global_38D9.f_1 == 9) || Global_38D8 == 1) | |
| { | |
| AUDIO::STOP_SCRIPTED_CONVERSATION(false); | |
| Global_3DFA = 6; | |
| Global_38D9.f_1 = 3; | |
| return; | |
| } | |
| if (AUDIO::IS_SCRIPTED_CONVERSATION_ONGOING()) | |
| { | |
| AUDIO::STOP_SCRIPTED_CONVERSATION(true); | |
| Global_3DFA = 6; | |
| return; | |
| } | |
| } | |
| void func_160(var uParam0, int iParam1, char *sParam2, int iParam3, int iParam4, int iParam5) | |
| { | |
| Global_3BD8 = {*uParam0}; | |
| Global_6CB = iParam1; | |
| StringCopy(&Global_3E40, sParam2, 24); | |
| Global_41D7 = iParam5; | |
| if (iParam3 == 0) | |
| { | |
| Global_41D5 = 1; | |
| Global_41D3 = 0; | |
| } | |
| else | |
| { | |
| Global_41D5 = 0; | |
| Global_41D3 = 1; | |
| } | |
| if (iParam4 == 0) | |
| { | |
| Global_41D6 = 1; | |
| Global_41D4 = 0; | |
| } | |
| else | |
| { | |
| Global_41D6 = 0; | |
| Global_41D4 = 1; | |
| } | |
| } | |
| void func_161(var uParam0, int iParam1, int iParam2, char *sParam3, int iParam4, int iParam5) | |
| { | |
| 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_117A6) | |
| { | |
| if (!PED::IS_PED_INJURED(iParam2)) | |
| { | |
| if ((uParam0[iParam1 /*10*/])->f_8 == 0) | |
| { | |
| PED::SET_PED_CAN_PLAY_AMBIENT_ANIMS(iParam2, 0); | |
| } | |
| else | |
| { | |
| PED::SET_PED_CAN_PLAY_AMBIENT_ANIMS(iParam2, 1); | |
| } | |
| } | |
| if (!PED::IS_PED_INJURED(iParam2)) | |
| { | |
| if ((uParam0[iParam1 /*10*/])->f_9 == 0) | |
| { | |
| PED::SET_PED_CAN_USE_AUTO_CONVERSATION_LOOKAT(iParam2, 0); | |
| } | |
| else | |
| { | |
| PED::SET_PED_CAN_USE_AUTO_CONVERSATION_LOOKAT(iParam2, 1); | |
| } | |
| } | |
| } | |
| } | |
| int func_162() | |
| { | |
| int iVar0; | |
| int iVar1; | |
| int iVar2; | |
| int iVar3; | |
| iVar0 = build_time_now(); | |
| iVar1 = get_hours_from_time(iVar0); | |
| iVar2 = 0; | |
| while (iVar2 == 0) | |
| { | |
| iVar3 = GAMEPLAY::GET_RANDOM_INT_IN_RANGE(1, 44); | |
| switch (iVar3) | |
| { | |
| case 5: | |
| if (iVar1 > 19) | |
| { | |
| iVar2 = 0; | |
| } | |
| else if (iVar1 < 9) | |
| { | |
| iVar2 = 0; | |
| } | |
| else if (!check_param_with_weather(iVar3)) | |
| { | |
| iVar2 = 0; | |
| } | |
| else | |
| { | |
| iVar2 = 1; | |
| } | |
| break; | |
| default: | |
| iVar2 = 1; | |
| break; | |
| } | |
| SYSTEM::WAIT(0); | |
| } | |
| return iVar3; | |
| } | |
| int check_param_with_weather(int iParam0) | |
| { | |
| switch (iParam0) | |
| { | |
| case 5: | |
| if (((((((((GAMEPLAY::IS_PREV_WEATHER_TYPE("SMOG") || GAMEPLAY::IS_PREV_WEATHER_TYPE("OVERCAST")) || GAMEPLAY::IS_PREV_WEATHER_TYPE("RAIN")) || GAMEPLAY::IS_PREV_WEATHER_TYPE("THUNDER")) || GAMEPLAY::IS_PREV_WEATHER_TYPE("SNOW")) || GAMEPLAY::IS_NEXT_WEATHER_TYPE("SMOG")) || GAMEPLAY::IS_NEXT_WEATHER_TYPE("OVERCAST")) || GAMEPLAY::IS_NEXT_WEATHER_TYPE("RAIN")) || GAMEPLAY::IS_NEXT_WEATHER_TYPE("THUNDER")) || GAMEPLAY::IS_NEXT_WEATHER_TYPE("SNOW")) | |
| { | |
| return 0; | |
| } | |
| break; | |
| default: | |
| return 1; | |
| break; | |
| } | |
| return 1; | |
| } | |
| int func_164() | |
| { | |
| if (GAMEPLAY::IS_BIT_SET(GAMEPLAY::GET_RANDOM_INT_IN_RANGE(0, 65535), 0)) | |
| { | |
| return 1; | |
| } | |
| return 0; | |
| } | |
| int func_165() | |
| { | |
| struct<2> Var0; | |
| int iVar4; | |
| struct<2> Var5; | |
| StringCopy(&Var0, "CB_IDN", 16); | |
| iVar4 = GAMEPLAY::GET_RANDOM_INT_IN_RANGE(1, 44); | |
| StringIntConCat(&Var0, iVar4, 16); | |
| StringCopy(&Var5, "CB_CHAR", 16); | |
| StringIntConCat(&Var5, iVar4, 16); | |
| func_161(&uLocal_91, 3, 0, &Var5, 0, 0); | |
| if (func_152(&uLocal_91, "CBRADAU", &Var0, 1, 1, 0, 0)) | |
| { | |
| AUDIO::PLAY_SOUND_FRONTEND(-1, "Start_Squelch", "CB_RADIO_SFX", 1); | |
| AUDIO::PLAY_SOUND_FRONTEND(iLocal_89, "Background_Loop", "CB_RADIO_SFX", 1); | |
| return 1; | |
| } | |
| return 0; | |
| } | |
| void func_166() | |
| { | |
| Global_398C = 0; | |
| func_167(); | |
| } | |
| void func_167() | |
| { | |
| AUDIO::RESTART_SCRIPTED_CONVERSATION(); | |
| Global_41ED = 0; | |
| if (AUDIO::IS_SCRIPTED_CONVERSATION_ONGOING()) | |
| { | |
| AUDIO::STOP_SCRIPTED_CONVERSATION(false); | |
| Global_3DFA = 6; | |
| } | |
| } | |
| int func_168() | |
| { | |
| if (Global_3DFA != 0 || AUDIO::IS_SCRIPTED_CONVERSATION_ONGOING()) | |
| { | |
| return 1; | |
| } | |
| return 0; | |
| } | |
| int func_169() | |
| { | |
| if (Global_1620A != -1) | |
| { | |
| return GAMEPLAY::IS_BIT_SET(Global_14A14[Global_1620A /*34*/].f_F, 13); | |
| } | |
| return 0; | |
| } | |
| void check_emails(int curTime) | |
| { | |
| int iVar0; | |
| int iVar1; | |
| if (!is_valid_char_index(get_active_char_index())) | |
| { | |
| return; | |
| } | |
| iVar0 = 0; | |
| while (iVar0 < Global_1A045.f_1E02.f_362 && !iLocal_78_hasHandledNotification) | |
| { | |
| func_204(&(Global_1A045.f_1E02.f_2FD[iVar0 /*10*/])); | |
| iVar1 = 0; | |
| if (Global_1A045.f_1E02.f_2FD[iVar0 /*10*/].f_3 >= 5) | |
| { | |
| iVar1 = 1; | |
| } | |
| if ((*curTime >= Global_9070_nextNotificationTime || GAMEPLAY::IS_BIT_SET(Global_1A045.f_1E02.f_2FD[iVar0 /*10*/].f_1, 21)) || iVar1) | |
| { | |
| if (*curTime >= Global_9071[Global_1A045.f_1E02.f_2FD[iVar0 /*10*/].f_6] || iVar1) | |
| { | |
| if (*curTime >= Global_1A045.f_1E02.f_2FD[iVar0 /*10*/].f_4) | |
| { | |
| if (attempt_send_email(&(Global_1A045.f_1E02.f_2FD[iVar0 /*10*/]))) | |
| { | |
| iLocal_82_localNextTime = -1; | |
| func_171(curTime, &(Global_1A045.f_1E02.f_2FD[iVar0 /*10*/])); | |
| func_6(iVar0); | |
| iLocal_78_hasHandledNotification = 1; | |
| } | |
| else | |
| { | |
| func_142(*curTime, &(Global_1A045.f_1E02.f_2FD[iVar0 /*10*/]), 0); | |
| } | |
| } | |
| } | |
| } | |
| iVar0++; | |
| } | |
| } | |
| void func_171(var uParam0, var uParam1) | |
| { | |
| func_53(uParam1); | |
| Global_1A045.f_1E02.f_396 = *uParam1; | |
| Global_9070_nextNotificationTime = *uParam0 + 20000; | |
| if (uParam1->f_6 != 144) | |
| { | |
| Global_9071[uParam1->f_6] = *uParam0 + 20000; | |
| } | |
| } | |
| int attempt_send_email(var uParam0) | |
| { | |
| int iVar0; | |
| int iVar1; | |
| bool bVar2; | |
| if ((is_phone_in_use(0) || is_phone_disabled()) || is_phone_on_call()) | |
| { | |
| return 0; | |
| } | |
| if (!can_send_notification(uParam0->f_2, uParam0->f_6, uParam0->f_3, uParam0->f_7, uParam0->f_1)) | |
| { | |
| return 0; | |
| } | |
| if (uParam0->f_9 != -1) | |
| { | |
| if (!execute_func_for_index(uParam0->f_9)) | |
| { | |
| return 0; | |
| } | |
| } | |
| if (uParam0->f_7 != -1) | |
| { | |
| if (is_near_important_area(PLAYER::PLAYER_PED_ID(), uParam0->f_7, 0)) | |
| { | |
| return 0; | |
| } | |
| } | |
| func_187(*uParam0, &iVar0); | |
| bVar2 = false; | |
| if (GAMEPLAY::IS_BIT_SET(uParam0->f_1, 16)) | |
| { | |
| bVar2 = true; | |
| } | |
| if (GAMEPLAY::IS_BIT_SET(uParam0->f_2, get_active_char_index_from_global()) || bVar2) | |
| { | |
| iVar1 = 0; | |
| while (iVar1 < 3) | |
| { | |
| if (GAMEPLAY::IS_BIT_SET(uParam0->f_2, iVar1)) | |
| { | |
| if (func_185(iVar0)) | |
| { | |
| if (!func_184(iVar0)) | |
| { | |
| func_176(iVar0, bVar2); | |
| return 1; | |
| } | |
| else | |
| { | |
| return 0; | |
| } | |
| } | |
| else | |
| { | |
| func_173(iVar0, bVar2); | |
| return 1; | |
| } | |
| } | |
| iVar1++; | |
| } | |
| } | |
| return 0; | |
| } | |
| void func_173(int iParam0, bool bParam1) | |
| { | |
| func_174(iParam0, bParam1); | |
| } | |
| void func_174(int iParam0, bool bParam1) | |
| { | |
| Global_92D4 = 1; | |
| if (!Global_9FDA[iParam0 /*46*/] && !Global_9FDA[iParam0 /*46*/].f_1) | |
| { | |
| Global_9FDA[iParam0 /*46*/] = 1; | |
| func_176(iParam0, bParam1); | |
| } | |
| else | |
| { | |
| func_175(iParam0); | |
| func_174(iParam0, bParam1); | |
| } | |
| } | |
| void func_175(int iParam0) | |
| { | |
| Global_9FDA[iParam0 /*46*/] = 0; | |
| Global_9FDA[iParam0 /*46*/].f_1F = 0; | |
| Global_9FDA[iParam0 /*46*/].f_2A = 0; | |
| Global_9FDA[iParam0 /*46*/].f_2D = 0; | |
| Global_9FDA[iParam0 /*46*/].f_2B = 0; | |
| Global_9FDA[iParam0 /*46*/].f_1 = 0; | |
| } | |
| void func_176(int iParam0, bool bParam1) | |
| { | |
| int iVar0; | |
| int iVar1; | |
| int iVar2; | |
| int iVar3; | |
| if (!Global_9FDA[iParam0 /*46*/] && !Global_9FDA[iParam0 /*46*/].f_1) | |
| { | |
| return; | |
| } | |
| if (Global_9FDA[iParam0 /*46*/].f_1F == Global_9FDA[iParam0 /*46*/].f_1E) | |
| { | |
| iVar0 = (Global_9FDA[iParam0 /*46*/].f_2A - 1); | |
| if (iVar0 < 0) | |
| { | |
| return; | |
| } | |
| if (Global_92DD[Global_9FDA[iParam0 /*46*/].f_20[iVar0] /*12*/].f_4 == 0) | |
| { | |
| Global_9FDA[iParam0 /*46*/].f_1 = 1; | |
| } | |
| return; | |
| } | |
| if (Global_9FDA[iParam0 /*46*/].f_1) | |
| { | |
| return; | |
| } | |
| iVar1 = Global_9FDA[iParam0 /*46*/].f_8[Global_9FDA[iParam0 /*46*/].f_1F]; | |
| Global_9FDA[iParam0 /*46*/].f_1F++; | |
| func_183(iParam0, iVar1); | |
| Global_9FDA[iParam0 /*46*/].f_2D = Global_92DD[iVar1 /*12*/].f_A; | |
| Global_9FDA[iParam0 /*46*/].f_2B = Global_92DD[iVar1 /*12*/].f_B; | |
| iVar2 = Global_9FDA[iParam0 /*46*/].f_2; | |
| func_177(Global_92DD[iVar1 /*12*/].f_3, iParam0, 0, 0, bParam1); | |
| iVar3 = 0; | |
| while (iVar3 < iVar2) | |
| { | |
| if (Global_9FDA[iParam0 /*46*/].f_3[iVar3] != Global_92DD[iVar1 /*12*/].f_2 && Global_9FDA[iParam0 /*46*/].f_3[iVar3] != Global_92DD[iVar1 /*12*/].f_3) | |
| { | |
| func_177(Global_9FDA[iParam0 /*46*/].f_3[iVar3], iParam0, 0, 0, bParam1); | |
| } | |
| iVar3++; | |
| } | |
| if (Global_9FDA[iParam0 /*46*/].f_1F == Global_9FDA[iParam0 /*46*/].f_1E) | |
| { | |
| if (Global_92DD[Global_9FDA[iParam0 /*46*/].f_20[(Global_9FDA[iParam0 /*46*/].f_2A - 1)] /*12*/].f_4 == 0) | |
| { | |
| Global_9FDA[iParam0 /*46*/].f_1 = 1; | |
| return; | |
| } | |
| } | |
| } | |
| void func_177(int iParam0, int iParam1, bool bParam2, bool bParam3, bool bParam4) | |
| { | |
| int iVar0; | |
| int iVar1; | |
| int iVar2; | |
| struct<16> Var3; | |
| int iVar19; | |
| int iVar20; | |
| bool bVar21; | |
| bool bVar22; | |
| int iVar23; | |
| int iVar24; | |
| int iVar25; | |
| int iVar26; | |
| if (!iParam0 < 3) | |
| { | |
| return; | |
| } | |
| iVar0 = -1; | |
| StringCopy(&Var3, "UNSET", 64); | |
| if (!bParam2) | |
| { | |
| iVar19 = (Global_9FDA[iParam1 /*46*/].f_2A - 1); | |
| if (iVar19 < 0) | |
| { | |
| return; | |
| } | |
| iVar20 = Global_9FDA[iParam1 /*46*/].f_20[iVar19]; | |
| iVar2 = iVar20; | |
| Var3 = {func_182(Global_92DD[iVar20 /*12*/].f_1)}; | |
| if (Global_92DD[iVar20 /*12*/].f_2 == iParam0 && !Global_92DD[iVar20 /*12*/].f_3 == iParam0) | |
| { | |
| return; | |
| } | |
| iVar1 = Global_92DD[iVar20 /*12*/].f_2; | |
| iVar0 = Global_B5C7[iParam0 /*120*/]; | |
| bVar21 = false; | |
| while (iVar0 >= 16) | |
| { | |
| iVar0 = (iVar0 - 16); | |
| bVar21 = true; | |
| } | |
| if (bVar21) | |
| { | |
| if (!Global_B5C7[iParam0 /*120*/].f_45[iVar0]) | |
| { | |
| switch (iParam0) | |
| { | |
| case 0: | |
| Global_92D5 = (Global_92D5 - 1); | |
| if (Global_92D5 < 0) | |
| { | |
| Global_92D5 = 0; | |
| } | |
| break; | |
| case 1: | |
| Global_92D6 = (Global_92D6 - 1); | |
| if (Global_92D6 < 0) | |
| { | |
| Global_92D6 = 0; | |
| } | |
| break; | |
| case 2: | |
| Global_92D7 = (Global_92D7 - 1); | |
| if (Global_92D7 < 0) | |
| { | |
| Global_92D7 = 0; | |
| } | |
| break; | |
| } | |
| } | |
| } | |
| Global_B5C7[iParam0 /*120*/].f_12[iVar0] = iParam1; | |
| Global_B5C7[iParam0 /*120*/].f_1[iVar0] = iVar19; | |
| Global_B5C7[iParam0 /*120*/].f_23[iVar0] = 0; | |
| Global_B5C7[iParam0 /*120*/].f_56[iVar0] = 0; | |
| Global_B5C7[iParam0 /*120*/].f_45[iVar0] = 0; | |
| Global_B5C7[iParam0 /*120*/]++; | |
| } | |
| else | |
| { | |
| iVar0 = Global_B5C7[iParam0 /*120*/]; | |
| bVar22 = false; | |
| while (iVar0 >= 16) | |
| { | |
| iVar0 = (iVar0 - 16); | |
| bVar22 = true; | |
| } | |
| if (bVar22) | |
| { | |
| if (!Global_B5C7[iParam0 /*120*/].f_45[iVar0]) | |
| { | |
| switch (iParam0) | |
| { | |
| case 0: | |
| Global_92D5 = (Global_92D5 - 1); | |
| if (Global_92D5 < 0) | |
| { | |
| Global_92D5 = 0; | |
| } | |
| break; | |
| case 1: | |
| Global_92D6 = (Global_92D6 - 1); | |
| if (Global_92D6 < 0) | |
| { | |
| Global_92D6 = 0; | |
| } | |
| break; | |
| case 2: | |
| Global_92D7 = (Global_92D7 - 1); | |
| if (Global_92D7 < 0) | |
| { | |
| Global_92D7 = 0; | |
| } | |
| break; | |
| } | |
| } | |
| } | |
| iVar23 = -1; | |
| iVar24 = 0; | |
| iVar24 = 0; | |
| while (iVar24 < 7) | |
| { | |
| if (Global_B731[iVar24 /*203*/].f_1 == iParam1 && Global_B731[iVar24 /*203*/].f_9 > 0) | |
| { | |
| iVar23 = iVar24; | |
| } | |
| iVar24++; | |
| } | |
| if (iVar23 == -1) | |
| { | |
| return; | |
| } | |
| Global_B5C7[iParam0 /*120*/].f_12[iVar0] = Global_B731[iVar23 /*203*/].f_1; | |
| Global_B5C7[iParam0 /*120*/].f_1[iVar0] = (Global_B731[iVar23 /*203*/].f_9 - 1); | |
| Global_B5C7[iParam0 /*120*/].f_23[iVar0] = 0; | |
| Global_B5C7[iParam0 /*120*/].f_56[iVar0] = 1; | |
| Global_B5C7[iParam0 /*120*/].f_45[iVar0] = 0; | |
| Global_B5C7[iParam0 /*120*/]++; | |
| iVar25 = Global_B5C7[iParam0 /*120*/].f_1[iVar0]; | |
| iVar26 = Global_B731[iVar23 /*203*/].f_A[iVar25 /*48*/]; | |
| iVar2 = iVar26; | |
| iVar1 = Global_92DD[iVar26 /*12*/].f_2; | |
| if (Global_B731[iVar23 /*203*/].f_A[(Global_B731[iVar23 /*203*/].f_9 - 1) /*48*/].f_1) | |
| { | |
| MemCopy(&Var3, {Global_B731[iVar23 /*203*/].f_A[(Global_B731[iVar23 /*203*/].f_9 - 1) /*48*/].f_2}, 16); | |
| } | |
| else | |
| { | |
| Var3 = {func_182(Global_92DD[iVar26 /*12*/].f_1)}; | |
| } | |
| } | |
| if (!bParam4) | |
| { | |
| if (!Global_B5C7[iParam0 /*120*/].f_45[iVar0] && !bParam3) | |
| { | |
| switch (iParam0) | |
| { | |
| case 0: | |
| func_178(0, iVar1, iVar2, &Var3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); | |
| break; | |
| case 1: | |
| if (iVar2 == 249) | |
| { | |
| func_178(1, iVar1, iVar2, "PW_FEED_EM_1", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); | |
| } | |
| else | |
| { | |
| func_178(1, iVar1, iVar2, &Var3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); | |
| } | |
| break; | |
| case 2: | |
| func_178(2, iVar1, iVar2, &Var3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); | |
| break; | |
| } | |
| } | |
| } | |
| } | |
| void func_178(int iParam0, int iParam1, int iParam2, char *sParam3, char *sParam4, char *sParam5, char *sParam6, char *sParam7, char *sParam8, char *sParam9, char *sParam10, char *sParam11, char *sParam12, char *sParam13) | |
| { | |
| int iVar0; | |
| bool hasFoundChar; | |
| char cVar2[64]; | |
| if (CUTSCENE::IS_CUTSCENE_PLAYING()) | |
| { | |
| return; | |
| } | |
| iVar0 = get_active_char_index(); | |
| hasFoundChar = false; | |
| StringCopy(&cVar2, get_char_pic_name(iParam1, &hasFoundChar), 64); | |
| if (iVar0 == iParam0) | |
| { | |
| switch (iParam2) | |
| { | |
| case 72: // michael | |
| UI::_SET_NOTIFICATION_TEXT_ENTRY("PROPR_INCEMAIL1"); | |
| break; | |
| case 73: // franklin | |
| UI::_SET_NOTIFICATION_TEXT_ENTRY("PROPR_INCEMAIL3"); | |
| break; | |
| case 74: // trevor | |
| UI::_SET_NOTIFICATION_TEXT_ENTRY("PROPR_INCEMAIL2"); | |
| break; | |
| default: | |
| UI::_SET_NOTIFICATION_TEXT_ENTRY(sParam3); | |
| if (!GAMEPLAY::IS_STRING_NULL_OR_EMPTY(sParam4)) | |
| { | |
| UI::ADD_TEXT_COMPONENT_SUBSTRING_TEXT_LABEL(sParam4); | |
| } | |
| if (!GAMEPLAY::IS_STRING_NULL_OR_EMPTY(sParam5)) | |
| { | |
| UI::ADD_TEXT_COMPONENT_SUBSTRING_TEXT_LABEL(sParam5); | |
| } | |
| if (!GAMEPLAY::IS_STRING_NULL_OR_EMPTY(sParam6)) | |
| { | |
| UI::ADD_TEXT_COMPONENT_SUBSTRING_TEXT_LABEL(sParam6); | |
| } | |
| if (!GAMEPLAY::IS_STRING_NULL_OR_EMPTY(sParam7)) | |
| { | |
| UI::ADD_TEXT_COMPONENT_SUBSTRING_TEXT_LABEL(sParam7); | |
| } | |
| if (!GAMEPLAY::IS_STRING_NULL_OR_EMPTY(sParam8)) | |
| { | |
| UI::ADD_TEXT_COMPONENT_SUBSTRING_TEXT_LABEL(sParam8); | |
| } | |
| if (!GAMEPLAY::IS_STRING_NULL_OR_EMPTY(sParam9)) | |
| { | |
| UI::ADD_TEXT_COMPONENT_SUBSTRING_TEXT_LABEL(sParam9); | |
| } | |
| if (!GAMEPLAY::IS_STRING_NULL_OR_EMPTY(sParam10)) | |
| { | |
| UI::ADD_TEXT_COMPONENT_SUBSTRING_TEXT_LABEL(sParam10); | |
| } | |
| if (!GAMEPLAY::IS_STRING_NULL_OR_EMPTY(sParam11)) | |
| { | |
| UI::ADD_TEXT_COMPONENT_SUBSTRING_TEXT_LABEL(sParam11); | |
| } | |
| if (!GAMEPLAY::IS_STRING_NULL_OR_EMPTY(sParam12)) | |
| { | |
| UI::ADD_TEXT_COMPONENT_SUBSTRING_TEXT_LABEL(sParam12); | |
| } | |
| if (!GAMEPLAY::IS_STRING_NULL_OR_EMPTY(sParam13)) | |
| { | |
| UI::ADD_TEXT_COMPONENT_SUBSTRING_TEXT_LABEL(sParam13); | |
| } | |
| break; | |
| } | |
| if (hasFoundChar) | |
| { | |
| func_179(UI::_SET_NOTIFICATION_MESSAGE(&cVar2, &cVar2, 0, 2, UI::_GET_LABEL_TEXT(func_180(iParam1)), 0)); | |
| } | |
| else | |
| { | |
| func_179(UI::_SET_NOTIFICATION_MESSAGE("CHAR_DEFAULT", "CHAR_DEFAULT", 0, 2, UI::_GET_LABEL_TEXT(func_180(iParam1)), 0)); | |
| } | |
| switch (Global_38D9) | |
| { | |
| case 0: | |
| StringCopy(&Global_38CE, "Phone_SoundSet_Michael", 24); | |
| Global_92D5++; | |
| if (Global_92D5 > 16) | |
| { | |
| Global_92D5 = 16; | |
| } | |
| break; | |
| case 2: | |
| StringCopy(&Global_38CE, "Phone_SoundSet_Trevor", 24); | |
| Global_92D7++; | |
| if (Global_92D7 > 16) | |
| { | |
| Global_92D7 = 16; | |
| } | |
| break; | |
| case 1: | |
| StringCopy(&Global_38CE, "Phone_SoundSet_Franklin", 24); | |
| Global_92D6++; | |
| if (Global_92D6 > 16) | |
| { | |
| Global_92D6 = 16; | |
| } | |
| break; | |
| default: | |
| StringCopy(&Global_38CE, "Phone_SoundSet_Default", 24); | |
| break; | |
| } | |
| AUDIO::PLAY_SOUND_FRONTEND(-1, "Notification", &Global_38CE, 1); | |
| } | |
| } | |
| void func_179(int iParam0) | |
| { | |
| Global_92D8[Global_92DC] = iParam0; | |
| Global_421C = 1; | |
| Global_421B = iParam0; | |
| Global_92DC++; | |
| if (Global_92DC == 3) | |
| { | |
| Global_92DC = 0; | |
| } | |
| } | |
| char *func_180(int iParam0) | |
| { | |
| switch (iParam0) | |
| { | |
| case 0: | |
| return "EMSTR_0"; | |
| case 3: | |
| return "EMSTR_3"; | |
| case 1: | |
| return "EMSTR_6"; | |
| case 2: | |
| return "EMSTR_9"; | |
| case 4: | |
| return "EMSTR_12"; | |
| case 5: | |
| return "EMSTR_29"; | |
| case 6: | |
| return "EMSTR_36"; | |
| case 7: | |
| return "EMSTR_39"; | |
| case 8: | |
| return "EMSTR_52"; | |
| case 9: | |
| return "EMSTR_55"; | |
| case 10: | |
| return "EMSTR_58"; | |
| case 11: | |
| return "EMSTR_78"; | |
| case 12: | |
| return "EMSTR_81"; | |
| case 13: | |
| return "EMSTR_84"; | |
| case 14: | |
| return "EMSTR_87"; | |
| case 15: | |
| return "EMSTR_106"; | |
| case 16: | |
| return "EMSTR_114"; | |
| case 17: | |
| return "EMSTR_142"; | |
| case 18: | |
| return "EMSTR_145"; | |
| case 19: | |
| return "EMSTR_152"; | |
| case 20: | |
| return "EMSTR_157"; | |
| case 21: | |
| return "EMSTR_163"; | |
| case 22: | |
| return "EMSTR_182"; | |
| case 23: | |
| return "EMSTR_187"; | |
| case 24: | |
| return "EMSTR_190"; | |
| case 25: | |
| return "EMSTR_206"; | |
| case 26: | |
| return "EMSTR_219"; | |
| case 27: | |
| return "EMSTR_226"; | |
| case 28: | |
| return "EMSTR_233"; | |
| case 29: | |
| return "EMSTR_242"; | |
| case 30: | |
| return "EMSTR_249"; | |
| case 31: | |
| return "EMSTR_262"; | |
| case 32: | |
| return "EMSTR_269"; | |
| case 33: | |
| return "EMSTR_319"; | |
| case 34: | |
| return "EMSTR_340"; | |
| case 35: | |
| return "EMSTR_348"; | |
| case 36: | |
| return "EMSTR_182"; | |
| case 37: | |
| return "EMSTR_357"; | |
| case 38: | |
| return "EMSTR_360"; | |
| case 39: | |
| return "EMSTR_369"; | |
| case 40: | |
| return "EMSTR_376"; | |
| case 41: | |
| return "EMSTR_379"; | |
| case 42: | |
| return "EMSTR_382"; | |
| case 43: | |
| return "EMSTR_384"; | |
| case 44: | |
| return "EMSTR_387"; | |
| case 45: | |
| return "EMSTR_390"; | |
| case 46: | |
| return "EMSTR_393"; | |
| case 47: | |
| return "EMSTR_396"; | |
| case 48: | |
| return "EMSTR_399"; | |
| case 49: | |
| return "EMSTR_402"; | |
| case 50: | |
| return "EMSTR_405"; | |
| case 51: | |
| return "EMSTR_408"; | |
| case 52: | |
| return "EMSTR_411"; | |
| case 53: | |
| return "EMSTR_414"; | |
| case 54: | |
| return "EMSTR_465"; | |
| case 55: | |
| return "EMSTR_468"; | |
| case 56: | |
| return "EMSTR_489"; | |
| case 57: | |
| return "EMSTR_492"; | |
| case 58: | |
| return "EMSTR_495"; | |
| case 59: | |
| return "EMSTR_498"; | |
| case 60: | |
| return "EMSTR_501"; | |
| case 61: | |
| return "EMSTR_504"; | |
| case 62: | |
| return "EMSTR_507"; | |
| case 63: | |
| return "EMSTR_640"; | |
| case 64: | |
| return "EMSTR_643"; | |
| case 65: | |
| return "EMSTR_652"; | |
| default: | |
| } | |
| return "NULL"; | |
| } | |
| char *get_char_pic_name(int iParam0, int iParam1) | |
| { | |
| *iParam1 = 1; | |
| switch (iParam0) | |
| { | |
| case 0: | |
| return UI::_GET_LABEL_TEXT(&(Global_1A045.f_6D8C[0 /*29*/].f_7)); | |
| case 1: | |
| return UI::_GET_LABEL_TEXT(&(Global_1A045.f_6D8C[1 /*29*/].f_7)); | |
| case 2: | |
| return UI::_GET_LABEL_TEXT(&(Global_1A045.f_6D8C[2 /*29*/].f_7)); | |
| case 7: | |
| return UI::_GET_LABEL_TEXT(&(Global_1A045.f_6D8C[12 /*29*/].f_7)); | |
| case 4: | |
| return UI::_GET_LABEL_TEXT(&(Global_1A045.f_6D8C[60 /*29*/].f_7)); | |
| case 6: | |
| return UI::_GET_LABEL_TEXT(&(Global_1A045.f_6D8C[62 /*29*/].f_7)); | |
| case 3: | |
| return UI::_GET_LABEL_TEXT(&(Global_1A045.f_6D8C[14 /*29*/].f_7)); | |
| case 16: | |
| return UI::_GET_LABEL_TEXT(&(Global_1A045.f_6D8C[97 /*29*/].f_7)); | |
| case 19: | |
| return UI::_GET_LABEL_TEXT(&(Global_1A045.f_6D8C[99 /*29*/].f_7)); | |
| case 15: | |
| return UI::_GET_LABEL_TEXT(&(Global_1A045.f_6D8C[96 /*29*/].f_7)); | |
| case 63: | |
| return "CHAR_CARSITE2"; | |
| case 64: | |
| return "CHAR_BOATSITE"; | |
| case 8: | |
| return "CHAR_BANK_MAZE"; | |
| case 9: | |
| return "CHAR_BANK_FLEECA"; | |
| case 10: | |
| return "CHAR_BANK_BOL"; | |
| case 21: | |
| return "CHAR_MINOTAUR"; | |
| case 25: | |
| return UI::_GET_LABEL_TEXT(&(Global_1A045.f_6D8C[15 /*29*/].f_7)); | |
| case 26: | |
| return UI::_GET_LABEL_TEXT(&(Global_1A045.f_6D8C[30 /*29*/].f_7)); | |
| case 27: | |
| return UI::_GET_LABEL_TEXT(&(Global_1A045.f_6D8C[17 /*29*/].f_7)); | |
| case 29: | |
| return UI::_GET_LABEL_TEXT(&(Global_1A045.f_6D8C[20 /*29*/].f_7)); | |
| case 30: | |
| return UI::_GET_LABEL_TEXT(&(Global_1A045.f_6D8C[43 /*29*/].f_7)); | |
| case 31: | |
| return UI::_GET_LABEL_TEXT(&(Global_1A045.f_6D8C[44 /*29*/].f_7)); | |
| case 32: | |
| return UI::_GET_LABEL_TEXT(&(Global_1A045.f_6D8C[19 /*29*/].f_7)); | |
| case 34: | |
| return UI::_GET_LABEL_TEXT(&(Global_1A045.f_6D8C[40 /*29*/].f_7)); | |
| case 36: | |
| return UI::_GET_LABEL_TEXT("CELL_E_381"); | |
| case 38: | |
| return UI::_GET_LABEL_TEXT(&(Global_1A045.f_6D8C[64 /*29*/].f_7)); | |
| case 5: | |
| return "CHAR_EPSILON"; | |
| case 13: | |
| return "CHAR_MILSITE"; | |
| case 11: | |
| return "CHAR_CARSITE"; | |
| case 14: | |
| return "CHAR_BOATSITE"; | |
| case 12: | |
| return "CHAR_PLANESITE"; | |
| case 24: | |
| return "CHAR_DR_FRIEDLANDER"; | |
| case 55: | |
| return "CHAR_CARSITE2"; | |
| case 54: | |
| return "CHAR_BIKESITE"; | |
| case 39: | |
| return UI::_GET_LABEL_TEXT(&(Global_1A045.f_6D8C[122 /*29*/].f_7)); | |
| case 40: | |
| return UI::_GET_LABEL_TEXT(&(Global_1A045.f_6D8C[125 /*29*/].f_7)); | |
| case 41: | |
| return UI::_GET_LABEL_TEXT(&(Global_1A045.f_6D8C[113 /*29*/].f_7)); | |
| case 42: | |
| return UI::_GET_LABEL_TEXT(&(Global_1A045.f_6D8C[126 /*29*/].f_7)); | |
| case 43: | |
| return UI::_GET_LABEL_TEXT(&(Global_1A045.f_6D8C[127 /*29*/].f_7)); | |
| case 44: | |
| return UI::_GET_LABEL_TEXT(&(Global_1A045.f_6D8C[124 /*29*/].f_7)); | |
| case 45: | |
| return UI::_GET_LABEL_TEXT(&(Global_1A045.f_6D8C[114 /*29*/].f_7)); | |
| case 46: | |
| return UI::_GET_LABEL_TEXT(&(Global_1A045.f_6D8C[115 /*29*/].f_7)); | |
| case 47: | |
| return UI::_GET_LABEL_TEXT(&(Global_1A045.f_6D8C[116 /*29*/].f_7)); | |
| case 48: | |
| return UI::_GET_LABEL_TEXT(&(Global_1A045.f_6D8C[123 /*29*/].f_7)); | |
| case 49: | |
| return UI::_GET_LABEL_TEXT(&(Global_1A045.f_6D8C[117 /*29*/].f_7)); | |
| case 50: | |
| return UI::_GET_LABEL_TEXT(&(Global_1A045.f_6D8C[118 /*29*/].f_7)); | |
| case 51: | |
| return UI::_GET_LABEL_TEXT(&(Global_1A045.f_6D8C[119 /*29*/].f_7)); | |
| case 52: | |
| return UI::_GET_LABEL_TEXT(&(Global_1A045.f_6D8C[120 /*29*/].f_7)); | |
| case 53: | |
| return UI::_GET_LABEL_TEXT(&(Global_1A045.f_6D8C[121 /*29*/].f_7)); | |
| default: | |
| } | |
| *iParam1 = 0; | |
| return "ERROR!"; | |
| } | |
| struct<16> func_182(int iParam0) | |
| { | |
| struct<16> Var0; | |
| struct<16> Var16; | |
| if (iParam0 > -1) | |
| { | |
| StringCopy(&Var0, "EMSTR_", 64); | |
| StringIntConCat(&Var0, iParam0, 64); | |
| return Var0; | |
| } | |
| StringCopy(&Var16, "FAIL", 64); | |
| return Var16; | |
| } | |
| int | |
| func_183(int iParam0, var uParam1) | |
| { | |
| if (Global_9FDA[iParam0 /*46*/].f_2A >= 9) | |
| { | |
| return 0; | |
| } | |
| Global_9FDA[iParam0 /*46*/].f_20[Global_9FDA[iParam0 /*46*/].f_2A] = uParam1; | |
| Global_9FDA[iParam0 /*46*/].f_2A++; | |
| return 1; | |
| } | |
| bool func_184(int iParam0) | |
| { | |
| return Global_9FDA[iParam0 /*46*/].f_1; | |
| } | |
| bool func_185(int iParam0) | |
| { | |
| return Global_9FDA[iParam0 /*46*/]; | |
| } | |
| int get_active_char_index_from_global() | |
| { | |
| update_global_char_index(); | |
| return Global_1A045.f_935.f_21B.f_10E1; | |
| } | |
| void func_187(int iParam0, var uParam1) | |
| { | |
| if (func_64(iParam0) == 3) | |
| { | |
| switch (iParam0) | |
| { | |
| case 2021846885: | |
| *uParam1 = 14; | |
| break; | |
| case 801347631: | |
| *uParam1 = 6; | |
| break; | |
| case 2107010167: | |
| *uParam1 = 29; | |
| break; | |
| case 1440910066: | |
| *uParam1 = 31; | |
| break; | |
| case 2063740346: | |
| *uParam1 = 32; | |
| break; | |
| case 957098437: | |
| *uParam1 = 33; | |
| break; | |
| case 338918687: | |
| *uParam1 = 13; | |
| break; | |
| case 1818503402: | |
| *uParam1 = 15; | |
| break; | |
| case 1511064644: | |
| *uParam1 = 16; | |
| break; | |
| case 1217225025: | |
| *uParam1 = 17; | |
| break; | |
| case -929373866: | |
| *uParam1 = 18; | |
| break; | |
| case -1252410668: | |
| *uParam1 = 19; | |
| break; | |
| case -1548445814: | |
| *uParam1 = 20; | |
| break; | |
| case -1853951201: | |
| *uParam1 = 21; | |
| break; | |
| case -709067855: | |
| *uParam1 = 22; | |
| break; | |
| case -1023257027: | |
| *uParam1 = 30; | |
| break; | |
| case 692693384: | |
| *uParam1 = 28; | |
| break; | |
| case 1209844154: | |
| *uParam1 = 27; | |
| break; | |
| case -1144971313: | |
| *uParam1 = 26; | |
| break; | |
| case 801546988: | |
| *uParam1 = 107; | |
| break; | |
| case 319357731: | |
| *uParam1 = 108; | |
| break; | |
| case -423103492: | |
| *uParam1 = 109; | |
| break; | |
| case -1504002834: | |
| *uParam1 = 67; | |
| break; | |
| case 1343538152: | |
| *uParam1 = 68; | |
| break; | |
| case 1357988739: | |
| *uParam1 = 94; | |
| break; | |
| case 374347954: | |
| *uParam1 = 40; | |
| break; | |
| case -1718545517: | |
| *uParam1 = 41; | |
| break; | |
| case 2022687760: | |
| *uParam1 = 42; | |
| break; | |
| case -1069372983: | |
| *uParam1 = 43; | |
| break; | |
| case -789275824: | |
| *uParam1 = 46; | |
| break; | |
| case 183426861: | |
| *uParam1 = 64; | |
| break; | |
| case -1303362934: | |
| *uParam1 = 44; | |
| break; | |
| case 632406285: | |
| *uParam1 = 54; | |
| break; | |
| case 859937019: | |
| *uParam1 = 45; | |
| break; | |
| case 430981897: | |
| *uParam1 = 47; | |
| break; | |
| case -771149390: | |
| *uParam1 = 61; | |
| break; | |
| case -1649944291: | |
| *uParam1 = 48; | |
| break; | |
| case -1821325152: | |
| *uParam1 = 49; | |
| break; | |
| case -132533604: | |
| *uParam1 = 50; | |
| break; | |
| case 711875844: | |
| *uParam1 = 51; | |
| break; | |
| case -1523625340: | |
| *uParam1 = 52; | |
| break; | |
| case -2135625223: | |
| *uParam1 = 53; | |
| break; | |
| case -2076002026: | |
| *uParam1 = 55; | |
| break; | |
| case -1897604564: | |
| *uParam1 = 56; | |
| break; | |
| case -1430864197: | |
| *uParam1 = 57; | |
| break; | |
| case 1424059178: | |
| *uParam1 = 62; | |
| break; | |
| case -666761274: | |
| *uParam1 = 63; | |
| break; | |
| case -2038240170: | |
| *uParam1 = 65; | |
| break; | |
| case -1551606815: | |
| *uParam1 = 95; | |
| break; | |
| case -980148216: | |
| *uParam1 = 97; | |
| break; | |
| case -1857996981: | |
| *uParam1 = 96; | |
| break; | |
| case -1674789340: | |
| *uParam1 = 69; | |
| break; | |
| case 448778385: | |
| *uParam1 = 58; | |
| break; | |
| case 546388833: | |
| *uParam1 = 59; | |
| break; | |
| case 1051395607: | |
| *uParam1 = 60; | |
| break; | |
| case -505415049: | |
| *uParam1 = 71; | |
| break; | |
| case 430538716: | |
| *uParam1 = 74; | |
| break; | |
| case -748636148: | |
| *uParam1 = 75; | |
| break; | |
| case 353549167: | |
| *uParam1 = 76; | |
| break; | |
| case 1400649789: | |
| *uParam1 = 77; | |
| break; | |
| case 135464153: | |
| *uParam1 = 78; | |
| break; | |
| case -536513155: | |
| *uParam1 = 79; | |
| break; | |
| case 967465509: | |
| *uParam1 = 80; | |
| break; | |
| case -2132612619: | |
| *uParam1 = 81; | |
| break; | |
| case -1419493641: | |
| *uParam1 = 82; | |
| break; | |
| case -521917970: | |
| *uParam1 = 83; | |
| break; | |
| case -1521020490: | |
| *uParam1 = 84; | |
| break; | |
| case 1894922981: | |
| *uParam1 = 85; | |
| break; | |
| case 233370836: | |
| *uParam1 = 86; | |
| break; | |
| case 984305268: | |
| *uParam1 = 87; | |
| break; | |
| case -833431660: | |
| *uParam1 = 88; | |
| break; | |
| case 372434771: | |
| *uParam1 = 89; | |
| break; | |
| case -92983336: | |
| *uParam1 = 90; | |
| break; | |
| case 1638023784: | |
| *uParam1 = 91; | |
| break; | |
| case 2121956376: | |
| *uParam1 = 92; | |
| break; | |
| case -452245192: | |
| *uParam1 = 93; | |
| break; | |
| case 763248121: | |
| *uParam1 = 72; | |
| break; | |
| case -720564968: | |
| *uParam1 = 73; | |
| break; | |
| case -1067764575: | |
| *uParam1 = 110; | |
| break; | |
| case -921778680: | |
| *uParam1 = 111; | |
| break; | |
| case -606278748: | |
| *uParam1 = 112; | |
| break; | |
| case -414580094: | |
| *uParam1 = 113; | |
| break; | |
| case -1871231456: | |
| *uParam1 = 114; | |
| break; | |
| case 1127068257: | |
| *uParam1 = 115; | |
| break; | |
| case 359978756: | |
| *uParam1 = 116; | |
| break; | |
| case -1406368651: | |
| *uParam1 = 117; | |
| break; | |
| case -1093228087: | |
| *uParam1 = 118; | |
| break; | |
| case 143441204: | |
| *uParam1 = 119; | |
| break; | |
| case -615685450: | |
| *uParam1 = 120; | |
| break; | |
| case 1963267619: | |
| *uParam1 = 121; | |
| break; | |
| default: | |
| break; | |
| } | |
| } | |
| else | |
| { | |
| return; | |
| } | |
| } | |
| int can_send_notification(int iParam0, int iParam1, int iParam2, int iParam3, int iParam4) | |
| { | |
| int iVar0; | |
| int iVar1; | |
| int iVar2; | |
| int iVar3; | |
| int activeChar; | |
| var nearbyPeds[16]; | |
| int senderModels[2]; | |
| int iVar25; | |
| int iVar26; | |
| int iVar27; | |
| if (!CAM::IS_SCREEN_FADED_IN()) | |
| { | |
| return 0; | |
| } | |
| if (is_phone_disabled()) | |
| { | |
| return 0; | |
| } | |
| if (PLAYER::IS_PLAYER_PLAYING(PLAYER::PLAYER_ID())) | |
| { | |
| if (PED::GET_PED_PARACHUTE_STATE(PLAYER::PLAYER_PED_ID()) != -1) | |
| { | |
| return 0; | |
| } | |
| } | |
| if (AUDIO::IS_SCRIPTED_CONVERSATION_ONGOING()) | |
| { | |
| return 0; | |
| } | |
| if (is_in_mission() && iParam2 < 4) | |
| { | |
| return 0; | |
| } | |
| if (PLAYER::IS_PLAYER_PLAYING(PLAYER::PLAYER_ID())) | |
| { | |
| if (func_200(PLAYER::PLAYER_PED_ID())) | |
| { | |
| if (GAMEPLAY::IS_BIT_SET(iParam0, get_active_char_index_from_global()) && !GAMEPLAY::IS_BIT_SET(iParam4, 19)) | |
| { | |
| return 0; | |
| } | |
| } | |
| } | |
| if (Global_117A4) | |
| { | |
| return 0; | |
| } | |
| if (CUTSCENE::IS_CUTSCENE_PLAYING()) | |
| { | |
| return 0; | |
| } | |
| if (Global_10CC7) | |
| { | |
| return 0; | |
| } | |
| if (Global_15E77) | |
| { | |
| return 0; | |
| } | |
| if ((func_199() || (Global_4378.f_4 && Global_4378.f_68 == 4)) || is_player_timetable_scene_running()) | |
| { | |
| return 0; | |
| } | |
| if (GAMEPLAY::IS_BIT_SET(iParam4, 18)) | |
| { | |
| if (!GAMEPLAY::IS_BIT_SET(iParam0, get_active_char_index_from_global())) | |
| { | |
| return 0; | |
| } | |
| } | |
| iVar0 = 1; | |
| if (((Global_16DF2 == 13 || Global_16DF2 == 10) || Global_16DF2 == 11) || Global_16DF2 == 12) | |
| { | |
| iVar0 = 0; | |
| } | |
| if (iVar0 == 1) | |
| { | |
| return 0; | |
| } | |
| if (!PLAYER::IS_PLAYER_PLAYING(PLAYER::PLAYER_ID())) | |
| { | |
| return 0; | |
| } | |
| else if (iParam2 != 5) | |
| { | |
| if (PLAYER::GET_PLAYER_WANTED_LEVEL(PLAYER::PLAYER_ID()) > 1) | |
| { | |
| return 0; | |
| } | |
| if (GAMEPLAY::IS_AUTO_SAVE_IN_PROGRESS()) | |
| { | |
| return 0; | |
| } | |
| if (Global_16210) | |
| { | |
| return 0; | |
| } | |
| if (func_191(50.00f, 1) != -1) | |
| { | |
| return 0; | |
| } | |
| if (((((iParam1 == 17 || iParam1 == 19) || iParam1 == 14) || iParam1 == 0) || iParam1 == 1) || iParam1 == 2) | |
| { | |
| if (GAMEPLAY::IS_BIT_SET(iParam0, get_active_char_index_from_global())) | |
| { | |
| iVar1 = func_92(get_active_char_index()); | |
| iVar2 = func_92(iParam1); | |
| iVar3 = func_91(iVar1, iVar2); | |
| if (iVar3 < 9) | |
| { | |
| if (Global_1A045.f_46B1.f_AF[iVar3 /*19*/].f_8 == 1 || Global_1A045.f_46B1.f_AF[iVar3 /*19*/].f_8 == 2) | |
| { | |
| if (func_90(&(Global_1A045.f_46B1.f_AF[iVar3 /*19*/].f_5))) | |
| { | |
| if (func_88(&(Global_1A045.f_46B1.f_AF[iVar3 /*19*/].f_5)) < 30.00f) | |
| { | |
| return 0; | |
| } | |
| } | |
| } | |
| } | |
| } | |
| } | |
| } | |
| if (PLAYER::GET_PLAYER_WANTED_LEVEL(PLAYER::PLAYER_ID()) > 2) | |
| { | |
| return 0; | |
| } | |
| if (func_190()) | |
| { | |
| return 0; | |
| } | |
| if (GAMEPLAY::IS_BIT_SET(iParam4, 3)) | |
| { | |
| if (Global_19C8C) | |
| { | |
| return 0; | |
| } | |
| if (PLAYER::IS_PLAYER_PLAYING(PLAYER::PLAYER_ID())) | |
| { | |
| if (PLAYER::GET_PLAYER_WANTED_LEVEL(PLAYER::PLAYER_ID()) > 0) | |
| { | |
| return 0; | |
| } | |
| } | |
| if (Global_19B3B.f_13 != 0) | |
| { | |
| return 0; | |
| } | |
| if (Global_8E49 == 5) | |
| { | |
| return 0; | |
| } | |
| } | |
| if (iParam3 != -1) | |
| { | |
| if (is_near_important_area(PLAYER::PLAYER_PED_ID(), iParam3, 0)) | |
| { | |
| return 0; | |
| } | |
| } | |
| activeChar = get_active_char_index(); | |
| if (is_valid_char_index(activeChar)) | |
| { | |
| PED::GET_PED_NEARBY_PEDS(PLAYER::PLAYER_PED_ID(), &nearbyPeds, -1); | |
| switch (iParam1) | |
| { | |
| case 4: | |
| switch (activeChar) | |
| { | |
| case 0: | |
| senderModels[0] = get_ped_of_char_index(1); | |
| senderModels[1] = get_ped_of_char_index(2); | |
| break; | |
| case 1: | |
| senderModels[0] = get_ped_of_char_index(0); | |
| senderModels[1] = get_ped_of_char_index(2); | |
| break; | |
| case 2: | |
| senderModels[0] = get_ped_of_char_index(0); | |
| senderModels[1] = get_ped_of_char_index(1); | |
| break; | |
| } | |
| break; | |
| case 5: | |
| senderModels[0] = get_ped_of_char_index(1); | |
| senderModels[1] = get_ped_of_char_index(2); | |
| break; | |
| case 6: | |
| senderModels[0] = get_ped_of_other_char_index(12); | |
| senderModels[1] = get_ped_of_char_index(1); | |
| break; | |
| case 7: | |
| senderModels[0] = get_ped_of_other_char_index(12); | |
| senderModels[1] = get_ped_of_char_index(0); | |
| break; | |
| case 8: | |
| senderModels[0] = get_ped_of_char_index(0); | |
| senderModels[1] = get_ped_of_char_index(1); | |
| break; | |
| case 9: | |
| senderModels[0] = get_ped_of_char_index(0); | |
| senderModels[1] = get_ped_of_char_index(2); | |
| break; | |
| case 10: | |
| senderModels[0] = get_ped_of_other_char_index(23); | |
| senderModels[1] = get_ped_of_char_index(0); | |
| break; | |
| case 11: | |
| senderModels[0] = get_ped_of_other_char_index(23); | |
| senderModels[1] = get_ped_of_char_index(0); | |
| break; | |
| default: | |
| if (is_valid_char_index(iParam1)) | |
| { | |
| senderModels[0] = get_ped_of_char_index(iParam1); | |
| } | |
| else | |
| { | |
| senderModels[0] = get_ped_of_other_char_index(iParam1); | |
| } | |
| senderModels[1] = 0; | |
| break; | |
| } | |
| iVar25 = 0; | |
| while (iVar25 < 2) | |
| { | |
| if (senderModels[iVar25] != 0) | |
| { | |
| iVar26 = 0; | |
| while (iVar26 < 16) | |
| { | |
| if (ENTITY::DOES_ENTITY_EXIST(nearbyPeds[iVar26])) | |
| { | |
| if (ENTITY::GET_ENTITY_MODEL(nearbyPeds[iVar26]) == senderModels[iVar25]) | |
| { | |
| if (!ENTITY::IS_ENTITY_DEAD(nearbyPeds[iVar26], 0)) | |
| { | |
| if (!ENTITY::IS_ENTITY_DEAD(PLAYER::PLAYER_PED_ID(), 0)) | |
| { | |
| if (SYSTEM::VDIST2(ENTITY::GET_ENTITY_COORDS(nearbyPeds[iVar26], true), ENTITY::GET_ENTITY_COORDS(PLAYER::PLAYER_PED_ID(), true)) < 6400.00f) | |
| { | |
| return 0; | |
| } | |
| } | |
| } | |
| else | |
| { | |
| return 0; | |
| } | |
| } | |
| } | |
| iVar26++; | |
| } | |
| iVar27 = 0; | |
| switch (senderModels[iVar25]) | |
| { | |
| case 225514697: | |
| iVar27 = Global_16436[0]; | |
| break; | |
| case -1692214353: | |
| iVar27 = Global_16436[1]; | |
| break; | |
| case -1686040670: | |
| iVar27 = Global_16436[2]; | |
| break; | |
| } | |
| if (ENTITY::DOES_ENTITY_EXIST(iVar27)) | |
| { | |
| if (!ENTITY::IS_ENTITY_DEAD(PLAYER::PLAYER_PED_ID(), 0)) | |
| { | |
| if (SYSTEM::VDIST2(ENTITY::GET_ENTITY_COORDS(iVar27, true), ENTITY::GET_ENTITY_COORDS(PLAYER::PLAYER_PED_ID(), true)) < 6400.00f) | |
| { | |
| return 0; | |
| } | |
| } | |
| } | |
| switch (senderModels[iVar25]) | |
| { | |
| case 225514697: | |
| iVar27 = Global_16DA7[0]; | |
| break; | |
| case -1692214353: | |
| iVar27 = Global_16DA7[1]; | |
| break; | |
| case -1686040670: | |
| iVar27 = Global_16DA7[2]; | |
| break; | |
| } | |
| if (ENTITY::DOES_ENTITY_EXIST(iVar27)) | |
| { | |
| if (!ENTITY::IS_ENTITY_DEAD(PLAYER::PLAYER_PED_ID(), 0)) | |
| { | |
| if (SYSTEM::VDIST2(ENTITY::GET_ENTITY_COORDS(iVar27, true), ENTITY::GET_ENTITY_COORDS(PLAYER::PLAYER_PED_ID(), true)) < 6400.00f) | |
| { | |
| return 0; | |
| } | |
| } | |
| } | |
| } | |
| iVar25++; | |
| } | |
| } | |
| else | |
| { | |
| return 0; | |
| } | |
| return 1; | |
| } | |
| int get_ped_of_other_char_index(int iParam0) | |
| { | |
| if (!is_valid_char_index(iParam0)) | |
| { | |
| return Global_1A045.f_6D8C[iParam0 /*29*/]; | |
| } | |
| else if (iParam0 != 145) | |
| { | |
| } | |
| return 0; | |
| } | |
| int func_190() | |
| { | |
| if (Global_118AA) | |
| { | |
| return 1; | |
| } | |
| else if (Global_DCA8 && !Global_DCAE) | |
| { | |
| return 1; | |
| } | |
| return 0; | |
| } | |
| int func_191(float fParam0, bool bParam1) | |
| { | |
| struct<27> Var0; | |
| int iVar32; | |
| int iVar33; | |
| float fVar34; | |
| float fVar35; | |
| int iVar36; | |
| int iVar37; | |
| bool bVar38; | |
| iVar33 = -1; | |
| fVar34 = fParam0; | |
| if (PLAYER::IS_PLAYER_PLAYING(PLAYER::PLAYER_ID())) | |
| { | |
| iVar36 = get_active_char_as_bitfield(); | |
| iVar37 = 0; | |
| iVar37 = 0; | |
| while (iVar37 < 63) | |
| { | |
| iVar32 = iVar37; | |
| if (GAMEPLAY::IS_BIT_SET(Global_1A045.f_4888[iVar32 /*6*/], 2) && !GAMEPLAY::IS_BIT_SET(Global_1A045.f_4888[iVar32 /*6*/], 3)) | |
| { | |
| func_192(iVar32, &Var0); | |
| fVar35 = GAMEPLAY::GET_DISTANCE_BETWEEN_COORDS(ENTITY::GET_ENTITY_COORDS(PLAYER::PLAYER_PED_ID(), false), Var0.f_6, true); | |
| if (fVar35 < fVar34) | |
| { | |
| bVar38 = true; | |
| if (bParam1) | |
| { | |
| if (iVar36 != Var0.f_1A) | |
| { | |
| bVar38 = false; | |
| } | |
| } | |
| if (bVar38) | |
| { | |
| iVar33 = iVar32; | |
| fVar34 = fVar35; | |
| } | |
| } | |
| } | |
| iVar37++; | |
| } | |
| } | |
| return iVar33; | |
| } | |
| void func_192(int iParam0, var uParam1) | |
| { | |
| switch (iParam0) | |
| { | |
| case 0: | |
| func_193(uParam1, "Abigail1", func_195(iParam0), 0, 0, 4, -1604.67f, 5239.10f, 3.01f, 66, "", 109, 0, "ambient_Diving", 0, 0, 1, 4, 1, 0, 2359, func_194(iParam0), 1, 0); | |
| break; | |
| case 1: | |
| func_193(uParam1, "Abigail2", func_195(iParam0), 0, 0, 4, -1592.84f, 5214.04f, 3.01f, 400, "", 110, 0, "", 0, 0, -1, 4, 1, 0, 2359, func_194(iParam0), 1, 0); | |
| break; | |
| case 2: | |
| func_193(uParam1, "Barry1", func_195(iParam0), 0, 1, 4, 190.26f, -956.35f, 29.63f, 381, "", 74, 0, "", 0, 1, -1, 4, 1, 0, 2359, func_194(iParam0), 1, 0); | |
| break; | |
| case 3: | |
| func_193(uParam1, "Barry2", func_195(iParam0), 0, 1, 4, 190.26f, -956.35f, 29.63f, 381, "", -1, 0, "", 0, 1, -1, 4, 4, 0, 2359, func_194(iParam0), 1, 1); | |
| break; | |
| case 4: | |
| func_193(uParam1, "Barry3", func_195(iParam0), 0, 1, 4, 414.00f, -761.00f, 29.00f, 381, "", -1, 0, "", 164, 1, -1, 0, 2, 0, 2359, func_194(iParam0), 0, 0); | |
| break; | |
| case 5: | |
| func_193(uParam1, "Barry3A", func_195(iParam0), 1, 1, 0, 1199.27f, -1255.63f, 34.23f, 381, "BARSTASH", 84, 0, "", 166, 0, 7, 4, 2, 0, 2359, func_194(iParam0), 0, 1); | |
| break; | |
| case 6: | |
| func_193(uParam1, "Barry3C", func_195(iParam0), 3, 1, 0, -468.90f, -1713.06f, 18.21f, 381, "", 84, 0, "", 166, 0, 7, 4, 2, 0, 2359, func_194(iParam0), 0, 1); | |
| break; | |
| case 7: | |
| func_193(uParam1, "Barry4", func_195(iParam0), 0, 1, 4, 237.65f, -385.41f, 44.40f, 381, "", 85, 0, "postRC_Barry4", 0, 0, -1, 4, 2, 800, 2000, func_194(iParam0), 0, 0); | |
| break; | |
| case 8: | |
| func_193(uParam1, "Dreyfuss1", func_195(iParam0), 0, 2, 4, -1458.97f, 485.99f, 115.38f, 66, "LETTERS_HINT", 106, 0, "", 0, 0, -1, 4, 2, 0, 2359, func_194(iParam0), 0, 0); | |
| break; | |
| case 9: | |
| func_193(uParam1, "Epsilon1", func_195(iParam0), 0, 3, 4, -1622.89f, 4204.87f, 83.30f, 66, "", 86, 0, "", 0, 1, 10, 4, 1, 0, 2359, func_194(iParam0), 0, 0); | |
| break; | |
| case 10: | |
| func_193(uParam1, "Epsilon2", func_195(iParam0), 0, 3, 4, 242.70f, 362.70f, 104.74f, 206, "", 87, 16, "", 0, 0, 11, 4, 1, 0, 2359, func_194(iParam0), 1, 0); | |
| break; | |
| case 11: | |
| func_193(uParam1, "Epsilon3", func_195(iParam0), 0, 3, 4, 1835.53f, 4705.86f, 38.10f, 206, "", 88, 16, "epsCars", 0, 0, 12, 4, 1, 0, 2359, func_194(iParam0), 0, 0); | |
| break; | |
| case 12: | |
| func_193(uParam1, "Epsilon4", func_195(iParam0), 0, 3, 4, 1826.13f, 4698.88f, 38.92f, 206, "", 90, 16, "postRC_Epsilon4", 0, 0, 13, 4, 1, 0, 2359, func_194(iParam0), 0, 0); | |
| break; | |
| case 13: | |
| func_193(uParam1, "Epsilon5", func_195(iParam0), 0, 3, 4, 637.02f, 119.71f, 89.50f, 206, "", 89, 16, "epsRobes", 0, 0, 14, 4, 1, 0, 2359, func_194(iParam0), 1, 0); | |
| break; | |
| case 14: | |
| func_193(uParam1, "Epsilon6", func_195(iParam0), 0, 3, 4, -2892.93f, 3192.37f, 11.66f, 206, "", 93, 0, "", 0, 0, 15, 4, 1, 0, 2359, func_194(iParam0), 0, 1); | |
| break; | |
| case 15: | |
| func_193(uParam1, "Epsilon7", func_195(iParam0), 0, 3, 4, 524.43f, 3079.82f, 39.48f, 206, "", -1, 16, "epsDesert", 0, 0, 16, 4, 1, 0, 2359, func_194(iParam0), 0, 0); | |
| break; | |
| case 16: | |
| func_193(uParam1, "Epsilon8", func_195(iParam0), 0, 3, 4, -697.75f, 45.38f, 43.03f, 206, "", 94, 16, "epsilonTract", 0, 0, -1, 4, 1, 0, 2359, func_194(iParam0), 1, 0); | |
| break; | |
| case 17: | |
| func_193(uParam1, "Extreme1", func_195(iParam0), 0, 4, 4, -188.22f, 1296.10f, 302.86f, 66, "", -1, 0, "", 4, 1, 18, 4, 2, 0, 2359, func_194(iParam0), 0, 1); | |
| break; | |
| case 18: | |
| func_193(uParam1, "Extreme2", func_195(iParam0), 0, 4, 4, -954.19f, -2760.05f, 14.64f, 382, "", 96, 0, "", 171, 0, 19, 4, 2, 0, 2359, func_194(iParam0), 0, 1); | |
| break; | |
| case 19: | |
| func_193(uParam1, "Extreme3", func_195(iParam0), 0, 4, 4, -63.80f, -809.50f, 321.80f, 382, "", 97, 0, "", 0, 0, 20, 4, 2, 0, 2359, func_194(iParam0), 0, 1); | |
| break; | |
| case 20: | |
| func_193(uParam1, "Extreme4", func_195(iParam0), 0, 4, 4, 1731.41f, 96.96f, 170.39f, 382, "", 98, 16, "", 0, 0, -1, 4, 2, 0, 2359, func_194(iParam0), 0, 0); | |
| break; | |
| case 21: | |
| func_193(uParam1, "Fanatic1", func_195(iParam0), 0, 5, 4, -1877.82f, -440.65f, 45.05f, 405, "", 74, 0, "", 0, 1, -1, 4, 1, 700, 2000, func_194(iParam0), 1, 0); | |
| break; | |
| case 22: | |
| func_193(uParam1, "Fanatic2", func_195(iParam0), 0, 5, 4, 809.66f, 1279.76f, 360.49f, 405, "", -1, 0, "", 0, 1, -1, 4, 4, 700, 2000, func_194(iParam0), 1, 0); | |
| break; | |
| case 23: | |
| func_193(uParam1, "Fanatic3", func_195(iParam0), 0, 5, 4, -915.60f, 6139.20f, 5.50f, 405, "", -1, 0, "", 0, 1, -1, 4, 2, 700, 2000, func_194(iParam0), 0, 1); | |
| break; | |
| case 24: | |
| func_193(uParam1, "Hao1", func_195(iParam0), 0, 6, 4, -72.29f, -1260.63f, 28.14f, 66, "", -1, 0, "controller_Races", 13, 1, -1, 4, 2, 2000, 500, func_194(iParam0), 0, 1); | |
| break; | |
| case 25: | |
| func_193(uParam1, "Hunting1", func_195(iParam0), 0, 7, 4, 1804.32f, 3931.33f, 32.82f, 66, "", -1, 0, "", 174, 1, 26, 4, 4, 0, 2359, func_194(iParam0), 0, 1); | |
| break; | |
| case 26: | |
| func_193(uParam1, "Hunting2", func_195(iParam0), 0, 7, 4, -684.17f, 5839.16f, 16.09f, 384, "", 99, 0, "", 7, 0, -1, 4, 4, 0, 2359, func_194(iParam0), 0, 1); | |
| break; | |
| case 27: | |
| func_193(uParam1, "Josh1", func_195(iParam0), 0, 8, 4, -1104.93f, 291.25f, 64.30f, 66, "", -1, 0, "forSaleSigns", 0, 1, 28, 4, 4, 0, 2359, func_194(iParam0), 1, 0); | |
| break; | |
| case 28: | |
| func_193(uParam1, "Josh2", func_195(iParam0), 0, 8, 4, 565.39f, -1772.88f, 29.77f, 385, "", 105, 0, "", 0, 0, 29, 4, 4, 0, 2359, func_194(iParam0), 1, 1); | |
| break; | |
| case 29: | |
| func_193(uParam1, "Josh3", func_195(iParam0), 0, 8, 4, 565.39f, -1772.88f, 29.77f, 385, "", -1, 16, "", 0, 0, 30, 4, 4, 0, 2359, func_194(iParam0), 1, 1); | |
| break; | |
| case 30: | |
| func_193(uParam1, "Josh4", func_195(iParam0), 0, 8, 4, -1104.93f, 291.25f, 64.30f, 385, "", -1, 36, "", 0, 0, -1, 4, 4, 0, 2359, func_194(iParam0), 1, 0); | |
| break; | |
| case 31: | |
| func_193(uParam1, "Maude1", func_195(iParam0), 0, 9, 4, 2726.10f, 4145.00f, 44.30f, 66, "", -1, 0, "BailBond_Launcher", 0, 1, -1, 4, 4, 0, 2359, func_194(iParam0), 0, 1); | |
| break; | |
| case 32: | |
| func_193(uParam1, "Minute1", func_195(iParam0), 0, 10, 4, 327.85f, 3405.70f, 35.73f, 66, "", -1, 0, "", 0, 1, 33, 4, 4, 0, 2359, func_194(iParam0), 0, 1); | |
| break; | |
| case 33: | |
| func_193(uParam1, "Minute2", func_195(iParam0), 0, 10, 4, 18.00f, 4527.00f, 105.00f, 386, "", -1, 10, "", 0, 0, 34, 4, 4, 0, 2359, func_194(iParam0), 0, 1); | |
| break; | |
| case 34: | |
| func_193(uParam1, "Minute3", func_195(iParam0), 0, 10, 4, -303.82f, 6211.29f, 31.05f, 386, "", -1, 10, "", 0, 0, -1, 4, 4, 0, 2359, func_194(iParam0), 0, 1); | |
| break; | |
| case 35: | |
| func_193(uParam1, "MrsPhilips1", func_195(iParam0), 0, 11, 4, 1972.59f, 3816.43f, 32.42f, 66, "", -1, 0, "ambient_MrsPhilips", 0, 1, -1, 4, 4, 0, 2359, func_194(iParam0), 0, 0); | |
| break; | |
| case 36: | |
| func_193(uParam1, "MrsPhilips2", func_195(iParam0), 0, 11, 4, 0.00f, 0.00f, 0.00f, -1, "", -1, 0, "", 0, 1, -1, 4, 4, 0, 2359, func_194(iParam0), 0, 0); | |
| break; | |
| case 37: | |
| func_193(uParam1, "Nigel1", func_195(iParam0), 0, 12, 4, -1097.16f, 790.01f, 164.52f, 66, "", -1, 0, "", 177, 1, -1, 1, 4, 0, 2359, func_194(iParam0), 1, 0); | |
| break; | |
| case 38: | |
| func_193(uParam1, "Nigel1A", func_195(iParam0), 0, 12, 1, -558.65f, 284.49f, 90.86f, 149, "NIGITEMS", 100, 0, "", 0, 0, 42, 4, 4, 0, 2359, func_194(iParam0), 1, 1); | |
| break; | |
| case 39: | |
| func_193(uParam1, "Nigel1B", func_195(iParam0), 0, 12, 1, -1034.15f, 366.08f, 80.11f, 149, "", 100, 0, "", 0, 0, 42, 4, 4, 700, 2000, func_194(iParam0), 1, 1); | |
| break; | |
| case 40: | |
| func_193(uParam1, "Nigel1C", func_195(iParam0), 0, 12, 1, -623.91f, -266.17f, 37.76f, 149, "", 100, 0, "", 0, 0, 42, 4, 4, 700, 2000, func_194(iParam0), 1, 1); | |
| break; | |
| case 41: | |
| func_193(uParam1, "Nigel1D", func_195(iParam0), 0, 12, 1, -1096.85f, 67.68f, 52.95f, 149, "", 100, 0, "", 0, 0, 42, 4, 4, 700, 2000, func_194(iParam0), 1, 1); | |
| break; | |
| case 42: | |
| func_193(uParam1, "Nigel2", func_195(iParam0), 0, 12, 4, -1310.70f, -640.22f, 26.54f, 149, "", -1, 8, "", 0, 0, 43, 4, 4, 0, 2359, func_194(iParam0), 1, 1); | |
| break; | |
| case 43: | |
| func_193(uParam1, "Nigel3", func_195(iParam0), 0, 12, 4, -44.75f, -1288.67f, 28.21f, 149, "", -1, 16, "postRC_Nigel3", 0, 0, -1, 4, 4, 0, 2359, func_194(iParam0), 1, 1); | |
| break; | |
| case 44: | |
| func_193(uParam1, "Omega1", func_195(iParam0), 0, 13, 4, 2468.51f, 3437.39f, 49.90f, 66, "", -1, 0, "spaceshipParts", 0, 1, 45, 4, 2, 0, 2359, func_194(iParam0), 0, 0); | |
| break; | |
| case 45: | |
| func_193(uParam1, "Omega2", func_195(iParam0), 0, 13, 4, 2319.44f, 2583.58f, 46.76f, 387, "", 107, 0, "", 0, 0, -1, 4, 2, 0, 2359, func_194(iParam0), 0, 0); | |
| break; | |
| case 46: | |
| func_193(uParam1, "Paparazzo1", func_195(iParam0), 0, 14, 4, -149.75f, 285.81f, 93.67f, 66, "", -1, 0, "", 0, 1, 47, 4, 2, 0, 2359, func_194(iParam0), 0, 1); | |
| break; | |
| case 47: | |
| func_193(uParam1, "Paparazzo2", func_195(iParam0), 0, 14, 4, -70.71f, 301.43f, 106.79f, 389, "", -1, 8, "", 0, 0, 48, 4, 2, 0, 2359, func_194(iParam0), 0, 1); | |
| break; | |
| case 48: | |
| func_193(uParam1, "Paparazzo3", func_195(iParam0), 0, 14, 4, -257.22f, 292.85f, 90.63f, 389, "", -1, 8, "", 183, 1, -1, 2, 2, 0, 2359, func_194(iParam0), 0, 0); | |
| break; | |
| case 49: | |
| func_193(uParam1, "Paparazzo3A", func_195(iParam0), 0, 14, 2, 305.52f, 157.19f, 102.94f, 389, "PAPPHOTO", 102, 0, "", 0, 0, 51, 4, 2, 0, 2359, func_194(iParam0), 0, 1); | |
| break; | |
| case 50: | |
| func_193(uParam1, "Paparazzo3B", func_195(iParam0), 0, 14, 2, 1040.96f, -534.42f, 60.17f, 389, "", 102, 0, "", 0, 0, 51, 4, 2, 0, 2359, func_194(iParam0), 0, 1); | |
| break; | |
| case 51: | |
| func_193(uParam1, "Paparazzo4", func_195(iParam0), 0, 14, 4, -484.20f, 229.68f, 82.21f, 389, "", -1, 8, "", 0, 1, -1, 4, 2, 0, 2359, func_194(iParam0), 0, 0); | |
| break; | |
| case 52: | |
| func_193(uParam1, "Rampage1", func_195(iParam0), 0, 15, 4, 908.00f, 3643.70f, 32.20f, 66, "", -1, 0, "", 0, 1, 54, 4, 4, 0, 2359, func_194(iParam0), 0, 0); | |
| break; | |
| case 54: | |
| func_193(uParam1, "Rampage3", func_195(iParam0), 0, 15, 4, 465.10f, -1849.30f, 27.80f, 84, "", -1, 0, "", 0, 1, 55, 4, 4, 0, 2359, func_194(iParam0), 1, 0); | |
| break; | |
| case 55: | |
| func_193(uParam1, "Rampage4", func_195(iParam0), 0, 15, 4, -161.00f, -1669.70f, 33.00f, 84, "", -1, 0, "", 0, 0, 56, 4, 4, 0, 2359, func_194(iParam0), 1, 0); | |
| break; | |
| case 56: | |
| func_193(uParam1, "Rampage5", func_195(iParam0), 0, 15, 4, -1298.20f, 2504.14f, 21.09f, 84, "", -1, 0, "", 0, 0, 53, 4, 4, 0, 2359, func_194(iParam0), 0, 0); | |
| break; | |
| case 53: | |
| func_193(uParam1, "Rampage2", func_195(iParam0), 0, 15, 4, 1181.50f, -400.10f, 67.50f, 84, "", -1, 0, "rampage_controller", 0, 0, -1, 4, 4, 0, 2359, func_194(iParam0), 1, 0); | |
| break; | |
| case 57: | |
| func_193(uParam1, "TheLastOne", func_195(iParam0), 0, 16, 4, -1298.98f, 4640.16f, 105.67f, 66, "", 133, 1, "", 0, 1, -1, 4, 2, 0, 2359, func_194(iParam0), 0, 1); | |
| break; | |
| case 58: | |
| func_193(uParam1, "Tonya1", func_195(iParam0), 0, 17, 4, -14.39f, -1472.69f, 29.58f, 66, "AM_H_RCFS", -1, 0, "ambient_TonyaCall", 24, 1, 59, 4, 2, 0, 2359, func_194(iParam0), 0, 1); | |
| break; | |
| case 59: | |
| func_193(uParam1, "Tonya2", func_195(iParam0), 0, 17, 4, -14.39f, -1472.69f, 29.58f, 388, "", -1, 48, "ambient_Tonya", 185, 0, 60, 4, 2, 0, 2359, func_194(iParam0), 0, 1); | |
| break; | |
| case 60: | |
| func_193(uParam1, "Tonya3", func_195(iParam0), 0, 17, 4, 0.00f, 0.00f, 0.00f, -1, "", -1, 0, "", 187, 0, 61, 4, 2, 0, 2359, func_194(iParam0), 0, 1); | |
| break; | |
| case 61: | |
| func_193(uParam1, "Tonya4", func_195(iParam0), 0, 17, 4, 0.00f, 0.00f, 0.00f, -1, "", -1, 0, "", 0, 0, 62, 4, 2, 0, 2359, func_194(iParam0), 0, 1); | |
| break; | |
| case 62: | |
| func_193(uParam1, "Tonya5", func_195(iParam0), 0, 17, 4, -14.39f, -1472.69f, 29.58f, 388, "", -1, 48, "", 0, 0, -1, 4, 2, 0, 2359, func_194(iParam0), 0, 1); | |
| break; | |
| default: | |
| break; | |
| } | |
| } | |
| void func_193(var uParam0, char *sParam1, struct<2> Param2, int iParam4, int iParam5, int iParam6, vector3 vParam7, int iParam10, char *sParam11, int iParam12, int iParam13, char *sParam14, int iParam15, int iParam16, int iParam17, int iParam18, int iParam19, int iParam20, int iParam21, var uParam22, int iParam23, int iParam24) | |
| { | |
| uParam0->f_4 = iParam5; | |
| *uParam0 = sParam1; | |
| uParam0->f_1 = {Param2}; | |
| uParam0->f_3 = iParam4; | |
| uParam0->f_5 = iParam6; | |
| uParam0->f_6 = {vParam7}; | |
| uParam0->f_9 = iParam10; | |
| StringCopy(&(uParam0->f_A), sParam11, 16); | |
| uParam0->f_E = iParam12; | |
| uParam0->f_F = iParam13; | |
| StringCopy(&(uParam0->f_10), sParam14, 24); | |
| uParam0->f_16 = iParam15; | |
| uParam0->f_17 = iParam16; | |
| uParam0->f_18 = iParam17; | |
| uParam0->f_19 = iParam18; | |
| uParam0->f_1A = iParam19; | |
| uParam0->f_1B = iParam20; | |
| uParam0->f_1C = iParam21; | |
| uParam0->f_1D = uParam22; | |
| uParam0->f_1E = iParam23; | |
| uParam0->f_1F = iParam24; | |
| } | |
| int func_194(int iParam0) | |
| { | |
| switch (iParam0) | |
| { | |
| case 0: | |
| return 0; | |
| break; | |
| case 1: | |
| return 0; | |
| break; | |
| case 2: | |
| return 1; | |
| break; | |
| case 3: | |
| return 1; | |
| break; | |
| case 4: | |
| return 0; | |
| break; | |
| case 5: | |
| return 1; | |
| break; | |
| case 6: | |
| return 1; | |
| break; | |
| case 7: | |
| return 0; | |
| break; | |
| case 8: | |
| return 1; | |
| break; | |
| case 9: | |
| return 0; | |
| break; | |
| case 10: | |
| return 0; | |
| break; | |
| case 11: | |
| return 0; | |
| break; | |
| case 12: | |
| return 1; | |
| break; | |
| case 13: | |
| return 0; | |
| break; | |
| case 14: | |
| return 1; | |
| break; | |
| case 15: | |
| return 0; | |
| break; | |
| case 16: | |
| return 1; | |
| break; | |
| case 17: | |
| return 1; | |
| break; | |
| case 18: | |
| return 1; | |
| break; | |
| case 19: | |
| return 1; | |
| break; | |
| case 20: | |
| return 1; | |
| break; | |
| case 21: | |
| return 1; | |
| break; | |
| case 22: | |
| return 1; | |
| break; | |
| case 23: | |
| return 1; | |
| break; | |
| case 24: | |
| return 1; | |
| break; | |
| case 25: | |
| return 1; | |
| break; | |
| case 26: | |
| return 1; | |
| break; | |
| case 27: | |
| return 0; | |
| break; | |
| case 28: | |
| return 1; | |
| break; | |
| case 29: | |
| return 1; | |
| break; | |
| case 30: | |
| return 1; | |
| break; | |
| case 31: | |
| return 0; | |
| break; | |
| case 32: | |
| return 1; | |
| break; | |
| case 33: | |
| return 1; | |
| break; | |
| case 34: | |
| return 1; | |
| break; | |
| case 35: | |
| return 0; | |
| break; | |
| case 36: | |
| return 0; | |
| break; | |
| case 37: | |
| return 0; | |
| break; | |
| case 38: | |
| return 1; | |
| break; | |
| case 39: | |
| return 1; | |
| break; | |
| case 40: | |
| return 1; | |
| break; | |
| case 41: | |
| return 1; | |
| break; | |
| case 42: | |
| return 1; | |
| break; | |
| case 43: | |
| return 1; | |
| break; | |
| case 44: | |
| return 0; | |
| break; | |
| case 45: | |
| return 0; | |
| break; | |
| case 46: | |
| return 1; | |
| break; | |
| case 47: | |
| return 1; | |
| break; | |
| case 48: | |
| return 0; | |
| break; | |
| case 49: | |
| return 1; | |
| break; | |
| case 50: | |
| return 1; | |
| break; | |
| case 51: | |
| return 1; | |
| break; | |
| case 52: | |
| return 1; | |
| break; | |
| case 54: | |
| return 1; | |
| break; | |
| case 55: | |
| return 1; | |
| break; | |
| case 56: | |
| return 1; | |
| break; | |
| case 53: | |
| return 1; | |
| break; | |
| case 57: | |
| return 1; | |
| break; | |
| case 58: | |
| return 1; | |
| break; | |
| case 59: | |
| return 1; | |
| break; | |
| case 60: | |
| return 1; | |
| break; | |
| case 61: | |
| return 1; | |
| break; | |
| case 62: | |
| return 1; | |
| break; | |
| default: | |
| break; | |
| } | |
| return 0; | |
| } | |
| struct<2> func_195(int iParam0) | |
| { | |
| struct<2> Var0; | |
| char[] cVar2[8]; | |
| StringCopy(&Var0, "", 8); | |
| cVar2 = {func_196(iParam0)}; | |
| if (GAMEPLAY::IS_STRING_NULL_OR_EMPTY(&cVar2)) | |
| { | |
| } | |
| else | |
| { | |
| StringCopy(&Var0, "RC_", 8); | |
| StringConCat(&Var0, &cVar2, 8); | |
| } | |
| return Var0; | |
| } | |
| struct<2> | |
| func_196(int iParam0) | |
| { | |
| struct<2> Var0; | |
| StringCopy(&Var0, "", 8); | |
| switch (iParam0) | |
| { | |
| case 0: | |
| StringCopy(&Var0, "ABI1", 8); | |
| break; | |
| case 1: | |
| StringCopy(&Var0, "ABI2", 8); | |
| break; | |
| case 2: | |
| StringCopy(&Var0, "BA1", 8); | |
| break; | |
| case 3: | |
| StringCopy(&Var0, "BA2", 8); | |
| break; | |
| case 4: | |
| StringCopy(&Var0, "BA3", 8); | |
| break; | |
| case 5: | |
| StringCopy(&Var0, "BA3A", 8); | |
| break; | |
| case 6: | |
| StringCopy(&Var0, "BA3C", 8); | |
| break; | |
| case 7: | |
| StringCopy(&Var0, "BA4", 8); | |
| break; | |
| case 8: | |
| StringCopy(&Var0, "DRE1", 8); | |
| break; | |
| case 9: | |
| StringCopy(&Var0, "EPS1", 8); | |
| break; | |
| case 10: | |
| StringCopy(&Var0, "EPS2", 8); | |
| break; | |
| case 11: | |
| StringCopy(&Var0, "EPS3", 8); | |
| break; | |
| case 12: | |
| StringCopy(&Var0, "EPS4", 8); | |
| break; | |
| case 13: | |
| StringCopy(&Var0, "EPS5", 8); | |
| break; | |
| case 14: | |
| StringCopy(&Var0, "EPS6", 8); | |
| break; | |
| case 15: | |
| StringCopy(&Var0, "EPS7", 8); | |
| break; | |
| case 16: | |
| StringCopy(&Var0, "EPS8", 8); | |
| break; | |
| case 17: | |
| StringCopy(&Var0, "EXT1", 8); | |
| break; | |
| case 18: | |
| StringCopy(&Var0, "EXT2", 8); | |
| break; | |
| case 19: | |
| StringCopy(&Var0, "EXT3", 8); | |
| break; | |
| case 20: | |
| StringCopy(&Var0, "EXT4", 8); | |
| break; | |
| case 21: | |
| StringCopy(&Var0, "FAN1", 8); | |
| break; | |
| case 22: | |
| StringCopy(&Var0, "FAN2", 8); | |
| break; | |
| case 23: | |
| StringCopy(&Var0, "FAN3", 8); | |
| break; | |
| case 24: | |
| StringCopy(&Var0, "HAO1", 8); | |
| break; | |
| case 25: | |
| StringCopy(&Var0, "HUN1", 8); | |
| break; | |
| case 26: | |
| StringCopy(&Var0, "HUN2", 8); | |
| break; | |
| case 27: | |
| StringCopy(&Var0, "JOS1", 8); | |
| break; | |
| case 28: | |
| StringCopy(&Var0, "JOS2", 8); | |
| break; | |
| case 29: | |
| StringCopy(&Var0, "JOS3", 8); | |
| break; | |
| case 30: | |
| StringCopy(&Var0, "JOS4", 8); | |
| break; | |
| case 31: | |
| StringCopy(&Var0, "MAU1", 8); | |
| break; | |
| case 32: | |
| StringCopy(&Var0, "MIN1", 8); | |
| break; | |
| case 33: | |
| StringCopy(&Var0, "MIN2", 8); | |
| break; | |
| case 34: | |
| StringCopy(&Var0, "MIN3", 8); | |
| break; | |
| case 35: | |
| StringCopy(&Var0, "MRS1", 8); | |
| break; | |
| case 36: | |
| StringCopy(&Var0, "MRS2", 8); | |
| break; | |
| case 37: | |
| StringCopy(&Var0, "NI1", 8); | |
| break; | |
| case 38: | |
| StringCopy(&Var0, "NI1A", 8); | |
| break; | |
| case 39: | |
| StringCopy(&Var0, "NI1B", 8); | |
| break; | |
| case 40: | |
| StringCopy(&Var0, "NI1C", 8); | |
| break; | |
| case 41: | |
| StringCopy(&Var0, "NI1D", 8); | |
| break; | |
| case 42: | |
| StringCopy(&Var0, "NI2", 8); | |
| break; | |
| case 43: | |
| StringCopy(&Var0, "NI3", 8); | |
| break; | |
| case 44: | |
| StringCopy(&Var0, "OME1", 8); | |
| break; | |
| case 45: | |
| StringCopy(&Var0, "OME2", 8); | |
| break; | |
| case 46: | |
| StringCopy(&Var0, "PA1", 8); | |
| break; | |
| case 47: | |
| StringCopy(&Var0, "PA2", 8); | |
| break; | |
| case 48: | |
| StringCopy(&Var0, "PA3", 8); | |
| break; | |
| case 49: | |
| StringCopy(&Var0, "PA3A", 8); | |
| break; | |
| case 50: | |
| StringCopy(&Var0, "PA3B", 8); | |
| break; | |
| case 51: | |
| StringCopy(&Var0, "PA4", 8); | |
| break; | |
| case 52: | |
| StringCopy(&Var0, "RAM1", 8); | |
| break; | |
| case 53: | |
| StringCopy(&Var0, "RAM2", 8); | |
| break; | |
| case 54: | |
| StringCopy(&Var0, "RAM3", 8); | |
| break; | |
| case 55: | |
| StringCopy(&Var0, "RAM4", 8); | |
| break; | |
| case 56: | |
| StringCopy(&Var0, "RAM5", 8); | |
| break; | |
| case 57: | |
| StringCopy(&Var0, "SAS1", 8); | |
| break; | |
| case 58: | |
| StringCopy(&Var0, "TON1", 8); | |
| break; | |
| case 59: | |
| StringCopy(&Var0, "TON2", 8); | |
| break; | |
| case 60: | |
| StringCopy(&Var0, "TON3", 8); | |
| break; | |
| case 61: | |
| StringCopy(&Var0, "TON4", 8); | |
| break; | |
| case 62: | |
| StringCopy(&Var0, "TON5", 8); | |
| break; | |
| default: | |
| break; | |
| } | |
| return Var0; | |
| } | |
| int | |
| get_active_char_as_bitfield() | |
| { | |
| update_global_char_index(); | |
| switch (Global_1A045.f_935.f_21B.f_10E1) | |
| { | |
| case 0: | |
| return 1; | |
| break; | |
| case 1: | |
| return 2; | |
| break; | |
| case 2: | |
| return 4; | |
| break; | |
| } | |
| return 0; | |
| } | |
| int is_player_timetable_scene_running() | |
| { | |
| if (SCRIPT::_GET_NUM_OF_INSTANCES_OF_SCRIPT_WITH_NAME_HASH(-1424752554) > 0) | |
| { | |
| return 1; | |
| } | |
| return 0; | |
| } | |
| int func_199() | |
| { | |
| if (!NETWORK::NETWORK_IS_GAME_IN_PROGRESS()) | |
| { | |
| return Global_16436.f_2C == 1; | |
| } | |
| return 0; | |
| } | |
| int func_200(int iParam0) | |
| { | |
| if (iParam0 == 0) | |
| { | |
| return 0; | |
| } | |
| if (func_201(iParam0) == -1) | |
| { | |
| return 0; | |
| } | |
| return 1; | |
| } | |
| int func_201(int iParam0) | |
| { | |
| int iVar0; | |
| if (iParam0 == 0) | |
| { | |
| return -1; | |
| } | |
| iVar0 = 0; | |
| iVar0 = 0; | |
| while (iVar0 < 16) | |
| { | |
| if (!Global_91FB[iVar0 /*5*/] == -1) | |
| { | |
| if (iParam0 == Global_91FB[iVar0 /*5*/].f_1) | |
| { | |
| return iVar0; | |
| } | |
| } | |
| iVar0++; | |
| } | |
| return -1; | |
| } | |
| int is_phone_on_call() | |
| { | |
| if (Global_38D9.f_1 == 10 || Global_38D9.f_1 == 9) | |
| { | |
| return 1; | |
| } | |
| return 0; | |
| } | |
| int is_phone_disabled() | |
| { | |
| if (Global_38D9.f_1 == 1) | |
| { | |
| return 1; | |
| } | |
| return 0; | |
| } | |
| void func_204(var uParam0) | |
| { | |
| if (uParam0->f_3 == 5) | |
| { | |
| if ((uParam0->f_4 - GAMEPLAY::GET_GAME_TIMER()) > 6000) | |
| { | |
| uParam0->f_4 = GAMEPLAY::GET_GAME_TIMER() + 6000; | |
| } | |
| } | |
| } | |
| void update_while_on_phone(int curTime) | |
| { | |
| if (is_phone_on_call()) | |
| { | |
| if (iLocal_90_notificationState == 0) | |
| { | |
| func_245(curTime); | |
| } | |
| if (iLocal_90_notificationState == 0) | |
| { | |
| func_239(curTime); | |
| } | |
| if (iLocal_90_notificationState == 0) | |
| { | |
| func_230(curTime); | |
| } | |
| } | |
| func_206(curTime); | |
| } | |
| void func_206(var curTime) | |
| { | |
| char[] cVar0[5][8]; | |
| switch (iLocal_83) | |
| { | |
| case 0: | |
| if (!PED::IS_PED_INJURED(PLAYER::PLAYER_PED_ID())) | |
| { | |
| if (func_229(48)) | |
| { | |
| if ((((func_228() || func_227()) || func_226()) || func_225()) || func_224()) | |
| { | |
| if ((((!ENTITY::DOES_ENTITY_EXIST(func_223(60)) && !ENTITY::DOES_ENTITY_EXIST(func_223(61))) && Global_117A2 == -1) && !func_222()) && !func_221()) | |
| { | |
| if (get_active_char_index() == 0) | |
| { | |
| func_161(&uLocal_91, 0, PLAYER::PLAYER_PED_ID(), "MICHAEL", 0, 1); | |
| func_161(&uLocal_91, 3, 0, "DBLIMPOperator", 0, 1); | |
| cVar0[0] = "DAB_HELLO"; | |
| cVar0[1] = "DAB_MICHAEL"; | |
| cVar0[2] = "DAB_SEND"; | |
| cVar0[3] = "DAB_THANK_M"; | |
| cVar0[4] = "DAB_BYE"; | |
| } | |
| else if (get_active_char_index() == 1) | |
| { | |
| func_161(&uLocal_91, 1, PLAYER::PLAYER_PED_ID(), "FRANKLIN", 0, 1); | |
| func_161(&uLocal_91, 3, 0, "DBLIMPOperator", 0, 1); | |
| cVar0[0] = "DAB_HELLO"; | |
| cVar0[1] = "DAB_FRANKLIN"; | |
| cVar0[2] = "DAB_SEND"; | |
| cVar0[3] = "DAB_THANK_F"; | |
| cVar0[4] = "DAB_BYE"; | |
| } | |
| else if (get_active_char_index() == 2) | |
| { | |
| func_161(&uLocal_91, 2, PLAYER::PLAYER_PED_ID(), "TREVOR", 0, 1); | |
| func_161(&uLocal_91, 3, 0, "DBLIMPOperator", 0, 1); | |
| cVar0[0] = "DAB_HELLO"; | |
| cVar0[1] = "DAB_TREVOR"; | |
| cVar0[2] = "DAB_SEND"; | |
| cVar0[3] = "DAB_THANK_T"; | |
| cVar0[4] = "DAB_BYE"; | |
| } | |
| if (func_217(5, &uLocal_91, 48, "BLIMPAU", &cVar0, &cVar0, 11, 1, 0, 0, 0)) | |
| { | |
| iLocal_83++; | |
| } | |
| } | |
| } | |
| } | |
| } | |
| break; | |
| case 1: | |
| if (!PED::IS_PED_INJURED(PLAYER::PLAYER_PED_ID())) | |
| { | |
| if (!func_229(48) && !is_phone_in_use(1)) | |
| { | |
| Global_9070_nextNotificationTime = *curTime + 20000; | |
| if (!func_134()) | |
| { | |
| iLocal_83 = 3; | |
| } | |
| } | |
| else if (Global_117A2 != -1) | |
| { | |
| func_123(0); | |
| } | |
| } | |
| break; | |
| case 2: | |
| if (GAMEPLAY::GET_GAME_TIMER() > Global_9070_nextNotificationTime) | |
| { | |
| iLocal_83++; | |
| } | |
| break; | |
| case 3: | |
| func_207(); | |
| iLocal_83 = 0; | |
| break; | |
| } | |
| } | |
| int func_207() | |
| { | |
| int iVar0; | |
| float fVar1; | |
| int iVar2; | |
| vector3 vVar3[2]; | |
| vector3 vVar10; | |
| if (PED::IS_PED_INJURED(PLAYER::PLAYER_PED_ID())) | |
| { | |
| return 0; | |
| } | |
| fVar1 = 99999.99f; | |
| iVar2 = -1; | |
| vVar10 = {ENTITY::GET_ENTITY_COORDS(PLAYER::PLAYER_PED_ID(), true)}; | |
| vVar3[0 /*3*/] = {1133.21f, 120.20f, 80.90f}; | |
| vVar3[1 /*3*/] = {-806.31f, -2679.65f, 13.90f}; | |
| iVar0 = 0; | |
| while (iVar0 < 2) | |
| { | |
| if (GAMEPLAY::GET_DISTANCE_BETWEEN_COORDS(vVar10, vVar3[iVar0 /*3*/], true) < fVar1) | |
| { | |
| fVar1 = GAMEPLAY::GET_DISTANCE_BETWEEN_COORDS(vVar10, vVar3[iVar0 /*3*/], true); | |
| iVar2 = iVar0; | |
| } | |
| iVar0++; | |
| } | |
| func_212(60); | |
| func_212(61); | |
| if (CAM::IS_SPHERE_VISIBLE(vVar3[iVar2 /*3*/], 300.00f) || fVar1 < 300.00f) | |
| { | |
| if (iVar2 == 0) | |
| { | |
| iVar2 = 1; | |
| } | |
| else | |
| { | |
| iVar2 = 0; | |
| } | |
| } | |
| if (iVar2 == 0) | |
| { | |
| func_209(60, 1); | |
| func_208(60); | |
| return 1; | |
| } | |
| else if (iVar2 == 1) | |
| { | |
| func_209(61, 1); | |
| func_208(61); | |
| return 1; | |
| } | |
| return 0; | |
| } | |
| void func_208(int iParam0) | |
| { | |
| if (iParam0 == -1) | |
| { | |
| return; | |
| } | |
| Global_11309[iParam0] = 0; | |
| Global_11309.f_45[iParam0] = 0; | |
| } | |
| void func_209(int iParam0, bool bParam1) | |
| { | |
| if (iParam0 == -1) | |
| { | |
| return; | |
| } | |
| if (bParam1) | |
| { | |
| if (!func_211(iParam0, 0)) | |
| { | |
| func_210(iParam0, 1, 0); | |
| func_210(iParam0, 2, 0); | |
| func_210(iParam0, 3, 0); | |
| func_210(iParam0, 4, 0); | |
| func_210(iParam0, 0, 1); | |
| Global_11309[iParam0] = 1; | |
| } | |
| } | |
| else | |
| { | |
| func_210(iParam0, 0, 0); | |
| } | |
| } | |
| void func_210(int iParam0, int iParam1, bool bParam2) | |
| { | |
| if (iParam0 == -1) | |
| { | |
| return; | |
| } | |
| if (bParam2) | |
| { | |
| GAMEPLAY::SET_BIT(&(Global_1A045.f_7FE7[iParam0]), iParam1); | |
| } | |
| else | |
| { | |
| GAMEPLAY::CLEAR_BIT(&(Global_1A045.f_7FE7[iParam0]), iParam1); | |
| } | |
| } | |
| bool func_211(int iParam0, int iParam1) | |
| { | |
| if (iParam0 == -1) | |
| { | |
| return 0; | |
| } | |
| return GAMEPLAY::IS_BIT_SET(Global_1A045.f_7FE7[iParam0], iParam1); | |
| } | |
| void func_212(int iParam0) | |
| { | |
| if (iParam0 == -1) | |
| { | |
| return; | |
| } | |
| if (func_213(&(Global_11309.f_22B[0 /*21*/]), iParam0)) | |
| { | |
| if (ENTITY::DOES_ENTITY_EXIST(Global_11309.f_8B[iParam0])) | |
| { | |
| ENTITY::SET_ENTITY_AS_MISSION_ENTITY(Global_11309.f_8B[iParam0], 1, 1); | |
| ENTITY::SET_VEHICLE_AS_NO_LONGER_NEEDED(&(Global_11309.f_8B[iParam0])); | |
| Global_11309.f_8B[iParam0] = 0; | |
| } | |
| if (GAMEPLAY::IS_BIT_SET(Global_11309.f_22B[0 /*21*/].f_9, 13)) | |
| { | |
| func_209(iParam0, 0); | |
| } | |
| } | |
| } | |
| int func_213(var uParam0, int iParam1) | |
| { | |
| int iVar0; | |
| int iVar1; | |
| *uParam0 = {0.00f, 0.00f, 0.00f}; | |
| uParam0->f_3 = 0.00f; | |
| uParam0->f_4 = 0; | |
| StringCopy(&(uParam0->f_5), "", 16); | |
| uParam0->f_9 = 0; | |
| uParam0->f_A = 0; | |
| uParam0->f_B = 0; | |
| uParam0->f_C = 145; | |
| uParam0->f_D = -1; | |
| uParam0->f_E = 0; | |
| uParam0->f_F = {0.00f, 0.00f, 0.00f}; | |
| uParam0->f_12 = {0.00f, 0.00f, 0.00f}; | |
| switch (iParam1) | |
| { | |
| case 0: | |
| *uParam0 = {-831.85f, 172.12f, 69.91f}; | |
| uParam0->f_3 = 157.57f; | |
| uParam0->f_4 = func_215(0, 1); | |
| uParam0->f_C = 0; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 20); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 7); | |
| iVar0 = 1; | |
| break; | |
| case 1: | |
| *uParam0 = {1970.94f, 3801.68f, 31.14f}; | |
| uParam0->f_3 = 301.40f; | |
| uParam0->f_4 = func_215(0, 1); | |
| uParam0->f_C = 0; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 20); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 7); | |
| iVar0 = 1; | |
| break; | |
| case 2: | |
| *uParam0 = {-22.63f, -1439.14f, 29.65f}; | |
| uParam0->f_3 = 180.08f; | |
| uParam0->f_4 = func_215(1, 1); | |
| uParam0->f_C = 1; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 20); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 7); | |
| iVar0 = 1; | |
| break; | |
| case 3: | |
| *uParam0 = {-22.52f, -1434.70f, 29.66f}; | |
| uParam0->f_3 = 141.61f; | |
| uParam0->f_4 = func_215(1, 2); | |
| uParam0->f_C = 1; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 19); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 7); | |
| iVar0 = 1; | |
| break; | |
| case 4: | |
| *uParam0 = {10.93f, 545.67f, 174.80f}; | |
| uParam0->f_3 = 61.39f; | |
| uParam0->f_4 = func_215(1, 1); | |
| uParam0->f_C = 1; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 20); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 7); | |
| iVar0 = 1; | |
| break; | |
| case 5: | |
| *uParam0 = {6.11f, 544.97f, 174.28f}; | |
| uParam0->f_3 = 92.15f; | |
| uParam0->f_4 = func_215(1, 2); | |
| uParam0->f_C = 1; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 19); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 7); | |
| iVar0 = 1; | |
| break; | |
| case 6: | |
| *uParam0 = {1981.42f, 3808.13f, 31.14f}; | |
| uParam0->f_3 = 117.26f; | |
| uParam0->f_4 = func_215(2, 1); | |
| uParam0->f_C = 2; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 20); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 7); | |
| iVar0 = 1; | |
| break; | |
| case 7: | |
| *uParam0 = {-1158.49f, -1529.37f, 3.90f}; | |
| uParam0->f_3 = 35.75f; | |
| uParam0->f_4 = func_215(2, 1); | |
| uParam0->f_C = 2; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 20); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 7); | |
| iVar0 = 1; | |
| break; | |
| case 8: | |
| *uParam0 = {148.29f, -1270.57f, 28.23f}; | |
| uParam0->f_3 = 208.47f; | |
| uParam0->f_4 = func_215(2, 1); | |
| uParam0->f_C = 2; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 20); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 7); | |
| iVar0 = 1; | |
| break; | |
| case 9: | |
| *uParam0 = {1459.51f, -1380.45f, 78.33f}; | |
| uParam0->f_3 = 99.62f; | |
| uParam0->f_4 = -186537451; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 6); | |
| iVar0 = 1; | |
| break; | |
| case 10: | |
| *uParam0 = {-1518.95f, -1387.87f, -0.51f}; | |
| uParam0->f_3 = 98.39f; | |
| uParam0->f_4 = -1030275036; | |
| iVar0 = 1; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 6); | |
| break; | |
| case 11: | |
| *uParam0 = {353.09f, 3577.59f, 32.35f}; | |
| uParam0->f_3 = 16.62f; | |
| uParam0->f_4 = 970356638; | |
| iVar0 = 1; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 6); | |
| break; | |
| case 12: | |
| uParam0->f_E = 0; | |
| *uParam0 = {-1652.00f, -3142.35f, 12.99f}; | |
| uParam0->f_3 = 329.11f; | |
| uParam0->f_C = 0; | |
| uParam0->f_D = 359; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 0); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 21); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 14); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 7); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 10); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 12); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 28); | |
| iVar0 = 1; | |
| break; | |
| case 13: | |
| uParam0->f_E = 1; | |
| *uParam0 = {-1271.65f, -3380.69f, 12.95f}; | |
| uParam0->f_3 = 329.51f; | |
| uParam0->f_C = 1; | |
| uParam0->f_D = 359; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 0); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 21); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 14); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 7); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 10); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 12); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 28); | |
| iVar0 = 1; | |
| break; | |
| case 14: | |
| uParam0->f_E = 2; | |
| *uParam0 = {1735.59f, 3294.53f, 40.17f}; | |
| uParam0->f_3 = 194.95f; | |
| uParam0->f_C = 2; | |
| uParam0->f_D = 359; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 0); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 21); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 14); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 7); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 10); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 12); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 28); | |
| iVar0 = 1; | |
| break; | |
| case 15: | |
| uParam0->f_E = 3; | |
| *uParam0 = {-846.27f, -1363.19f, 0.22f}; | |
| uParam0->f_3 = 108.78f; | |
| uParam0->f_C = 0; | |
| uParam0->f_D = 356; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 0); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 21); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 14); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 7); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 10); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 12); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 22); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 28); | |
| iVar0 = 1; | |
| break; | |
| case 16: | |
| uParam0->f_E = 4; | |
| *uParam0 = {-849.47f, -1354.99f, 0.24f}; | |
| uParam0->f_3 = 109.84f; | |
| uParam0->f_C = 1; | |
| uParam0->f_D = 356; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 0); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 21); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 14); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 7); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 10); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 12); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 22); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 28); | |
| iVar0 = 1; | |
| break; | |
| case 17: | |
| uParam0->f_E = 5; | |
| *uParam0 = {-852.47f, -1346.20f, 0.21f}; | |
| uParam0->f_3 = 108.76f; | |
| uParam0->f_C = 2; | |
| uParam0->f_D = 356; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 0); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 21); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 14); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 7); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 10); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 12); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 22); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 28); | |
| iVar0 = 1; | |
| break; | |
| case 18: | |
| uParam0->f_E = 6; | |
| *uParam0 = {-745.86f, -1433.90f, 4.00f}; | |
| uParam0->f_C = 0; | |
| uParam0->f_D = 360; | |
| uParam0->f_F = {-756.30f, -1441.61f, 2.92f}; | |
| uParam0->f_12 = {-738.06f, -1423.07f, 8.28f}; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 0); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 21); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 14); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 7); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 10); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 12); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 28); | |
| iVar0 = 1; | |
| break; | |
| case 19: | |
| uParam0->f_E = 7; | |
| *uParam0 = {-761.85f, -1453.83f, 4.00f}; | |
| uParam0->f_C = 1; | |
| uParam0->f_D = 360; | |
| uParam0->f_F = {-772.82f, -1459.96f, 3.29f}; | |
| uParam0->f_12 = {-754.34f, -1440.84f, 8.33f}; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 0); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 21); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 14); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 7); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 10); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 12); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 28); | |
| iVar0 = 1; | |
| break; | |
| case 20: | |
| uParam0->f_E = 8; | |
| *uParam0 = {1769.30f, 3244.00f, 41.10f}; | |
| uParam0->f_C = 2; | |
| uParam0->f_D = 360; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 0); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 21); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 14); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 7); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 10); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 12); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 23); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 28); | |
| iVar0 = 1; | |
| break; | |
| case 21: | |
| uParam0->f_E = 9; | |
| *uParam0 = {192.79f, -1020.54f, -99.98f}; | |
| uParam0->f_3 = 180.00f; | |
| uParam0->f_4 = 0; | |
| uParam0->f_C = 0; | |
| uParam0->f_D = 357; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 0); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 21); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 14); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 7); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 10); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 12); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 24); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 28); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 29); | |
| iVar0 = 1; | |
| break; | |
| case 22: | |
| uParam0->f_E = 10; | |
| *uParam0 = {192.79f, -1020.54f, -99.98f}; | |
| uParam0->f_3 = 180.00f; | |
| uParam0->f_4 = 0; | |
| uParam0->f_C = 1; | |
| uParam0->f_D = 357; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 0); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 21); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 14); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 7); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 10); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 12); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 24); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 28); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 29); | |
| iVar0 = 1; | |
| break; | |
| case 23: | |
| uParam0->f_E = 11; | |
| *uParam0 = {192.79f, -1020.54f, -99.98f}; | |
| uParam0->f_3 = 180.00f; | |
| uParam0->f_4 = 0; | |
| uParam0->f_C = 2; | |
| uParam0->f_D = 357; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 0); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 21); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 14); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 7); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 10); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 12); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 24); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 28); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 29); | |
| iVar0 = 1; | |
| break; | |
| case 26: | |
| case 27: | |
| case 28: | |
| iVar1 = (iParam1 - 26); | |
| uParam0->f_E = (12 + iVar1); | |
| *uParam0 = {196.28f, -1020.48f, -99.98f}; | |
| uParam0->f_3 = 180.00f; | |
| uParam0->f_4 = 0; | |
| uParam0->f_C = (0 + iVar1); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 10); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 12); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 7); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 27); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 24); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 29); | |
| iVar0 = 1; | |
| break; | |
| case 29: | |
| case 30: | |
| case 31: | |
| iVar1 = (iParam1 - 29); | |
| uParam0->f_E = (15 + iVar1); | |
| *uParam0 = {199.89f, -1020.05f, -99.98f}; | |
| uParam0->f_3 = 180.00f; | |
| uParam0->f_4 = 0; | |
| uParam0->f_C = (0 + iVar1); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 10); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 12); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 7); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 27); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 24); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 29); | |
| iVar0 = 1; | |
| break; | |
| case 32: | |
| case 33: | |
| case 34: | |
| iVar1 = (iParam1 - 32); | |
| uParam0->f_E = (18 + iVar1); | |
| *uParam0 = {203.60f, -1019.78f, -99.98f}; | |
| uParam0->f_3 = 180.00f; | |
| uParam0->f_4 = 0; | |
| uParam0->f_C = (0 + iVar1); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 10); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 12); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 7); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 27); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 24); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 29); | |
| iVar0 = 1; | |
| break; | |
| case 24: | |
| uParam0->f_E = 21; | |
| *uParam0 = {0.00f, 0.00f, 0.00f}; | |
| uParam0->f_3 = 0.00f; | |
| uParam0->f_4 = 0; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 10); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 11); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 13); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 12); | |
| iVar0 = 1; | |
| break; | |
| case 25: | |
| uParam0->f_E = 22; | |
| *uParam0 = {723.25f, -632.05f, 27.15f}; | |
| uParam0->f_3 = 12.93f; | |
| uParam0->f_4 = -1008861746; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 10); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 11); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 13); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 12); | |
| iVar0 = 1; | |
| break; | |
| case 35: | |
| *uParam0 = {-51.23f, 3111.90f, 24.95f}; | |
| uParam0->f_3 = 46.78f; | |
| uParam0->f_4 = 356391690; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 8); | |
| iVar0 = 1; | |
| break; | |
| case 36: | |
| *uParam0 = {-55.80f, -1096.59f, 25.42f}; | |
| uParam0->f_3 = 308.06f; | |
| uParam0->f_4 = 850565707; | |
| uParam0->f_A = 126; | |
| uParam0->f_B = 126; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 9); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 13); | |
| iVar0 = 1; | |
| break; | |
| case 37: | |
| *uParam0 = {-2892.93f, 3192.37f, 11.66f}; | |
| uParam0->f_3 = -132.35f; | |
| uParam0->f_4 = -1673356438; | |
| uParam0->f_A = 157; | |
| uParam0->f_B = 157; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 9); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 23); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 13); | |
| iVar0 = 1; | |
| break; | |
| case 38: | |
| *uParam0 = {1744.31f, 3270.67f, 40.21f}; | |
| uParam0->f_3 = 125.00f; | |
| uParam0->f_4 = 1394036463; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 23); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 8); | |
| iVar0 = 1; | |
| break; | |
| case 39: | |
| *uParam0 = {1751.44f, 3322.64f, 42.19f}; | |
| uParam0->f_3 = 268.13f; | |
| uParam0->f_4 = 771711535; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 23); | |
| iVar0 = 1; | |
| break; | |
| case 41: | |
| *uParam0 = {1377.10f, -2076.20f, 52.00f}; | |
| uParam0->f_3 = 37.50f; | |
| uParam0->f_4 = -1323100960; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 8); | |
| iVar0 = 1; | |
| break; | |
| case 40: | |
| *uParam0 = {1380.42f, -2072.77f, 51.76f}; | |
| uParam0->f_3 = 37.50f; | |
| uParam0->f_4 = 1917016601; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 8); | |
| iVar0 = 1; | |
| break; | |
| case 42: | |
| *uParam0 = {1359.39f, 3618.44f, 33.89f}; | |
| uParam0->f_3 = 108.23f; | |
| uParam0->f_4 = -823509173; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 8); | |
| iVar0 = 1; | |
| break; | |
| case 43: | |
| *uParam0 = {693.12f, -1018.16f, 21.64f}; | |
| uParam0->f_3 = 177.65f; | |
| uParam0->f_4 = 1938952078; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 23); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 8); | |
| iVar0 = 1; | |
| break; | |
| case 44: | |
| *uParam0 = {-73.70f, 495.12f, 143.52f}; | |
| uParam0->f_3 = 155.60f; | |
| uParam0->f_4 = 338562499; | |
| iVar0 = 1; | |
| break; | |
| case 45: | |
| *uParam0 = {-67.63f, 891.83f, 234.53f}; | |
| uParam0->f_3 = 294.99f; | |
| uParam0->f_4 = 384071873; | |
| iVar0 = 1; | |
| break; | |
| case 46: | |
| *uParam0 = {533.90f, -169.25f, 53.70f}; | |
| uParam0->f_3 = 1.30f; | |
| uParam0->f_4 = 1531094468; | |
| iVar0 = 1; | |
| break; | |
| case 47: | |
| *uParam0 = {-726.89f, -408.70f, 34.04f}; | |
| uParam0->f_3 = 267.74f; | |
| uParam0->f_4 = 1123216662; | |
| iVar0 = 1; | |
| break; | |
| case 48: | |
| *uParam0 = {-1321.52f, 261.40f, 61.57f}; | |
| uParam0->f_3 = 350.77f; | |
| uParam0->f_4 = -1670998136; | |
| iVar0 = 1; | |
| break; | |
| case 49: | |
| *uParam0 = {-1268.00f, 451.65f, 93.71f}; | |
| uParam0->f_3 = 48.93f; | |
| uParam0->f_4 = -1670998136; | |
| iVar0 = 1; | |
| break; | |
| case 50: | |
| *uParam0 = {-1062.08f, -226.76f, 37.16f}; | |
| uParam0->f_3 = 234.28f; | |
| uParam0->f_4 = -1670998136; | |
| iVar0 = 1; | |
| break; | |
| case 51: | |
| *uParam0 = {68.17f, -1558.96f, 29.47f}; | |
| uParam0->f_3 = 49.91f; | |
| uParam0->f_4 = -1776615689; | |
| uParam0->f_C = 2; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 26); | |
| iVar0 = 1; | |
| break; | |
| case 52: | |
| *uParam0 = {589.44f, 2736.71f, 42.03f}; | |
| uParam0->f_3 = -175.71f; | |
| uParam0->f_4 = -1776615689; | |
| uParam0->f_C = 2; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 26); | |
| iVar0 = 1; | |
| break; | |
| case 53: | |
| *uParam0 = {-488.77f, -344.57f, 34.36f}; | |
| uParam0->f_3 = 82.40f; | |
| uParam0->f_4 = -1776615689; | |
| uParam0->f_C = 2; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 26); | |
| iVar0 = 1; | |
| break; | |
| case 54: | |
| *uParam0 = {288.88f, -585.47f, 43.15f}; | |
| uParam0->f_3 = -20.81f; | |
| uParam0->f_4 = -1776615689; | |
| uParam0->f_C = 2; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 26); | |
| iVar0 = 1; | |
| break; | |
| case 55: | |
| *uParam0 = {304.83f, -1383.67f, 31.68f}; | |
| uParam0->f_3 = -41.12f; | |
| uParam0->f_4 = -1776615689; | |
| uParam0->f_C = 2; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 26); | |
| iVar0 = 1; | |
| break; | |
| case 56: | |
| *uParam0 = {1126.19f, -1481.49f, 34.70f}; | |
| uParam0->f_3 = -91.43f; | |
| uParam0->f_4 = -1776615689; | |
| uParam0->f_C = 2; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 26); | |
| iVar0 = 1; | |
| break; | |
| case 57: | |
| *uParam0 = {-1598.36f, 5252.84f, 0.00f}; | |
| uParam0->f_3 = 28.14f; | |
| uParam0->f_4 = 771711535; | |
| uParam0->f_D = 308; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 2); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 30); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 6); | |
| iVar0 = 1; | |
| break; | |
| case 58: | |
| *uParam0 = {-1602.62f, 5260.37f, 0.86f}; | |
| uParam0->f_3 = 25.32f; | |
| uParam0->f_4 = 1033245328; | |
| uParam0->f_D = 404; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 2); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 22); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 6); | |
| iVar0 = 1; | |
| break; | |
| case 59: | |
| *uParam0 = {2116.57f, 4763.28f, 40.16f}; | |
| uParam0->f_3 = 198.72f; | |
| uParam0->f_4 = 1126868326; | |
| iVar0 = 1; | |
| break; | |
| case 60: | |
| *uParam0 = {1133.21f, 120.20f, 80.90f}; | |
| uParam0->f_3 = 134.40f; | |
| if (func_224()) | |
| { | |
| uParam0->f_4 = -613725916; | |
| } | |
| else | |
| { | |
| uParam0->f_4 = -150975354; | |
| } | |
| uParam0->f_D = 401; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 13); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 2); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 1); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 23); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 21); | |
| iVar0 = 1; | |
| break; | |
| case 61: | |
| *uParam0 = {-806.31f, -2679.65f, 13.90f}; | |
| uParam0->f_3 = 150.54f; | |
| if (func_224()) | |
| { | |
| uParam0->f_4 = -613725916; | |
| } | |
| else | |
| { | |
| uParam0->f_4 = -150975354; | |
| } | |
| uParam0->f_D = 401; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 13); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 2); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 1); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 23); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 21); | |
| iVar0 = 1; | |
| break; | |
| case 62: | |
| *uParam0 = {1985.85f, 3828.96f, 31.98f}; | |
| uParam0->f_3 = -16.58f; | |
| uParam0->f_4 = -1269889662; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 6); | |
| iVar0 = 1; | |
| break; | |
| case 63: | |
| *uParam0 = {3870.75f, 4464.67f, 0.00f}; | |
| uParam0->f_3 = 0.00f; | |
| uParam0->f_4 = -1066334226; | |
| uParam0->f_D = 308; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 0); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 21); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 23); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 6); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 30); | |
| iVar0 = 1; | |
| break; | |
| case 64: | |
| *uParam0 = {1257.73f, -2564.47f, 41.72f}; | |
| uParam0->f_3 = 284.56f; | |
| uParam0->f_4 = -326143852; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 6); | |
| iVar0 = 1; | |
| break; | |
| case 65: | |
| *uParam0 = {643.28f, 3014.15f, 42.27f}; | |
| uParam0->f_3 = 128.06f; | |
| uParam0->f_4 = -326143852; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 6); | |
| iVar0 = 1; | |
| break; | |
| case 66: | |
| *uParam0 = {38.94f, 850.87f, 196.30f}; | |
| uParam0->f_3 = 311.68f; | |
| uParam0->f_4 = -901163259; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 30); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 23); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 6); | |
| iVar0 = 1; | |
| break; | |
| case 67: | |
| *uParam0 = {1333.88f, 4262.23f, 30.78f}; | |
| uParam0->f_3 = 262.53f; | |
| uParam0->f_4 = -901163259; | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 30); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 23); | |
| GAMEPLAY::SET_BIT(&(uParam0->f_9), 6); | |
| iVar0 = 1; | |
| break; | |
| } | |
| if (GAMEPLAY::IS_BIT_SET(uParam0->f_9, 10)) | |
| { | |
| uParam0->f_4 = Global_1A045.f_7FE7.f_45[uParam0->f_E /*78*/].f_42; | |
| if (iParam1 == 14) | |
| { | |
| if (((((uParam0->f_4 == 165154707 || uParam0->f_4 == 1824333165) || uParam0->f_4 == 621481054) || uParam0->f_4 == -1214505995) || uParam0->f_4 == 1981688531) || uParam0->f_4 == -1214293858) | |
| { | |
| *uParam0 = {1678.80f, 3229.60f, 41.80f}; | |
| uParam0->f_3 = 106.09f; | |
| } | |
| } | |
| if (!func_214(Global_1A045.f_7FE7.f_748[uParam0->f_E /*3*/], 0.00f, 0.00f, 0.00f, 0)) | |
| { | |
| *uParam0 = {Global_1A045.f_7FE7.f_748[uParam0->f_E /*3*/]}; | |
| } | |
| if (Global_1A045.f_7FE7.f_78E[uParam0->f_E] != -1.00f) | |
| { | |
| uParam0->f_3 = Global_1A045.f_7FE7.f_78E[uParam0->f_E]; | |
| } | |
| } | |
| if (GAMEPLAY::IS_BIT_SET(uParam0->f_9, 19)) | |
| { | |
| if (!func_214(Global_1A045.f_935.f_21B.f_E04[1 /*10*/][uParam0->f_C /*3*/], 0.00f, 0.00f, 0.00f, 0)) | |
| { | |
| *uParam0 = {Global_1A045.f_935.f_21B.f_E04[1 /*10*/][uParam0->f_C /*3*/]}; | |
| uParam0->f_3 = Global_1A045.f_935.f_21B.f_E19[1 /*4*/][uParam0->f_C]; | |
| } | |
| } | |
| else if (GAMEPLAY::IS_BIT_SET(uParam0->f_9, 20)) | |
| { | |
| if (!func_214(Global_1A045.f_935.f_21B.f_E04[0 /*10*/][uParam0->f_C /*3*/], 0.00f, 0.00f, 0.00f, 0)) | |
| { | |
| *uParam0 = {Global_1A045.f_935.f_21B.f_E04[0 /*10*/][uParam0->f_C /*3*/]}; | |
| uParam0->f_3 = Global_1A045.f_935.f_21B.f_E19[0 /*4*/][uParam0->f_C]; | |
| } | |
| } | |
| return iVar0; | |
| } | |
| bool func_214(vector3 vParam0, vector3 vParam3, bool bParam6) | |
| { | |
| if (bParam6) | |
| { | |
| return (vParam0.x == vParam3.x && vParam0.y == vParam3.y); | |
| } | |
| return ((vParam0.x == vParam3.x && vParam0.y == vParam3.y) && vParam0.z == vParam3.z); | |
| } | |
| int func_215(int iParam0, int iParam1) | |
| { | |
| struct<82> Var0; | |
| if (is_valid_char_index(iParam0)) | |
| { | |
| Var0.f_B = 12; | |
| Var0.f_1F = 49; | |
| Var0.f_51 = 2; | |
| func_216(iParam0, &Var0, iParam1); | |
| return Var0; | |
| } | |
| else if (iParam0 != 145) | |
| { | |
| } | |
| return 0; | |
| } | |
| void func_216(int iParam0, var uParam1, int iParam2) | |
| { | |
| int iVar0; | |
| uParam1->f_58 = 1; | |
| uParam1->f_54 = 255; | |
| uParam1->f_55 = 255; | |
| uParam1->f_56 = 255; | |
| uParam1->f_61 = 1; | |
| uParam1->f_3 = 1000; | |
| uParam1->f_1 = 0; | |
| switch (iParam0) | |
| { | |
| case 0: | |
| iVar0 = -1008861746; | |
| if (Global_1A045.f_2377.f_63.f_3A[128] && !Global_1A045.f_2377.f_63.f_3A[131]) | |
| { | |
| iVar0 = -1883869285; | |
| } | |
| switch (iVar0) | |
| { | |
| case -1008861746: | |
| *uParam1 = iVar0; | |
| uParam1->f_2 = 3.00f; | |
| uParam1->f_4 = 0; | |
| uParam1->f_9 = 1; | |
| uParam1->f_B[0] = 1; | |
| StringCopy(&(uParam1->f_1B), "5MDS003", 16); | |
| break; | |
| case -1883869285: | |
| *uParam1 = iVar0; | |
| uParam1->f_2 = 14.90f; | |
| uParam1->f_5 = 43; | |
| uParam1->f_6 = 43; | |
| uParam1->f_7 = 0; | |
| uParam1->f_8 = 156; | |
| uParam1->f_9 = 0; | |
| StringCopy(&(uParam1->f_1B), "880HS955", 16); | |
| break; | |
| } | |
| break; | |
| case 2: | |
| iVar0 = -1435919434; | |
| switch (iVar0) | |
| { | |
| case -1435919434: | |
| *uParam1 = iVar0; | |
| uParam1->f_2 = 14.00f; | |
| uParam1->f_5 = 32; | |
| uParam1->f_6 = 0; | |
| uParam1->f_7 = 0; | |
| uParam1->f_8 = 156; | |
| StringCopy(&(uParam1->f_1B), "BETTY 32", 16); | |
| if (Global_1A045.f_2377.f_63.f_3A[119]) | |
| { | |
| uParam1->f_B[1] = 1; | |
| } | |
| break; | |
| } | |
| break; | |
| case 1: | |
| if (iParam2 == 1) | |
| { | |
| iVar0 = 736902334; | |
| } | |
| else if (iParam2 == 2) | |
| { | |
| iVar0 = -2140431165; | |
| } | |
| else if (Global_1A045.f_2377.f_63.f_3A[118]) | |
| { | |
| iVar0 = -2140431165; | |
| } | |
| else | |
| { | |
| iVar0 = 736902334; | |
| } | |
| switch (iVar0) | |
| { | |
| case -2140431165: | |
| *uParam1 = iVar0; | |
| uParam1->f_2 = 6.00f; | |
| uParam1->f_5 = 53; | |
| uParam1->f_6 = 0; | |
| uParam1->f_7 = 59; | |
| uParam1->f_8 = 156; | |
| StringCopy(&(uParam1->f_1B), "FC88", 16); | |
| break; | |
| case 736902334: | |
| *uParam1 = iVar0; | |
| uParam1->f_2 = 0.00f; | |
| uParam1->f_5 = 111; | |
| uParam1->f_6 = 111; | |
| uParam1->f_7 = 0; | |
| uParam1->f_8 = 156; | |
| uParam1->f_A = 1; | |
| StringCopy(&(uParam1->f_1B), "FC1988", 16); | |
| uParam1->f_B[0] = 1; | |
| uParam1->f_B[1] = 1; | |
| uParam1->f_B[2] = 1; | |
| uParam1->f_B[3] = 1; | |
| uParam1->f_B[4] = 1; | |
| uParam1->f_B[5] = 1; | |
| uParam1->f_B[6] = 1; | |
| uParam1->f_B[7] = 1; | |
| uParam1->f_B[8] = 1; | |
| break; | |
| } | |
| break; | |
| default: | |
| break; | |
| } | |
| } | |
| bool func_217(int iParam0, var uParam1, int iParam2, char *sParam3, char *sParam4, char *sParam5, int iParam6, int iParam7, int iParam8, int iParam9, bool bParam10) | |
| { | |
| func_160(uParam1, iParam2, sParam3, iParam8, iParam9, 0); | |
| func_220(); | |
| if (iParam7 == 1) | |
| { | |
| Global_3E06 = 1; | |
| } | |
| else | |
| { | |
| Global_3E06 = 0; | |
| } | |
| func_219(iParam0); | |
| return func_218(sParam4, sParam5, iParam6, bParam10); | |
| } | |
| int func_218(var uParam0, var uParam1, int iParam2, bool bParam3) | |
| { | |
| int iVar0; | |
| Global_3DFB = 0; | |
| if (Global_3DFA == 0 || Global_3DFC == 2) | |
| { | |
| if (Global_3DFA != 0) | |
| { | |
| if (iParam2 > Global_3DFC) | |
| { | |
| if (bParam3 == 0) | |
| { | |
| AUDIO::STOP_SCRIPTED_CONVERSATION(false); | |
| Global_38D9.f_1 = 3; | |
| Global_3DFA = 0; | |
| Global_3DFB = 1; | |
| Global_3E2F = 0; | |
| Global_3DF6 = 0; | |
| Global_3DF7 = 0; | |
| } | |
| else | |
| { | |
| restart_scripted_conversation_helper(); | |
| return 0; | |
| } | |
| } | |
| else | |
| { | |
| return 0; | |
| } | |
| } | |
| if (AUDIO::IS_SCRIPTED_CONVERSATION_ONGOING()) | |
| { | |
| return 0; | |
| } | |
| if (func_158(8, -1)) | |
| { | |
| return 0; | |
| } | |
| Global_3E46 = {Global_3E40}; | |
| func_157(); | |
| Global_3B33 = {Global_3BD8}; | |
| Global_3E00 = Global_3E01; | |
| Global_3E07 = Global_3E08; | |
| Global_280002 = Global_280001; | |
| Global_3E09 = {Global_3E19}; | |
| Global_3E02 = Global_3E03; | |
| Global_41D8 = Global_41D9; | |
| Global_41E0 = {Global_41E6}; | |
| Global_41DE = Global_41DF; | |
| Global_41DA = Global_41DB; | |
| Global_41DC = Global_41DD; | |
| Global_3C7D.f_170 = Global_41D5; | |
| Global_3C7D.f_171 = Global_41D6; | |
| Global_3C7D.f_172 = Global_41D7; | |
| Global_3DF6 = Global_3DF7; | |
| Global_3DF8 = Global_3DF9; | |
| if (Global_3EFC == 0) | |
| { | |
| Global_3E94[0 /*6*/] = {Global_3EAE[0 /*6*/]}; | |
| Global_3E94[1 /*6*/] = {Global_3EAE[1 /*6*/]}; | |
| Global_3EC8[0 /*6*/] = {Global_3EE2[0 /*6*/]}; | |
| Global_3EC8[1 /*6*/] = {Global_3EE2[1 /*6*/]}; | |
| Global_3EA1[0 /*6*/] = {Global_3EBB[0 /*6*/]}; | |
| Global_3EA1[1 /*6*/] = {Global_3EBB[1 /*6*/]}; | |
| Global_3ED5[0 /*6*/] = {Global_3EEF[0 /*6*/]}; | |
| Global_3ED5[1 /*6*/] = {Global_3EEF[1 /*6*/]}; | |
| } | |
| if (Global_3E00) | |
| { | |
| GAMEPLAY::CLEAR_BIT(&Global_977, 20); | |
| GAMEPLAY::CLEAR_BIT(&Global_978, 17); | |
| GAMEPLAY::CLEAR_BIT(&Global_979, 0); | |
| if (bParam3) | |
| { | |
| func_57(); | |
| if (Global_C9C[Global_38D9 /*2811*/][0 /*281*/].f_103 == 2) | |
| { | |
| if (iParam2 == 13) | |
| { | |
| } | |
| else | |
| { | |
| return 0; | |
| } | |
| } | |
| if (Global_38D9.f_1 > 3) | |
| { | |
| return 0; | |
| } | |
| } | |
| if (Global_38B7 == 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_156()) | |
| { | |
| 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(), -72657034)) | |
| { | |
| return 0; | |
| } | |
| if (!Global_117A6) | |
| { | |
| if (Global_3EFC == 0) | |
| { | |
| 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())) | |
| { | |
| return 0; | |
| } | |
| } | |
| } | |
| } | |
| if (func_124()) | |
| { | |
| return 0; | |
| } | |
| else | |
| { | |
| switch (Global_38D9.f_1) | |
| { | |
| case 7: | |
| return 0; | |
| break; | |
| case 8: | |
| return 0; | |
| break; | |
| case 9: | |
| break; | |
| case 10: | |
| break; | |
| default: | |
| break; | |
| } | |
| } | |
| func_155(); | |
| Global_3E04 = bParam3; | |
| } | |
| Global_3DFC = iParam2; | |
| if (Global_3DF6 > 0) | |
| { | |
| iVar0 = 0; | |
| while (iVar0 < Global_3DF6) | |
| { | |
| StringCopy(&(Global_3C7D.f_6[iVar0 /*6*/]), (*uParam0)[iVar0], 24); | |
| StringCopy(&(Global_3C7D.f_BB[iVar0 /*6*/]), (*uParam1)[iVar0], 24); | |
| iVar0++; | |
| } | |
| } | |
| Global_398C = 0; | |
| func_154(); | |
| return 1; | |
| } | |
| if (Global_3DFA == 5) | |
| { | |
| return 0; | |
| } | |
| if (iParam2 < Global_3DFC || iParam2 == Global_3DFC) | |
| { | |
| return 0; | |
| } | |
| if (iParam2 == 2) | |
| { | |
| } | |
| else | |
| { | |
| restart_scripted_conversation_helper(); | |
| } | |
| return 0; | |
| } | |
| void func_219(var uParam0) | |
| { | |
| Global_3DF7 = uParam0; | |
| Global_3E01 = 1; | |
| Global_3E08 = 0; | |
| Global_3E03 = 0; | |
| Global_41D9 = 0; | |
| Global_41DF = 0; | |
| Global_280001 = 0; | |
| } | |
| void func_220() | |
| { | |
| Global_3E2A = 0; | |
| Global_3E01 = 1; | |
| Global_3E08 = 0; | |
| Global_3E03 = 0; | |
| Global_41D9 = 0; | |
| Global_41DB = 0; | |
| Global_3E08 = 0; | |
| Global_41DF = 0; | |
| Global_3DFF = 0; | |
| Global_3E2E = 0; | |
| Global_3E30 = 0; | |
| Global_280001 = 0; | |
| } | |
| int func_221() | |
| { | |
| var uVar0[15]; | |
| int iVar16; | |
| int iVar17; | |
| iVar16 = PED::GET_PED_NEARBY_VEHICLES(PLAYER::PLAYER_PED_ID(), &uVar0); | |
| iVar17 = 0; | |
| while (iVar17 <= (iVar16 - 1)) | |
| { | |
| if (ENTITY::GET_ENTITY_MODEL(uVar0[iVar17]) == -150975354) | |
| { | |
| if (!ENTITY::IS_ENTITY_DEAD(uVar0[iVar17], 0) && VEHICLE::IS_VEHICLE_DRIVEABLE(uVar0[iVar17], 0)) | |
| { | |
| return 1; | |
| } | |
| } | |
| iVar17++; | |
| } | |
| return 0; | |
| } | |
| int func_222() | |
| { | |
| if (PED::IS_PED_IN_ANY_VEHICLE(PLAYER::PLAYER_PED_ID(), 1)) | |
| { | |
| if (ENTITY::GET_ENTITY_MODEL(PED::GET_VEHICLE_PED_IS_IN(PLAYER::PLAYER_PED_ID(), 1)) == -150975354) | |
| { | |
| return 1; | |
| } | |
| } | |
| return 0; | |
| } | |
| int func_223(int iParam0) | |
| { | |
| if (iParam0 == -1) | |
| { | |
| return 0; | |
| } | |
| return Global_11309.f_8B[iParam0]; | |
| } | |
| int func_224() | |
| { | |
| int iVar0; | |
| if (NETWORK::NETWORK_IS_SIGNED_IN()) | |
| { | |
| if (NETWORK::_NETWORK_ARE_ROS_AVAILABLE()) | |
| { | |
| if (NETWORK::_0x593570C289A77688()) | |
| { | |
| STATS::STAT_GET_INT(1571103992, &iVar0, -1); | |
| GAMEPLAY::SET_BIT(&iVar0, 2); | |
| GAMEPLAY::SET_BIT(&iVar0, 4); | |
| GAMEPLAY::SET_BIT(&iVar0, 6); | |
| GAMEPLAY::SET_BIT(&Global_19, 2); | |
| GAMEPLAY::SET_BIT(&Global_19, 4); | |
| GAMEPLAY::SET_BIT(&Global_19, 6); | |
| STATS::STAT_SET_INT(1571103992, iVar0, 1); | |
| if (GAMEPLAY::_0x5AA3BEFA29F03AD4()) | |
| { | |
| iVar0 = GAMEPLAY::GET_PROFILE_SETTING(866); | |
| GAMEPLAY::SET_BIT(&iVar0, 0); | |
| STATS::_0xDAC073C7901F9E15(iVar0); | |
| } | |
| return 1; | |
| } | |
| } | |
| } | |
| if (Global_237F6 == 2) | |
| { | |
| return 1; | |
| } | |
| else if (Global_237F6 == 3) | |
| { | |
| return 0; | |
| } | |
| if (GAMEPLAY::_0x5AA3BEFA29F03AD4()) | |
| { | |
| if (GAMEPLAY::IS_BIT_SET(GAMEPLAY::GET_PROFILE_SETTING(866), 0)) | |
| { | |
| return 1; | |
| } | |
| } | |
| return 0; | |
| } | |
| int func_225() | |
| { | |
| return 0; | |
| } | |
| int func_226() | |
| { | |
| return 1; | |
| } | |
| int func_227() | |
| { | |
| return 1; | |
| } | |
| int func_228() | |
| { | |
| if (DLC2::IS_DLC_PRESENT(-1226939934)) | |
| { | |
| return 1; | |
| } | |
| return 0; | |
| } | |
| int func_229(int iParam0) | |
| { | |
| if ((Global_4254 || Global_4253) || Global_4255) | |
| { | |
| if (iParam0 == 130) | |
| { | |
| } | |
| else | |
| { | |
| return 0; | |
| } | |
| } | |
| if (Global_75[iParam0 /*10*/].f_8 != 147) | |
| { | |
| if (Global_38D9.f_1 == 10) | |
| { | |
| if (Global_6CA == iParam0) | |
| { | |
| return 1; | |
| } | |
| else | |
| { | |
| return 0; | |
| } | |
| } | |
| else | |
| { | |
| return 0; | |
| } | |
| } | |
| return 0; | |
| } | |
| void func_230(var curTime) | |
| { | |
| int iVar0; | |
| int iVar1; | |
| bool bVar2; | |
| int iVar3; | |
| int iVar4; | |
| iVar0 = 0; | |
| while (iVar0 < Global_1A045.f_1E02.f_28A) | |
| { | |
| iVar1 = get_active_char_index(); | |
| if (is_valid_char_index(iVar1)) | |
| { | |
| if (GAMEPLAY::IS_BIT_SET(Global_1A045.f_1E02.f_C7[iVar0 /*15*/].f_2, iVar1)) | |
| { | |
| if (func_229(Global_1A045.f_1E02.f_C7[iVar0 /*15*/].f_6)) | |
| { | |
| if (*curTime >= Global_9071[Global_1A045.f_1E02.f_C7[iVar0 /*15*/].f_6]) | |
| { | |
| bVar2 = false; | |
| iVar3 = 0; | |
| while (iVar3 < Global_1A045.f_1E02.f_88 && !bVar2) | |
| { | |
| if (Global_1A045.f_1E02[iVar3 /*15*/] == Global_1A045.f_1E02.f_C7[iVar0 /*15*/]) | |
| { | |
| bVar2 = true; | |
| } | |
| iVar3++; | |
| } | |
| if (!bVar2) | |
| { | |
| iVar3 = Global_1A045.f_1E02.f_88; | |
| if (iVar3 < 9) | |
| { | |
| Global_1A045.f_1E02[iVar3 /*15*/] = {Global_1A045.f_1E02.f_C7[iVar0 /*15*/]}; | |
| Global_1A045.f_1E02.f_88++; | |
| iVar4 = 0; | |
| while (iVar4 < 3) | |
| { | |
| if (GAMEPLAY::IS_BIT_SET(Global_1A045.f_1E02[iVar3 /*15*/].f_2, iVar4)) | |
| { | |
| func_8(iVar4); | |
| } | |
| iVar4++; | |
| } | |
| } | |
| else | |
| { | |
| return; | |
| } | |
| } | |
| if (func_231(&(Global_1A045.f_1E02[iVar3 /*15*/]))) | |
| { | |
| Global_906C_lastHandledIndex = iVar3; | |
| iLocal_82_localNextTime = -1; | |
| iLocal_90_notificationState = 1; | |
| Global_1A045.f_1E02.f_391 = 0; | |
| iLocal_78_hasHandledNotification = 1; | |
| if (func_138()) | |
| { | |
| iLocal_81 = 1; | |
| } | |
| } | |
| else | |
| { | |
| func_14(iVar3); | |
| } | |
| } | |
| } | |
| } | |
| } | |
| iVar0++; | |
| } | |
| } | |
| int func_231(var uParam0) | |
| { | |
| struct<5> Var0; | |
| if (!can_send_notification(uParam0->f_2, uParam0->f_6, uParam0->f_3, uParam0->f_7, uParam0->f_1)) | |
| { | |
| return 0; | |
| } | |
| if ((uParam0->f_6 != 1 && uParam0->f_6 != 2) && uParam0->f_6 != 0) | |
| { | |
| if (func_235(uParam0->f_6)) | |
| { | |
| return 0; | |
| } | |
| } | |
| if (uParam0->f_9 != -1) | |
| { | |
| if (!execute_func_for_index(uParam0->f_9)) | |
| { | |
| return 0; | |
| } | |
| } | |
| func_233(uParam0); | |
| get_phone_call_data(*uParam0, &Var0); | |
| if (func_232(&Global_8FC7, uParam0->f_6, &Var0, &(Var0.f_4), 12, 1, 0, 0, 0)) | |
| { | |
| return 1; | |
| } | |
| func_119(); | |
| return 0; | |
| } | |
| bool func_232(var uParam0, var uParam1, char *sParam2, char *sParam3, int iParam4, int iParam5, int iParam6, int iParam7, bool bParam8) | |
| { | |
| func_160(uParam0, uParam1, sParam2, iParam6, iParam7, 0); | |
| Global_3E2A = 0; | |
| Global_3E01 = 1; | |
| Global_3E08 = 0; | |
| Global_3E03 = 0; | |
| Global_41D9 = 0; | |
| Global_41DB = 0; | |
| Global_41DF = 0; | |
| Global_3DFF = 0; | |
| Global_3E2E = 0; | |
| Global_3E30 = 0; | |
| if (iParam5 == 1) | |
| { | |
| Global_3E06 = 1; | |
| } | |
| else | |
| { | |
| Global_3E06 = 0; | |
| } | |
| Global_280001 = 0; | |
| return func_153(sParam3, iParam4, bParam8); | |
| } | |
| void func_233(var uParam0) | |
| { | |
| if (GAMEPLAY::IS_BIT_SET(uParam0->f_2, get_active_char_index_from_global())) | |
| { | |
| switch (get_active_char_index()) | |
| { | |
| case 0: | |
| func_161(&Global_8FC7, 0, PLAYER::PLAYER_PED_ID(), "MICHAEL", 0, 1); | |
| break; | |
| case 1: | |
| func_161(&Global_8FC7, 1, PLAYER::PLAYER_PED_ID(), "FRANKLIN", 0, 1); | |
| break; | |
| case 2: | |
| func_161(&Global_8FC7, 2, PLAYER::PLAYER_PED_ID(), "TREVOR", 0, 1); | |
| break; | |
| } | |
| } | |
| switch (uParam0->f_6) | |
| { | |
| case 0: | |
| func_161(&Global_8FC7, 0, 0, "MICHAEL", 0, 1); | |
| break; | |
| case 1: | |
| func_161(&Global_8FC7, 1, 0, "FRANKLIN", 0, 1); | |
| break; | |
| case 2: | |
| func_161(&Global_8FC7, 2, 0, "TREVOR", 0, 1); | |
| break; | |
| case 4: | |
| switch (get_active_char_index()) | |
| { | |
| case 0: | |
| func_161(&Global_8FC7, 1, 0, "FRANKLIN", 0, 1); | |
| func_161(&Global_8FC7, 2, 0, "TREVOR", 0, 1); | |
| break; | |
| case 1: | |
| func_161(&Global_8FC7, 0, 0, "MICHAEL", 0, 1); | |
| func_161(&Global_8FC7, 2, 0, "TREVOR", 0, 1); | |
| break; | |
| case 2: | |
| func_161(&Global_8FC7, 0, 0, "MICHAEL", 0, 1); | |
| func_161(&Global_8FC7, 1, 0, "FRANKLIN", 0, 1); | |
| break; | |
| } | |
| break; | |
| case 5: | |
| func_161(&Global_8FC7, 1, 0, "FRANKLIN", 0, 1); | |
| func_161(&Global_8FC7, 2, 0, "TREVOR", 0, 1); | |
| break; | |
| case 8: | |
| func_161(&Global_8FC7, 0, 0, "MICHAEL", 0, 1); | |
| func_161(&Global_8FC7, 1, 0, "FRANKLIN", 0, 1); | |
| break; | |
| case 9: | |
| func_161(&Global_8FC7, 0, 0, "MICHAEL", 0, 1); | |
| func_161(&Global_8FC7, 2, 0, "TREVOR", 0, 1); | |
| break; | |
| case 10: | |
| func_161(&Global_8FC7, 0, 0, "MICHAEL", 0, 1); | |
| func_161(&Global_8FC7, 3, 0, "STEVE", 0, 1); | |
| break; | |
| case 11: | |
| func_161(&Global_8FC7, 2, 0, "TREVOR", 0, 1); | |
| func_161(&Global_8FC7, 3, 0, "STEVE", 0, 1); | |
| break; | |
| default: | |
| func_161(&Global_8FC7, uParam0->f_E, 0, func_234(uParam0->f_6), 0, 1); | |
| break; | |
| } | |
| } | |
| char *func_234(int iParam0) | |
| { | |
| switch (iParam0) | |
| { | |
| case 16: | |
| return "ABIGAIL"; | |
| break; | |
| case 95: | |
| return "KIDNAPPEDFEMALE"; | |
| break; | |
| case 17: | |
| return "AMANDA"; | |
| break; | |
| case 21: | |
| return "CHENG"; | |
| break; | |
| case 35: | |
| return "CHENGSR"; | |
| break; | |
| case 30: | |
| return "DAVE"; | |
| break; | |
| case 29: | |
| return "DEVIN"; | |
| break; | |
| case 36: | |
| return "FRIEDLANDER"; | |
| break; | |
| case 28: | |
| return "ESTATEAGENT"; | |
| break; | |
| case 53: | |
| return "HAO"; | |
| break; | |
| case 54: | |
| return "CLETUS"; | |
| break; | |
| case 14: | |
| return "JIMMY"; | |
| break; | |
| case 55: | |
| return "JIMMYBOSTON"; | |
| break; | |
| case 19: | |
| return "LAMAR"; | |
| break; | |
| case 12: | |
| return "LESTER"; | |
| break; | |
| case 31: | |
| return "MARTIN"; | |
| break; | |
| case 39: | |
| return "ONEIL"; | |
| break; | |
| case 34: | |
| return "OSCAR"; | |
| break; | |
| case 40: | |
| return "PATRICIA"; | |
| break; | |
| case 20: | |
| return "NERVOUSRON"; | |
| break; | |
| case 18: | |
| return "SIMEON"; | |
| break; | |
| case 26: | |
| return "SOLOMON"; | |
| break; | |
| case 23: | |
| return "STEVE"; | |
| break; | |
| case 37: | |
| return "STRETCH"; | |
| break; | |
| case 43: | |
| return "TANISHA"; | |
| break; | |
| case 15: | |
| return "TRACEY"; | |
| break; | |
| case 24: | |
| return "WADE"; | |
| break; | |
| case 104: | |
| return "JULIET"; | |
| break; | |
| case 105: | |
| return "NIKKI"; | |
| break; | |
| case 106: | |
| return "CHASTITY"; | |
| break; | |
| case 107: | |
| return "CHEETAH"; | |
| break; | |
| case 108: | |
| return "SAPPHIRE"; | |
| break; | |
| case 109: | |
| return "INFERNUS"; | |
| break; | |
| case 110: | |
| return "FUFU"; | |
| break; | |
| case 111: | |
| return "PEACH"; | |
| break; | |
| case 94: | |
| return "BDOWNHOTCHICK"; | |
| break; | |
| case 112: | |
| return "TaxiLiz"; | |
| break; | |
| case 93: | |
| return "REHH2Hiker"; | |
| break; | |
| case 46: | |
| return "LIEngineer"; | |
| break; | |
| case 50: | |
| return "BEVERLY"; | |
| break; | |
| case 51: | |
| return "CRIS"; | |
| break; | |
| case 58: | |
| return "JOSH"; | |
| break; | |
| case 62: | |
| return "MAUDE"; | |
| break; | |
| case 113: | |
| return "TaxiDispatch"; | |
| break; | |
| case 123: | |
| return "MANAGER"; | |
| break; | |
| case 116: | |
| return "MANAGER"; | |
| break; | |
| case 103: | |
| return "TONYA"; | |
| break; | |
| default: | |
| break; | |
| } | |
| return "ERROR"; | |
| } | |
| int func_235(int iParam0) | |
| { | |
| int iVar0; | |
| int iVar1; | |
| int iVar2; | |
| iVar0 = 0; | |
| while (iVar0 < 7) | |
| { | |
| iVar1 = Global_149F0[iVar0 /*5*/]; | |
| if (iVar1 != -1) | |
| { | |
| iVar2 = -1; | |
| iVar2 = Global_118B3.f_6D[Global_149F0[iVar0 /*5*/] /*4*/]; | |
| if (iVar2 != -1) | |
| { | |
| if (func_236(Global_14A14[iVar2 /*34*/].f_C, iParam0)) | |
| { | |
| return 1; | |
| } | |
| } | |
| } | |
| iVar0++; | |
| } | |
| return 0; | |
| } | |
| bool func_236(int iParam0, int iParam1) | |
| { | |
| switch (iParam1) | |
| { | |
| case 19: | |
| return func_238(iParam0, 8); | |
| break; | |
| case 14: | |
| return func_238(iParam0, 16); | |
| break; | |
| case 17: | |
| return func_238(iParam0, 32); | |
| break; | |
| } | |
| return func_237(iParam0, iParam1); | |
| } | |
| int func_237(int iParam0, int iParam1) | |
| { | |
| switch (iParam1) | |
| { | |
| case 0: | |
| case 1: | |
| case 2: | |
| return GAMEPLAY::IS_BIT_SET(iParam0, iParam1); | |
| default: | |
| } | |
| return 0; | |
| } | |
| bool func_238(var uParam0, int iParam1) | |
| { | |
| return (uParam0 && iParam1) != 0; | |
| } | |
| void func_239(var curTime) | |
| { | |
| int iVar0; | |
| int iVar1; | |
| int iVar2; | |
| iVar0 = 0; | |
| while (iVar0 < Global_1A045.f_1E02.f_C6) | |
| { | |
| if (func_229(Global_1A045.f_1E02.f_89[iVar0 /*15*/].f_6)) | |
| { | |
| if (*curTime >= Global_9071[Global_1A045.f_1E02.f_89[iVar0 /*15*/].f_6]) | |
| { | |
| iVar1 = func_244(Global_1A045.f_1E02.f_89[iVar0 /*15*/]); | |
| if (iVar1 == -1) | |
| { | |
| iVar1 = Global_1A045.f_1E02.f_88; | |
| Global_1A045.f_1E02[iVar1 /*15*/] = {Global_1A045.f_1E02.f_89[iVar0 /*15*/]}; | |
| Global_1A045.f_1E02.f_88++; | |
| iVar2 = 0; | |
| while (iVar2 < 3) | |
| { | |
| if (GAMEPLAY::IS_BIT_SET(Global_1A045.f_1E02.f_89[iVar0 /*15*/].f_2, iVar2)) | |
| { | |
| func_8(iVar2); | |
| } | |
| iVar2++; | |
| } | |
| } | |
| if (func_240(&(Global_1A045.f_1E02[iVar1 /*15*/]), &iLocal_80)) | |
| { | |
| Global_906C_lastHandledIndex = iVar0; | |
| iLocal_82_localNextTime = -1; | |
| iLocal_90_notificationState = 1; | |
| Global_1A045.f_1E02.f_391 = 0; | |
| iLocal_78_hasHandledNotification = 1; | |
| if (func_138()) | |
| { | |
| iLocal_81 = 1; | |
| } | |
| } | |
| else | |
| { | |
| func_142(*curTime, &(Global_1A045.f_1E02[iVar1 /*15*/]), 0); | |
| } | |
| } | |
| } | |
| iVar0++; | |
| } | |
| } | |
| int func_240(var uParam0, var uParam1) | |
| { | |
| struct<9> Var0; | |
| char[] cVar12[8]; | |
| char[] cVar16[8]; | |
| struct<9> Var20; | |
| char cVar32[32]; | |
| if (!GAMEPLAY::IS_BIT_SET(uParam0->f_1, 7) && !GAMEPLAY::IS_BIT_SET(uParam0->f_1, 8)) | |
| { | |
| return 0; | |
| } | |
| if (!can_send_notification(uParam0->f_2, uParam0->f_6, uParam0->f_3, uParam0->f_7, uParam0->f_1)) | |
| { | |
| return 0; | |
| } | |
| if (func_235(uParam0->f_6)) | |
| { | |
| return 0; | |
| } | |
| if (uParam0->f_9 != -1) | |
| { | |
| if (!execute_func_for_index(uParam0->f_9)) | |
| { | |
| return 0; | |
| } | |
| } | |
| if (is_valid_char_index(get_active_char_index())) | |
| { | |
| if (GAMEPLAY::IS_BIT_SET(uParam0->f_2, get_active_char_index_from_global())) | |
| { | |
| func_233(uParam0); | |
| if (func_64(*uParam0) == 1) | |
| { | |
| func_243(*uParam0, &Var0); | |
| func_242(uParam0->f_C, &cVar12); | |
| func_242(uParam0->f_D, &cVar16); | |
| if (func_241(&Global_8FC7, uParam0->f_6, &Var0, &(Var0.f_4), 12, &(Var0.f_8), &cVar12, &cVar16, 1, 0, 0, 0)) | |
| { | |
| if (GAMEPLAY::IS_BIT_SET(uParam0->f_1, 13)) | |
| { | |
| *uParam1 = 1; | |
| } | |
| return 1; | |
| } | |
| else | |
| { | |
| func_119(); | |
| return 0; | |
| } | |
| } | |
| else | |
| { | |
| get_phone_call_data(*uParam0, &Var20); | |
| if (GAMEPLAY::IS_STRING_NULL_OR_EMPTY(&(Var20.f_8))) | |
| { | |
| cVar32 = {Var20.f_4}; | |
| } | |
| else | |
| { | |
| cVar32 = {Var20.f_8}; | |
| } | |
| if (func_232(&Global_8FC7, uParam0->f_6, &Var20, &cVar32, 12, 1, 0, 0, 0)) | |
| { | |
| if (GAMEPLAY::IS_BIT_SET(uParam0->f_1, 13)) | |
| { | |
| *uParam1 = 1; | |
| } | |
| return 1; | |
| } | |
| else | |
| { | |
| func_119(); | |
| return 0; | |
| } | |
| } | |
| } | |
| else | |
| { | |
| return 0; | |
| } | |
| } | |
| return 0; | |
| } | |
| bool func_241(var uParam0, var uParam1, char *sParam2, char *sParam3, int iParam4, char *sParam5, char *sParam6, char *sParam7, int iParam8, int iParam9, int iParam10, bool bParam11) | |
| { | |
| func_160(uParam0, uParam1, sParam2, iParam9, iParam10, 0); | |
| Global_3E2A = 0; | |
| Global_3E01 = 1; | |
| Global_3E08 = 0; | |
| Global_3E03 = 0; | |
| Global_41D9 = 0; | |
| Global_41DB = 0; | |
| Global_41DF = 0; | |
| Global_3DFF = 0; | |
| if (iParam8 == 1) | |
| { | |
| Global_3E06 = 1; | |
| } | |
| else | |
| { | |
| Global_3E06 = 0; | |
| } | |
| Global_3E2E = 1; | |
| Global_3E30 = 0; | |
| StringCopy(&Global_3E4C, sParam6, 24); | |
| StringCopy(&Global_3E52, sParam7, 24); | |
| StringCopy(&Global_3E8E, sParam5, 24); | |
| Global_280001 = 0; | |
| return func_153(sParam3, iParam4, bParam11); | |
| } | |
| void func_242(int iParam0, char *sParam1) | |
| { | |
| switch (iParam0) | |
| { | |
| case 0: | |
| StringCopy(sParam1, "MEFL_C1Y", 16); | |
| break; | |
| case 1: | |
| StringCopy(sParam1, "MEFL_C1N", 16); | |
| break; | |
| case 2: | |
| StringCopy(sParam1, "MEFL_C2Y", 16); | |
| break; | |
| case 3: | |
| StringCopy(sParam1, "MEFL_C2N", 16); | |
| break; | |
| case 4: | |
| StringCopy(sParam1, "MEFL_C3Y", 16); | |
| break; | |
| case 5: | |
| StringCopy(sParam1, "MEFL_C3N", 16); | |
| break; | |
| case 6: | |
| StringCopy(sParam1, "PRP_TAXIYM", 16); | |
| break; | |
| case 7: | |
| StringCopy(sParam1, "PRP_TAXINM", 16); | |
| break; | |
| case 8: | |
| StringCopy(sParam1, "PRP_TAXIYF", 16); | |
| break; | |
| case 9: | |
| StringCopy(sParam1, "OJTX_REJ_F", 16); | |
| break; | |
| case 10: | |
| StringCopy(sParam1, "PRP_TAXIYT", 16); | |
| break; | |
| case 11: | |
| StringCopy(sParam1, "PRP_TAXINT", 16); | |
| break; | |
| case 12: | |
| StringCopy(sParam1, "OJTX_TIE_LOC", 16); | |
| break; | |
| case 13: | |
| StringCopy(sParam1, "OJTX_EXC_LOC", 16); | |
| break; | |
| case 14: | |
| StringCopy(sParam1, "OJTX_FL_LOC", 16); | |
| break; | |
| case 15: | |
| StringCopy(sParam1, "OJTX_FC_LOC", 16); | |
| break; | |
| case 16: | |
| StringCopy(sParam1, "OJTX_GB_LOC", 16); | |
| break; | |
| case 17: | |
| StringCopy(sParam1, "OJTX_TB_LOC", 16); | |
| break; | |
| case 18: | |
| StringCopy(sParam1, "OJTX_CI_LOC", 16); | |
| break; | |
| case 19: | |
| StringCopy(sParam1, "OJTX_GN_LOC", 16); | |
| break; | |
| case 20: | |
| StringCopy(sParam1, "OJTX_CC_LOC", 16); | |
| break; | |
| default: | |
| break; | |
| } | |
| } | |
| void func_243(int iParam0, char *sParam1) | |
| { | |
| if (func_64(iParam0) == 1) | |
| { | |
| switch (iParam0) | |
| { | |
| case 1635046052: | |
| StringCopy(sParam1, "MEFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "MEFL_CALL1", 16); | |
| StringCopy(&(sParam1->f_8), "MEFL_C1Q", 16); | |
| break; | |
| case -464957327: | |
| StringCopy(sParam1, "MEFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "MEFL_CALL2", 16); | |
| StringCopy(&(sParam1->f_8), "MEFL_C2Q", 16); | |
| break; | |
| case 178720519: | |
| StringCopy(sParam1, "MEFLAUD", 16); | |
| StringCopy(&(sParam1->f_4), "MEFL_CALL3", 16); | |
| StringCopy(&(sParam1->f_8), "MEFL_C3Q", 16); | |
| break; | |
| case 738411510: | |
| StringCopy(sParam1, "OJTXAUD", 16); | |
| StringCopy(&(sParam1->f_4), "OJTX_TIE_OFF", 16); | |
| StringCopy(&(sParam1->f_8), "PROPR_PHONEQ", 16); | |
| break; | |
| case -100973682: | |
| StringCopy(sParam1, "OJTXAUD", 16); | |
| StringCopy(&(sParam1->f_4), "OJTX_EXC_OFF", 16); | |
| StringCopy(&(sParam1->f_8), "PROPR_PHONEQ", 16); | |
| break; | |
| case 1752783247: | |
| StringCopy(sParam1, "OJTXAUD", 16); | |
| StringCopy(&(sParam1->f_4), "OJTX_DL_OFF", 16); | |
| StringCopy(&(sParam1->f_8), "PROPR_PHONEQ", 16); | |
| break; | |
| case 1016954269: | |
| StringCopy(sParam1, "OJTXAUD", 16); | |
| StringCopy(&(sParam1->f_4), "OJTX_FC_OFF", 16); | |
| StringCopy(&(sParam1->f_8), "PROPR_PHONEQ", 16); | |
| break; | |
| case -456311088: | |
| StringCopy(sParam1, "OJTXAUD", 16); | |
| StringCopy(&(sParam1->f_4), "OJTX_GB_OFF", 16); | |
| StringCopy(&(sParam1->f_8), "PROPR_PHONEQ", 16); | |
| break; | |
| case 2129099422: | |
| StringCopy(sParam1, "OJTXAUD", 16); | |
| StringCopy(&(sParam1->f_4), "OJTX_TB_OFF", 16); | |
| StringCopy(&(sParam1->f_8), "PROPR_PHONEQ", 16); | |
| break; | |
| case 1357642229: | |
| StringCopy(sParam1, "OJTXAUD", 16); | |
| StringCopy(&(sParam1->f_4), "OJTX_CI_OFF", 16); | |
| StringCopy(&(sParam1->f_8), "PROPR_PHONEQ", 16); | |
| break; | |
| case -767033321: | |
| StringCopy(sParam1, "OJTXAUD", 16); | |
| StringCopy(&(sParam1->f_4), "OJTX_GN_OFF", 16); | |
| StringCopy(&(sParam1->f_8), "PROPR_PHONEQ", 16); | |
| break; | |
| case -1240893790: | |
| StringCopy(sParam1, "OJTXAUD", 16); | |
| StringCopy(&(sParam1->f_4), "OJTX_CC_OFF", 16); | |
| StringCopy(&(sParam1->f_8), "PROPR_PHONEQ", 16); | |
| break; | |
| default: | |
| break; | |
| } | |
| } | |
| else | |
| { | |
| return; | |
| } | |
| } | |
| int func_244(int iParam0) | |
| { | |
| int iVar0; | |
| iVar0 = 0; | |
| while (iVar0 < Global_1A045.f_1E02.f_88) | |
| { | |
| if (Global_1A045.f_1E02[iVar0 /*15*/] == iParam0) | |
| { | |
| return iVar0; | |
| } | |
| iVar0++; | |
| } | |
| return -1; | |
| } | |
| void func_245(var curTime) | |
| { | |
| int iVar0; | |
| iVar0 = 0; | |
| while (iVar0 < Global_1A045.f_1E02.f_88) | |
| { | |
| if (GAMEPLAY::IS_BIT_SET(Global_1A045.f_1E02[iVar0 /*15*/].f_1, 7)) | |
| { | |
| if (func_229(Global_1A045.f_1E02[iVar0 /*15*/].f_6)) | |
| { | |
| if (*curTime >= Global_9071[Global_1A045.f_1E02[iVar0 /*15*/].f_6]) | |
| { | |
| if (func_240(&(Global_1A045.f_1E02[iVar0 /*15*/]), &iLocal_80)) | |
| { | |
| Global_906C_lastHandledIndex = iVar0; | |
| iLocal_82_localNextTime = -1; | |
| iLocal_90_notificationState = 1; | |
| Global_1A045.f_1E02.f_391 = 0; | |
| iLocal_78_hasHandledNotification = 1; | |
| if (func_138()) | |
| { | |
| iLocal_81 = 1; | |
| } | |
| } | |
| else | |
| { | |
| func_142(*curTime, &(Global_1A045.f_1E02[iVar0 /*15*/]), 0); | |
| } | |
| } | |
| } | |
| } | |
| iVar0++; | |
| } | |
| } | |
| void check_text_messages(int curTime) | |
| { | |
| int iVar0; | |
| int iVar1; | |
| if (!is_valid_char_index(get_active_char_index())) | |
| { | |
| return; | |
| } | |
| iVar0 = 0; | |
| while (iVar0 < Global_1A045.f_1E02.f_2FC && !iLocal_78_hasHandledNotification) | |
| { | |
| func_266(&(Global_1A045.f_1E02.f_28B[iVar0 /*14*/])); | |
| iVar1 = 0; | |
| if (Global_1A045.f_1E02.f_28B[iVar0 /*14*/].f_3 >= 5) | |
| { | |
| iVar1 = 1; | |
| } | |
| if ((*curTime >= Global_9070_nextNotificationTime || GAMEPLAY::IS_BIT_SET(Global_1A045.f_1E02.f_28B[iVar0 /*14*/].f_1, 21)) || iVar1) | |
| { | |
| if (*curTime >= Global_9071[Global_1A045.f_1E02.f_28B[iVar0 /*14*/].f_6] || iVar1) | |
| { | |
| if (*curTime >= Global_1A045.f_1E02.f_28B[iVar0 /*14*/].f_4) | |
| { | |
| if (attempt_send_text_message(&(Global_1A045.f_1E02.f_28B[iVar0 /*14*/]))) | |
| { | |
| func_247(&(Global_1A045.f_1E02.f_28B[iVar0 /*14*/])); | |
| Global_1A045.f_1E02.f_394 = 0; | |
| func_7(iVar0); | |
| iLocal_78_hasHandledNotification = 1; | |
| } | |
| else | |
| { | |
| func_142(*curTime, &(Global_1A045.f_1E02.f_28B[iVar0 /*14*/]), 1); | |
| } | |
| } | |
| } | |
| } | |
| iVar0++; | |
| } | |
| } | |
| void func_247(var uParam0) | |
| { | |
| if (!func_248(*uParam0)) | |
| { | |
| if (Global_1A045.f_1E02.f_38E < 3) | |
| { | |
| Global_1A045.f_1E02.f_363[Global_1A045.f_1E02.f_38E /*14*/] = {*uParam0}; | |
| Global_1A045.f_1E02.f_38E++; | |
| } | |
| } | |
| } | |
| int func_248(int iParam0) | |
| { | |
| int iVar0; | |
| iVar0 = 0; | |
| while (iVar0 < Global_1A045.f_1E02.f_38E) | |
| { | |
| if (Global_1A045.f_1E02.f_363[iVar0 /*14*/] == iParam0) | |
| { | |
| return 1; | |
| } | |
| iVar0++; | |
| } | |
| return 0; | |
| } | |
| int attempt_send_text_message(var uParam0) | |
| { | |
| int iVar0; | |
| int iVar1; | |
| int iVar2; | |
| struct<2> Var3; | |
| char cVar7[16]; | |
| char cVar11[16]; | |
| int iVar15; | |
| int iVar16; | |
| int iVar17; | |
| bool bVar18; | |
| int iVar19; | |
| if ((is_phone_in_use(0) || is_phone_disabled()) || is_phone_on_call()) | |
| { | |
| return 0; | |
| } | |
| if (!can_send_notification(uParam0->f_2, uParam0->f_6, uParam0->f_3, uParam0->f_7, uParam0->f_1)) | |
| { | |
| return 0; | |
| } | |
| if (uParam0->f_9 != -1) | |
| { | |
| if (!execute_func_for_index(uParam0->f_9)) | |
| { | |
| return 0; | |
| } | |
| } | |
| if (uParam0->f_7 != -1) | |
| { | |
| if (is_near_important_area(PLAYER::PLAYER_PED_ID(), uParam0->f_7, 0)) | |
| { | |
| return 0; | |
| } | |
| } | |
| if (GAMEPLAY::IS_BIT_SET(uParam0->f_1, 16)) | |
| { | |
| iVar0 = 0; | |
| } | |
| else | |
| { | |
| iVar0 = 1; | |
| if (GAMEPLAY::IS_BIT_SET(uParam0->f_2, 0)) | |
| { | |
| if (func_265(0)) | |
| { | |
| func_264(); | |
| } | |
| } | |
| if (GAMEPLAY::IS_BIT_SET(uParam0->f_2, 1)) | |
| { | |
| if (func_265(1)) | |
| { | |
| func_264(); | |
| } | |
| } | |
| if (GAMEPLAY::IS_BIT_SET(uParam0->f_2, 2)) | |
| { | |
| if (func_265(2)) | |
| { | |
| func_264(); | |
| } | |
| } | |
| } | |
| if (GAMEPLAY::IS_BIT_SET(uParam0->f_1, 17)) | |
| { | |
| iVar1 = 2; | |
| } | |
| else | |
| { | |
| iVar1 = 1; | |
| } | |
| if (GAMEPLAY::IS_BIT_SET(uParam0->f_1, 1)) | |
| { | |
| iVar2 = 1; | |
| } | |
| else | |
| { | |
| iVar2 = 0; | |
| } | |
| get_message_gxt_entry(*uParam0, &Var3); | |
| if (uParam0->f_A != -1) | |
| { | |
| func_263(uParam0->f_A, &cVar7); | |
| StringConCat(&Var3, &cVar7, 16); | |
| if (uParam0->f_B != -1) | |
| { | |
| func_263(uParam0->f_B, &cVar11); | |
| StringConCat(&Var3, &cVar11, 16); | |
| } | |
| } | |
| if (GAMEPLAY::IS_BIT_SET(uParam0->f_2, get_active_char_index_from_global())) | |
| { | |
| if (func_262(uParam0->f_6, &Var3, iVar1, iVar0, 0, iVar2, 0, 1, 0, uParam0->f_D)) | |
| { | |
| if (!GAMEPLAY::IS_BIT_SET(uParam0->f_1, 18)) | |
| { | |
| iVar15 = 0; | |
| while (iVar15 < 3) | |
| { | |
| if (GAMEPLAY::IS_BIT_SET(uParam0->f_2, iVar15) && iVar15 != get_active_char_index_from_global()) | |
| { | |
| switch (iVar15) | |
| { | |
| case 0: | |
| iVar16 = 0; | |
| break; | |
| case 1: | |
| iVar16 = 1; | |
| break; | |
| case 2: | |
| iVar16 = 2; | |
| break; | |
| } | |
| if (func_250(uParam0->f_6, iVar16, &Var3, iVar1, 0, 0, iVar2, 0, 0, 0, uParam0->f_D)) | |
| { | |
| } | |
| } | |
| iVar15++; | |
| } | |
| } | |
| if (!func_48(4)) | |
| { | |
| if (func_47(1)) | |
| { | |
| switch (get_active_char_index()) | |
| { | |
| case 0: | |
| func_44("AM_H_FTXT", 2, 3000, -1, 7500, 1, 0, 0, 1); | |
| break; | |
| case 1: | |
| func_44("AM_H_FTXT", 2, 3000, -1, 7500, 2, 0, 0, 1); | |
| break; | |
| case 2: | |
| func_44("AM_H_FTXT", 2, 3000, -1, 7500, 4, 0, 0, 1); | |
| break; | |
| } | |
| func_43(4); | |
| } | |
| } | |
| return 1; | |
| } | |
| else | |
| { | |
| return 0; | |
| } | |
| } | |
| else if (!GAMEPLAY::IS_BIT_SET(uParam0->f_1, 18)) | |
| { | |
| if (uParam0->f_C >= 2 || GAMEPLAY::IS_BIT_SET(uParam0->f_1, 19)) | |
| { | |
| bVar18 = false; | |
| iVar17 = 0; | |
| while (iVar17 < 3) | |
| { | |
| if (GAMEPLAY::IS_BIT_SET(uParam0->f_2, iVar17)) | |
| { | |
| switch (iVar17) | |
| { | |
| case 0: | |
| iVar19 = 0; | |
| break; | |
| case 1: | |
| iVar19 = 1; | |
| break; | |
| case 2: | |
| iVar19 = 2; | |
| break; | |
| } | |
| if (func_250(uParam0->f_6, iVar19, &Var3, iVar1, iVar0, 0, iVar2, 0, 0, 0, uParam0->f_D)) | |
| { | |
| bVar18 = true; | |
| } | |
| } | |
| iVar17++; | |
| } | |
| if (bVar18) | |
| { | |
| return 1; | |
| } | |
| } | |
| else | |
| { | |
| uParam0->f_C++; | |
| return 0; | |
| } | |
| } | |
| return 0; | |
| } | |
| int func_250(int iParam0, int iParam1, char *sParam2, int iParam3, int iParam4, int iParam5, int iParam6, int iParam7, bool bParam8, int iParam9, var uParam10) | |
| { | |
| int iVar0; | |
| char *sVar1; | |
| int iVar2; | |
| char *sVar3; | |
| int iVar4; | |
| char *sVar5; | |
| char *sVar6; | |
| GAMEPLAY::CLEAR_BIT(&Global_977, 10); | |
| iVar0 = 0; | |
| sVar1 = "NULL"; | |
| iVar2 = -99; | |
| sVar3 = "NULL"; | |
| iVar4 = 0; | |
| sVar5 = "NULL"; | |
| sVar6 = "NULL"; | |
| if (func_251(iParam0, sParam2, iParam3, iVar0, sVar1, sVar3, iVar2, iParam4, iParam5, iParam6, bParam8, iParam9, uParam10, iVar4, sVar5, sVar6, iParam1) == 1) | |
| { | |
| if (bParam8 == 1) | |
| { | |
| Global_C3A = iParam7; | |
| Global_BD9[3 /*6*/] = {Global_1A045.f_6D8C[iParam0 /*29*/].f_3}; | |
| Global_C26 = iParam0; | |
| GAMEPLAY::SET_BIT(&Global_977, 1); | |
| GAMEPLAY::SET_BIT(&Global_977, 7); | |
| } | |
| return 1; | |
| } | |
| return 0; | |
| } | |
| int func_251(var uParam0, char *sParam1, int iParam2, int iParam3, char *sParam4, char *sParam5, int iParam6, int iParam7, var uParam8, var uParam9, bool bParam10, var uParam11, var uParam12, int iParam13, char *sParam14, char *sParam15, int iParam16) | |
| { | |
| int iVar0; | |
| if (iParam13 > 99) | |
| { | |
| } | |
| if (GAMEPLAY::ARE_STRINGS_EQUAL(sParam14, sParam15)) | |
| { | |
| } | |
| func_57(); | |
| iVar0 = 0; | |
| switch (iParam16) | |
| { | |
| case 0: | |
| if (Global_38D9 == 0) | |
| { | |
| iVar0 = 0; | |
| } | |
| else | |
| { | |
| iVar0 = 1; | |
| } | |
| break; | |
| case 2: | |
| if (Global_38D9 == 2) | |
| { | |
| iVar0 = 0; | |
| } | |
| else | |
| { | |
| iVar0 = 1; | |
| } | |
| break; | |
| case 1: | |
| if (Global_38D9 == 1) | |
| { | |
| iVar0 = 0; | |
| } | |
| else | |
| { | |
| iVar0 = 1; | |
| } | |
| break; | |
| default: | |
| iVar0 = 0; | |
| break; | |
| } | |
| if (iVar0 == 0) | |
| { | |
| if (PLAYER::IS_PLAYER_PLAYING(PLAYER::PLAYER_ID())) | |
| { | |
| if (PED::IS_PED_SWIMMING_UNDER_WATER(PLAYER::PLAYER_PED_ID())) | |
| { | |
| return 0; | |
| } | |
| } | |
| if (Global_1A045.f_36DD[Global_38D9 /*20*/].f_11 == 1) | |
| { | |
| return 0; | |
| } | |
| if (SCRIPT::_GET_NUM_OF_INSTANCES_OF_SCRIPT_WITH_NAME_HASH(-757906387) > 0) // apptextmessage | |
| { | |
| return 0; | |
| } | |
| if (SCRIPT::_GET_NUM_OF_INSTANCES_OF_SCRIPT_WITH_NAME_HASH(-757906387) > 0) | |
| { | |
| return 0; | |
| } | |
| } | |
| if (func_261() == 0) | |
| { | |
| func_259(); | |
| return 0; | |
| } | |
| func_258(Global_4225); | |
| StringCopy(&(Global_1A045.f_3737[Global_4225 /*104*/]), sParam1, 64); | |
| Global_1A045.f_3737[Global_4225 /*104*/].f_11 = uParam0; | |
| if (iParam2 == 0) | |
| { | |
| } | |
| else | |
| { | |
| Global_1A045.f_3737[Global_4225 /*104*/].f_18 = iParam2; | |
| } | |
| Global_1A045.f_3737[Global_4225 /*104*/].f_19 = iParam7; | |
| Global_1A045.f_3737[Global_4225 /*104*/].f_1A = uParam8; | |
| Global_1A045.f_3737[Global_4225 /*104*/].f_1D = uParam9; | |
| Global_1A045.f_3737[Global_4225 /*104*/].f_1E = uParam12; | |
| Global_1A045.f_3737[Global_4225 /*104*/].f_1F = uParam11; | |
| Global_1A045.f_3737[Global_4225 /*104*/].f_1C = 0; | |
| Global_1A045.f_3737[Global_4225 /*104*/].f_20 = iParam3; | |
| StringCopy(&(Global_1A045.f_3737[Global_4225 /*104*/].f_21), sParam4, 64); | |
| Global_1A045.f_3737[Global_4225 /*104*/].f_31 = iParam6; | |
| StringCopy(&(Global_1A045.f_3737[Global_4225 /*104*/].f_32), sParam5, 64); | |
| Global_1A045.f_3737[Global_4225 /*104*/].f_42 = iParam13; | |
| StringCopy(&(Global_1A045.f_3737[Global_4225 /*104*/].f_43), sParam14, 64); | |
| StringCopy(&(Global_1A045.f_3737[Global_4225 /*104*/].f_53), sParam15, 64); | |
| if (GAMEPLAY::IS_BIT_SET(Global_977, 10)) | |
| { | |
| Global_1A045.f_3737[Global_4225 /*104*/].f_63[0] = 1; | |
| Global_1A045.f_3737[Global_4225 /*104*/].f_63[1] = 1; | |
| Global_1A045.f_3737[Global_4225 /*104*/].f_63[2] = 1; | |
| Global_C39 = 4; | |
| func_257(0); | |
| func_257(2); | |
| func_257(1); | |
| } | |
| else | |
| { | |
| func_57(); | |
| switch (iParam16) | |
| { | |
| case 3: | |
| Global_1A045.f_3737[Global_4225 /*104*/].f_63[Global_38D9] = 1; | |
| break; | |
| case 0: | |
| Global_1A045.f_3737[Global_4225 /*104*/].f_63[0] = 1; | |
| break; | |
| case 2: | |
| Global_1A045.f_3737[Global_4225 /*104*/].f_63[2] = 1; | |
| break; | |
| case 1: | |
| Global_1A045.f_3737[Global_4225 /*104*/].f_63[1] = 1; | |
| break; | |
| } | |
| if (iParam16 == 3) | |
| { | |
| switch (Global_38D9) | |
| { | |
| case 0: | |
| func_257(0); | |
| Global_C39 = 0; | |
| break; | |
| case 1: | |
| func_257(1); | |
| Global_C39 = 1; | |
| break; | |
| case 2: | |
| func_257(2); | |
| Global_C39 = 2; | |
| break; | |
| case 3: | |
| func_257(3); | |
| Global_C39 = 3; | |
| break; | |
| default: | |
| Global_C39 = 4; | |
| break; | |
| } | |
| } | |
| } | |
| if (iParam7 == 1) | |
| { | |
| if (GAMEPLAY::IS_BIT_SET(Global_977, 10)) | |
| { | |
| Global_1A045.f_36DD[0 /*20*/].f_11 = 1; | |
| Global_1A045.f_36DD[1 /*20*/].f_11 = 1; | |
| Global_1A045.f_36DD[2 /*20*/].f_11 = 1; | |
| } | |
| else | |
| { | |
| switch (iParam16) | |
| { | |
| case 3: | |
| Global_1A045.f_36DD[Global_38D9 /*20*/].f_11 = 1; | |
| break; | |
| case 0: | |
| Global_1A045.f_36DD[0 /*20*/].f_11 = 1; | |
| break; | |
| case 2: | |
| Global_1A045.f_36DD[2 /*20*/].f_11 = 1; | |
| break; | |
| case 1: | |
| Global_1A045.f_36DD[1 /*20*/].f_11 = 1; | |
| break; | |
| } | |
| } | |
| } | |
| Global_4227[Global_4225] = 0; | |
| if (bParam10) | |
| { | |
| func_57(); | |
| if (Global_38A0) | |
| { | |
| StringCopy(&Global_38CE, "Phone_SoundSet_Prologue", 24); | |
| } | |
| else | |
| { | |
| switch (Global_38D9) | |
| { | |
| case 0: | |
| StringCopy(&Global_38CE, "Phone_SoundSet_Michael", 24); | |
| break; | |
| case 2: | |
| StringCopy(&Global_38CE, "Phone_SoundSet_Trevor", 24); | |
| break; | |
| case 1: | |
| StringCopy(&Global_38CE, "Phone_SoundSet_Franklin", 24); | |
| break; | |
| default: | |
| StringCopy(&Global_38CE, "Phone_SoundSet_Default", 24); | |
| break; | |
| } | |
| } | |
| if (!Global_C9C[Global_38D9 /*2811*/][0 /*281*/].f_103 == 1) | |
| { | |
| if (!func_256()) | |
| { | |
| AUDIO::PLAY_SOUND_FRONTEND(-1, "Text_Arrive_Tone", &Global_38CE, 1); | |
| } | |
| } | |
| } | |
| if (!Global_3986) | |
| { | |
| if (Global_38D9.f_1 == 6) | |
| { | |
| func_255(Global_38C6, "SET_DATA_SLOT_EMPTY", 1.00f, -1082130432, -1082130432, -1082130432, -1082130432); | |
| func_252(1); | |
| func_255(Global_38C6, "DISPLAY_VIEW", 1.00f, SYSTEM::TO_FLOAT(Global_38C5), -1082130432, -1082130432, -1082130432); | |
| } | |
| } | |
| return 1; | |
| } | |
| void func_252(int iParam0) | |
| { | |
| int iVar0; | |
| int iVar1; | |
| int iVar2; | |
| int iVar3; | |
| int iVar4; | |
| int iVar5; | |
| int iVar6; | |
| int iVar7; | |
| int iVar8; | |
| int iVar9; | |
| Global_4226 = 0; | |
| Global_BD4 = iParam0; | |
| iVar0 = 0; | |
| while (iVar0 < 9) | |
| { | |
| Global_BB0[iVar0] = 0; | |
| iVar0++; | |
| } | |
| iVar0 = 0; | |
| while (iVar0 < 9) | |
| { | |
| iVar1 = 0; | |
| if (func_275(14)) | |
| { | |
| while (iVar1 < 34) | |
| { | |
| if (iParam0 == Global_97E[iVar1 /*15*/].f_B) | |
| { | |
| if (iVar0 == Global_97E[iVar1 /*15*/].f_4) | |
| { | |
| if (Global_BB0[iVar0] == 0) | |
| { | |
| Global_B8C[iVar0] = iVar1; | |
| if (iVar1 == 3) | |
| { | |
| if (GAMEPLAY::IS_BIT_SET(Global_978, 3)) | |
| { | |
| iVar2 = 42; | |
| Global_3989 = 1; | |
| } | |
| else | |
| { | |
| iVar2 = 255; | |
| Global_3989 = 0; | |
| } | |
| GRAPHICS::_PUSH_SCALEFORM_MOVIE_FUNCTION(Global_38C6, "SET_DATA_SLOT"); | |
| GRAPHICS::_PUSH_SCALEFORM_MOVIE_FUNCTION_PARAMETER_INT(1); | |
| GRAPHICS::_PUSH_SCALEFORM_MOVIE_FUNCTION_PARAMETER_INT(iVar0); | |
| GRAPHICS::_PUSH_SCALEFORM_MOVIE_FUNCTION_PARAMETER_INT(Global_97E[iVar1 /*15*/].f_A); | |
| GRAPHICS::_PUSH_SCALEFORM_MOVIE_FUNCTION_PARAMETER_INT(0); | |
| func_254(&(Global_97E[iVar1 /*15*/])); | |
| GRAPHICS::_PUSH_SCALEFORM_MOVIE_FUNCTION_PARAMETER_INT(iVar2); | |
| GRAPHICS::_POP_SCALEFORM_MOVIE_FUNCTION_VOID(); | |
| } | |
| if (Global_2583F0) | |
| { | |
| if (iVar1 == 14) | |
| { | |
| func_253(Global_38C6, "SET_DATA_SLOT", SYSTEM::TO_FLOAT(1), SYSTEM::TO_FLOAT(iVar0), SYSTEM::TO_FLOAT(Global_97E[iVar1 /*15*/].f_A), SYSTEM::TO_FLOAT(Global_4221), -1.00f, &(Global_97E[iVar1 /*15*/]), 0, 0, 0, 0); | |
| } | |
| } | |
| Global_BB0[iVar0] = 1; | |
| } | |
| } | |
| } | |
| iVar1++; | |
| } | |
| } | |
| else | |
| { | |
| while (iVar1 < 34) | |
| { | |
| if (iParam0 == Global_97E[iVar1 /*15*/].f_B) | |
| { | |
| if (iVar0 == Global_97E[iVar1 /*15*/].f_4) | |
| { | |
| if (Global_BB0[iVar0] == 0) | |
| { | |
| Global_B8C[iVar0] = iVar1; | |
| if (iVar1 == 1) | |
| { | |
| iVar3 = 0; | |
| while (iVar3 < 35) | |
| { | |
| if (Global_1A045.f_3737[iVar3 /*104*/].f_18 != 0) | |
| { | |
| if (Global_1A045.f_3737[iVar3 /*104*/].f_1C == 0) | |
| { | |
| if (Global_1A045.f_3737[iVar3 /*104*/].f_63[Global_38D9] == 1) | |
| { | |
| Global_4226++; | |
| } | |
| } | |
| } | |
| iVar3++; | |
| } | |
| func_253(Global_38C6, "SET_DATA_SLOT", SYSTEM::TO_FLOAT(1), SYSTEM::TO_FLOAT(iVar0), SYSTEM::TO_FLOAT(Global_97E[iVar1 /*15*/].f_A), SYSTEM::TO_FLOAT(Global_4226), -1.00f, &(Global_97E[iVar1 /*15*/]), 0, 0, 0, 0); | |
| } | |
| else if (iVar1 == 7) | |
| { | |
| if (Global_117A6) | |
| { | |
| iVar4 = 0; | |
| iVar4 = Global_41200A; | |
| iVar5 = 0; | |
| while (iVar5 < 12) | |
| { | |
| if (Global_41200B[iVar5 /*104*/].f_18 != 0) | |
| { | |
| if (Global_41200B[iVar5 /*104*/].f_1C == 0) | |
| { | |
| if (Global_41200B[iVar5 /*104*/].f_63[Global_38D9] == 1) | |
| { | |
| iVar4++; | |
| } | |
| } | |
| } | |
| iVar5++; | |
| } | |
| func_253(Global_38C6, "SET_DATA_SLOT", SYSTEM::TO_FLOAT(1), SYSTEM::TO_FLOAT(iVar0), SYSTEM::TO_FLOAT(Global_97E[iVar1 /*15*/].f_A), SYSTEM::TO_FLOAT(iVar4), -1.00f, &(Global_97E[iVar1 /*15*/]), 0, 0, 0, 0); | |
| } | |
| else | |
| { | |
| switch (Global_38D9) | |
| { | |
| case 0: | |
| iVar6 = Global_92D5; | |
| break; | |
| case 1: | |
| iVar6 = Global_92D6; | |
| break; | |
| case 2: | |
| iVar6 = Global_92D7; | |
| break; | |
| default: | |
| break; | |
| } | |
| func_253(Global_38C6, "SET_DATA_SLOT", SYSTEM::TO_FLOAT(1), SYSTEM::TO_FLOAT(iVar0), SYSTEM::TO_FLOAT(Global_97E[iVar1 /*15*/].f_A), SYSTEM::TO_FLOAT(iVar6), -1.00f, &(Global_97E[iVar1 /*15*/]), 0, 0, 0, 0); | |
| } | |
| } | |
| else if (iVar1 == 14) | |
| { | |
| func_253(Global_38C6, "SET_DATA_SLOT", SYSTEM::TO_FLOAT(1), SYSTEM::TO_FLOAT(iVar0), SYSTEM::TO_FLOAT(Global_97E[iVar1 /*15*/].f_A), SYSTEM::TO_FLOAT(Global_4221), -1.00f, &(Global_97E[iVar1 /*15*/]), 0, 0, 0, 0); | |
| } | |
| else if (iVar1 == 20) | |
| { | |
| GRAPHICS::_PUSH_SCALEFORM_MOVIE_FUNCTION(Global_38C6, "SET_DATA_SLOT"); | |
| GRAPHICS::_PUSH_SCALEFORM_MOVIE_FUNCTION_PARAMETER_INT(1); | |
| GRAPHICS::_PUSH_SCALEFORM_MOVIE_FUNCTION_PARAMETER_INT(iVar0); | |
| GRAPHICS::_PUSH_SCALEFORM_MOVIE_FUNCTION_PARAMETER_INT(Global_97E[iVar1 /*15*/].f_A); | |
| GRAPHICS::_PUSH_SCALEFORM_MOVIE_FUNCTION_PARAMETER_INT(0); | |
| func_254(&(Global_97E[iVar1 /*15*/])); | |
| GRAPHICS::_PUSH_SCALEFORM_MOVIE_FUNCTION_PARAMETER_INT(Global_97D); | |
| GRAPHICS::_POP_SCALEFORM_MOVIE_FUNCTION_VOID(); | |
| } | |
| else if (iVar1 == 2) | |
| { | |
| if (GAMEPLAY::IS_BIT_SET(Global_978, 6)) | |
| { | |
| iVar7 = 42; | |
| } | |
| else | |
| { | |
| iVar7 = 255; | |
| } | |
| GRAPHICS::_PUSH_SCALEFORM_MOVIE_FUNCTION(Global_38C6, "SET_DATA_SLOT"); | |
| GRAPHICS::_PUSH_SCALEFORM_MOVIE_FUNCTION_PARAMETER_INT(1); | |
| GRAPHICS::_PUSH_SCALEFORM_MOVIE_FUNCTION_PARAMETER_INT(iVar0); | |
| GRAPHICS::_PUSH_SCALEFORM_MOVIE_FUNCTION_PARAMETER_INT(Global_97E[iVar1 /*15*/].f_A); | |
| GRAPHICS::_PUSH_SCALEFORM_MOVIE_FUNCTION_PARAMETER_INT(0); | |
| func_254(&(Global_97E[iVar1 /*15*/])); | |
| GRAPHICS::_PUSH_SCALEFORM_MOVIE_FUNCTION_PARAMETER_INT(iVar7); | |
| GRAPHICS::_POP_SCALEFORM_MOVIE_FUNCTION_VOID(); | |
| } | |
| else if (iVar1 == 3) | |
| { | |
| if (GAMEPLAY::IS_BIT_SET(Global_978, 3)) | |
| { | |
| iVar8 = 42; | |
| Global_3989 = 1; | |
| } | |
| else | |
| { | |
| iVar8 = 255; | |
| Global_3989 = 0; | |
| } | |
| GRAPHICS::_PUSH_SCALEFORM_MOVIE_FUNCTION(Global_38C6, "SET_DATA_SLOT"); | |
| GRAPHICS::_PUSH_SCALEFORM_MOVIE_FUNCTION_PARAMETER_INT(1); | |
| GRAPHICS::_PUSH_SCALEFORM_MOVIE_FUNCTION_PARAMETER_INT(iVar0); | |
| GRAPHICS::_PUSH_SCALEFORM_MOVIE_FUNCTION_PARAMETER_INT(Global_97E[iVar1 /*15*/].f_A); | |
| GRAPHICS::_PUSH_SCALEFORM_MOVIE_FUNCTION_PARAMETER_INT(0); | |
| func_254(&(Global_97E[iVar1 /*15*/])); | |
| GRAPHICS::_PUSH_SCALEFORM_MOVIE_FUNCTION_PARAMETER_INT(iVar8); | |
| GRAPHICS::_POP_SCALEFORM_MOVIE_FUNCTION_VOID(); | |
| } | |
| else if (iVar1 == 8) | |
| { | |
| GRAPHICS::_PUSH_SCALEFORM_MOVIE_FUNCTION(Global_38C6, "SET_DATA_SLOT"); | |
| GRAPHICS::_PUSH_SCALEFORM_MOVIE_FUNCTION_PARAMETER_INT(1); | |
| GRAPHICS::_PUSH_SCALEFORM_MOVIE_FUNCTION_PARAMETER_INT(iVar0); | |
| GRAPHICS::_PUSH_SCALEFORM_MOVIE_FUNCTION_PARAMETER_INT(Global_97E[iVar1 /*15*/].f_A); | |
| GRAPHICS::_PUSH_SCALEFORM_MOVIE_FUNCTION_PARAMETER_INT(0); | |
| func_254(&(Global_97E[iVar1 /*15*/])); | |
| GRAPHICS::_PUSH_SCALEFORM_MOVIE_FUNCTION_PARAMETER_INT(42); | |
| GRAPHICS::_POP_SCALEFORM_MOVIE_FUNCTION_VOID(); | |
| } | |
| else if ((iVar1 == 23 && GAMEPLAY::ARE_STRINGS_EQUAL(&(Global_97E[iVar1 /*15*/]), "CELL_BENWEB")) && GAMEPLAY::IS_BIT_SET(Global_978, 6)) | |
| { | |
| GRAPHICS::_PUSH_SCALEFORM_MOVIE_FUNCTION(Global_38C6, "SET_DATA_SLOT"); | |
| GRAPHICS::_PUSH_SCALEFORM_MOVIE_FUNCTION_PARAMETER_INT(1); | |
| GRAPHICS::_PUSH_SCALEFORM_MOVIE_FUNCTION_PARAMETER_INT(iVar0); | |
| GRAPHICS::_PUSH_SCALEFORM_MOVIE_FUNCTION_PARAMETER_INT(Global_97E[iVar1 /*15*/].f_A); | |
| GRAPHICS::_PUSH_SCALEFORM_MOVIE_FUNCTION_PARAMETER_INT(0); | |
| func_254(&(Global_97E[iVar1 /*15*/])); | |
| GRAPHICS::_PUSH_SCALEFORM_MOVIE_FUNCTION_PARAMETER_INT(42); | |
| GRAPHICS::_POP_SCALEFORM_MOVIE_FUNCTION_VOID(); | |
| } | |
| else if (Global_97E[iVar1 /*15*/].f_A == 57 && iVar1 == 23) | |
| { | |
| iVar9 = 0; | |
| iVar9 = Global_18CC5C.f_1; | |
| func_253(Global_38C6, "SET_DATA_SLOT", SYSTEM::TO_FLOAT(1), SYSTEM::TO_FLOAT(iVar0), SYSTEM::TO_FLOAT(Global_97E[iVar1 /*15*/].f_A), SYSTEM::TO_FLOAT(iVar9), -1.00f, &(Global_97E[iVar1 /*15*/]), 0, 0, 0, 0); | |
| } | |
| else | |
| { | |
| func_253(Global_38C6, "SET_DATA_SLOT", SYSTEM::TO_FLOAT(1), SYSTEM::TO_FLOAT(iVar0), SYSTEM::TO_FLOAT(Global_97E[iVar1 /*15*/].f_A), SYSTEM::TO_FLOAT(0), -1.00f, &(Global_97E[iVar1 /*15*/]), 0, 0, 0, 0); | |
| } | |
| Global_BB0[iVar0] = 1; | |
| } | |
| } | |
| } | |
| iVar1++; | |
| } | |
| } | |
| iVar0++; | |
| } | |
| } | |
| void func_253(int iParam0, char *sParam1, float fParam2, float fParam3, float fParam4, float fParam5, float fParam6, char *sParam7, char *sParam8, char *sParam9, char *sParam10, char *sParam11) | |
| { | |
| GRAPHICS::_PUSH_SCALEFORM_MOVIE_FUNCTION(iParam0, sParam1); | |
| GRAPHICS::_PUSH_SCALEFORM_MOVIE_FUNCTION_PARAMETER_INT(SYSTEM::ROUND(fParam2)); | |
| if (fParam3 != -1.00f) | |
| { | |
| GRAPHICS::_PUSH_SCALEFORM_MOVIE_FUNCTION_PARAMETER_INT(SYSTEM::ROUND(fParam3)); | |
| } | |
| if (fParam4 != -1.00f) | |
| { | |
| GRAPHICS::_PUSH_SCALEFORM_MOVIE_FUNCTION_PARAMETER_INT(SYSTEM::ROUND(fParam4)); | |
| } | |
| if (fParam5 != -1.00f) | |
| { | |
| GRAPHICS::_PUSH_SCALEFORM_MOVIE_FUNCTION_PARAMETER_INT(SYSTEM::ROUND(fParam5)); | |
| } | |
| if (fParam6 != -1.00f) | |
| { | |
| GRAPHICS::_PUSH_SCALEFORM_MOVIE_FUNCTION_PARAMETER_INT(SYSTEM::ROUND(fParam6)); | |
| } | |
| if (!GAMEPLAY::IS_STRING_NULL_OR_EMPTY(sParam7)) | |
| { | |
| func_254(sParam7); | |
| } | |
| if (!GAMEPLAY::IS_STRING_NULL_OR_EMPTY(sParam8)) | |
| { | |
| func_254(sParam8); | |
| } | |
| if (!GAMEPLAY::IS_STRING_NULL_OR_EMPTY(sParam9)) | |
| { | |
| func_254(sParam9); | |
| } | |
| if (!GAMEPLAY::IS_STRING_NULL_OR_EMPTY(sParam10)) | |
| { | |
| func_254(sParam10); | |
| } | |
| if (!GAMEPLAY::IS_STRING_NULL_OR_EMPTY(sParam11)) | |
| { | |
| func_254(sParam11); | |
| } | |
| GRAPHICS::_POP_SCALEFORM_MOVIE_FUNCTION_VOID(); | |
| } | |
| void func_254(char *sParam0) | |
| { | |
| GRAPHICS::_BEGIN_TEXT_COMMAND_SCALEFORM(sParam0); | |
| GRAPHICS::_END_TEXT_COMMAND_SCALEFORM(); | |
| } | |
| void func_255(int iParam0, char *sParam1, float fParam2, float fParam3, float fParam4, float fParam5, float fParam6) | |
| { | |
| GRAPHICS::_PUSH_SCALEFORM_MOVIE_FUNCTION(iParam0, sParam1); | |
| GRAPHICS::_PUSH_SCALEFORM_MOVIE_FUNCTION_PARAMETER_INT(SYSTEM::ROUND(fParam2)); | |
| if (fParam3 != -1.00f) | |
| { | |
| GRAPHICS::_PUSH_SCALEFORM_MOVIE_FUNCTION_PARAMETER_INT(SYSTEM::ROUND(fParam3)); | |
| } | |
| if (fParam4 != -1.00f) | |
| { | |
| GRAPHICS::_PUSH_SCALEFORM_MOVIE_FUNCTION_PARAMETER_INT(SYSTEM::ROUND(fParam4)); | |
| } | |
| if (fParam5 != -1.00f) | |
| { | |
| GRAPHICS::_PUSH_SCALEFORM_MOVIE_FUNCTION_PARAMETER_INT(SYSTEM::ROUND(fParam5)); | |
| } | |
| if (fParam6 != -1.00f) | |
| { | |
| GRAPHICS::_PUSH_SCALEFORM_MOVIE_FUNCTION_PARAMETER_INT(SYSTEM::ROUND(fParam6)); | |
| } | |
| GRAPHICS::_POP_SCALEFORM_MOVIE_FUNCTION_VOID(); | |
| } | |
| bool func_256() | |
| { | |
| return Global_140863; | |
| } | |
| void func_257(int iParam0) | |
| { | |
| var uVar0; | |
| var uVar1; | |
| uVar0 = Global_1A045.f_36DD[iParam0 /*20*/].f_8; | |
| uVar0 = uVar0; | |
| uVar1 = uVar1; | |
| } | |
| void func_258(int iParam0) | |
| { | |
| int iVar0; | |
| int iVar1; | |
| int iVar2; | |
| int iVar3; | |
| var uVar4; | |
| int iVar5; | |
| iVar0 = TIME::GET_CLOCK_SECONDS(); | |
| iVar1 = TIME::GET_CLOCK_MINUTES(); | |
| iVar2 = TIME::GET_CLOCK_HOURS(); | |
| iVar3 = TIME::GET_CLOCK_DAY_OF_MONTH(); | |
| uVar4 = TIME::GET_CLOCK_MONTH() + 1; | |
| iVar5 = TIME::GET_CLOCK_YEAR(); | |
| Global_1A045.f_3737[iParam0 /*104*/].f_12 = iVar0; | |
| Global_1A045.f_3737[iParam0 /*104*/].f_12.f_1 = iVar1; | |
| Global_1A045.f_3737[iParam0 /*104*/].f_12.f_2 = iVar2; | |
| Global_1A045.f_3737[iParam0 /*104*/].f_12.f_3 = iVar3; | |
| Global_1A045.f_3737[iParam0 /*104*/].f_12.f_4 = uVar4; | |
| Global_1A045.f_3737[iParam0 /*104*/].f_12.f_5 = iVar5; | |
| } | |
| void func_259() | |
| { | |
| int iVar0; | |
| int iVar1; | |
| int iVar2; | |
| if (Global_117A6) | |
| { | |
| iVar0 = 24; | |
| iVar1 = 33; | |
| } | |
| else | |
| { | |
| iVar0 = 0; | |
| iVar1 = 20; | |
| } | |
| iVar2 = iVar0; | |
| Global_4225 = 34; | |
| Global_1A045.f_3737[Global_4225 /*104*/].f_12 = -1; | |
| Global_1A045.f_3737[Global_4225 /*104*/].f_12.f_1 = 0; | |
| Global_1A045.f_3737[Global_4225 /*104*/].f_12.f_2 = 0; | |
| Global_1A045.f_3737[Global_4225 /*104*/].f_12.f_3 = 0; | |
| Global_1A045.f_3737[Global_4225 /*104*/].f_12.f_5 = 99999; | |
| while (iVar2 < iVar1) | |
| { | |
| if (!func_260(Global_1A045.f_3737[iVar2 /*104*/].f_12, Global_1A045.f_3737[Global_4225 /*104*/].f_12)) | |
| { | |
| Global_4225 = iVar2; | |
| } | |
| iVar2++; | |
| } | |
| Global_1A045.f_3737[Global_4225 /*104*/].f_18 = 1; | |
| } | |
| int func_260(struct<6> Param0, struct<6> Param6) | |
| { | |
| struct<4> Var0; | |
| struct<4> Var6; | |
| int iVar12; | |
| int iVar13; | |
| if (Param0.f_5 < Param6.f_5) | |
| { | |
| return 0; | |
| } | |
| if (Param0.f_5 > Param6.f_5) | |
| { | |
| return 1; | |
| } | |
| if (Param0.f_5 == Param6.f_5) | |
| { | |
| if (Param0.f_4 < Param6.f_4) | |
| { | |
| return 0; | |
| } | |
| if (Param0.f_4 > Param6.f_4) | |
| { | |
| return 1; | |
| } | |
| if (Param0.f_4 == Param6.f_4) | |
| { | |
| Var0 = Param0; | |
| Var0.f_1 = Param0.f_1 * 60; | |
| Var0.f_2 = Param0.f_2 * 3600; | |
| Var0.f_3 = (Param0.f_3 * 86400); | |
| iVar12 = (((Var0 + Var0.f_1) + Var0.f_2) + Var0.f_3); | |
| Var6 = Param6; | |
| Var6.f_1 = Param6.f_1 * 60; | |
| Var6.f_2 = Param6.f_2 * 3600; | |
| Var6.f_3 = (Param6.f_3 * 86400); | |
| iVar13 = (((Var6 + Var6.f_1) + Var6.f_2) + Var6.f_3); | |
| if (iVar12 > iVar13 || iVar12 == iVar13) | |
| { | |
| return 1; | |
| } | |
| else | |
| { | |
| return 0; | |
| } | |
| } | |
| } | |
| return 0; | |
| } | |
| int func_261() | |
| { | |
| int iVar0; | |
| int iVar1; | |
| int iVar2; | |
| if (Global_117A6) | |
| { | |
| iVar0 = 24; | |
| iVar1 = 33; | |
| } | |
| else | |
| { | |
| iVar0 = 0; | |
| iVar1 = 20; | |
| } | |
| iVar2 = iVar0; | |
| while (iVar2 < iVar1) | |
| { | |
| if (Global_1A045.f_3737[iVar2 /*104*/].f_18 == 0) | |
| { | |
| Global_4225 = iVar2; | |
| return 1; | |
| } | |
| iVar2++; | |
| } | |
| iVar2 = iVar0; | |
| Global_4225 = 34; | |
| Global_1A045.f_3737[Global_4225 /*104*/].f_12 = -1; | |
| Global_1A045.f_3737[Global_4225 /*104*/].f_12.f_1 = 0; | |
| Global_1A045.f_3737[Global_4225 /*104*/].f_12.f_2 = 0; | |
| Global_1A045.f_3737[Global_4225 /*104*/].f_12.f_3 = 0; | |
| Global_1A045.f_3737[Global_4225 /*104*/].f_12.f_5 = 99999; | |
| while (iVar2 < iVar1) | |
| { | |
| if (Global_1A045.f_3737[iVar2 /*104*/].f_18 == 0 || Global_1A045.f_3737[iVar2 /*104*/].f_18 == 1) | |
| { | |
| if (!func_260(Global_1A045.f_3737[iVar2 /*104*/].f_12, Global_1A045.f_3737[Global_4225 /*104*/].f_12)) | |
| { | |
| Global_4225 = iVar2; | |
| } | |
| } | |
| if (Global_1A045.f_3737[iVar2 /*104*/].f_18 == 2) | |
| { | |
| } | |
| iVar2++; | |
| } | |
| if (Global_4225 == 34) | |
| { | |
| return 0; | |
| } | |
| Global_1A045.f_3737[Global_4225 /*104*/].f_63[0] = 0; | |
| Global_1A045.f_3737[Global_4225 /*104*/].f_63[1] = 0; | |
| Global_1A045.f_3737[Global_4225 /*104*/].f_63[2] = 0; | |
| return 1; | |
| } | |
| int func_262(int iParam0, char *sParam1, int iParam2, int iParam3, int iParam4, int iParam5, int iParam6, bool bParam7, int iParam8, var uParam9) | |
| { | |
| int iVar0; | |
| char *sVar1; | |
| int iVar2; | |
| char *sVar3; | |
| int iVar4; | |
| char *sVar5; | |
| char *sVar6; | |
| int iVar7; | |
| GAMEPLAY::CLEAR_BIT(&Global_977, 10); | |
| iVar0 = 0; | |
| sVar1 = "NULL"; | |
| iVar2 = -99; | |
| sVar3 = "NULL"; | |
| iVar4 = 0; | |
| sVar5 = "NULL"; | |
| sVar6 = "NULL"; | |
| iVar7 = 3; | |
| if (func_251(iParam0, sParam1, iParam2, iVar0, sVar1, sVar3, iVar2, iParam3, iParam4, iParam5, bParam7, iParam8, uParam9, iVar4, sVar5, sVar6, iVar7) == 1) | |
| { | |
| if (bParam7 == 1) | |
| { | |
| Global_C3A = iParam6; | |
| Global_BD9[3 /*6*/] = {Global_1A045.f_6D8C[iParam0 /*29*/].f_3}; | |
| Global_C26 = iParam0; | |
| GAMEPLAY::SET_BIT(&Global_977, 1); | |
| GAMEPLAY::SET_BIT(&Global_977, 7); | |
| } | |
| return 1; | |
| } | |
| return 0; | |
| } | |
| void func_263(int iParam0, char *sParam1) | |
| { | |
| switch (iParam0) | |
| { | |
| case 0: | |
| StringCopy(sParam1, "JUL_", 16); | |
| break; | |
| case 1: | |
| StringCopy(sParam1, "NIK_", 16); | |
| break; | |
| case 2: | |
| StringCopy(sParam1, "SAP_", 16); | |
| break; | |
| case 3: | |
| StringCopy(sParam1, "INF_", 16); | |
| break; | |
| case 4: | |
| StringCopy(sParam1, "TXI_", 16); | |
| break; | |
| case 5: | |
| StringCopy(sParam1, "HCH_", 16); | |
| break; | |
| case 6: | |
| StringCopy(sParam1, "STP", 16); | |
| break; | |
| case 7: | |
| StringCopy(sParam1, "RUD", 16); | |
| break; | |
| case 8: | |
| StringCopy(sParam1, "1ST", 16); | |
| break; | |
| case 9: | |
| StringCopy(sParam1, "2ND", 16); | |
| break; | |
| case 10: | |
| StringCopy(sParam1, "NEED", 16); | |
| break; | |
| case 11: | |
| StringCopy(sParam1, "_B", 16); | |
| break; | |
| case 12: | |
| StringCopy(sParam1, "_C", 16); | |
| break; | |
| case 13: | |
| StringCopy(sParam1, "_D", 16); | |
| break; | |
| case 15: | |
| StringCopy(sParam1, "_DD", 16); | |
| break; | |
| case 14: | |
| StringCopy(sParam1, "_DW", 16); | |
| break; | |
| case 16: | |
| StringCopy(sParam1, "_E", 16); | |
| break; | |
| case 17: | |
| StringCopy(sParam1, "_G", 16); | |
| break; | |
| case 18: | |
| StringCopy(sParam1, "_GE", 16); | |
| break; | |
| case 19: | |
| StringCopy(sParam1, "0", 16); | |
| break; | |
| case 20: | |
| StringCopy(sParam1, "1", 16); | |
| break; | |
| case 21: | |
| StringCopy(sParam1, "2", 16); | |
| break; | |
| case 22: | |
| StringCopy(sParam1, "3", 16); | |
| break; | |
| case 23: | |
| StringCopy(sParam1, "4", 16); | |
| break; | |
| case 24: | |
| StringCopy(sParam1, "M0", 16); | |
| break; | |
| case 25: | |
| StringCopy(sParam1, "M1", 16); | |
| break; | |
| case 26: | |
| StringCopy(sParam1, "M2", 16); | |
| break; | |
| case 27: | |
| StringCopy(sParam1, "M3", 16); | |
| break; | |
| case 28: | |
| StringCopy(sParam1, "M4", 16); | |
| break; | |
| case 29: | |
| StringCopy(sParam1, "F0", 16); | |
| break; | |
| case 30: | |
| StringCopy(sParam1, "T0", 16); | |
| break; | |
| case 31: | |
| StringCopy(sParam1, "T1", 16); | |
| break; | |
| case 32: | |
| StringCopy(sParam1, "T2", 16); | |
| break; | |
| case 33: | |
| StringCopy(sParam1, "N1", 16); | |
| break; | |
| case 34: | |
| StringCopy(sParam1, "N2", 16); | |
| break; | |
| case 35: | |
| StringCopy(sParam1, "N3", 16); | |
| break; | |
| case 36: | |
| StringCopy(sParam1, "N4", 16); | |
| break; | |
| case 37: | |
| StringCopy(sParam1, "N5", 16); | |
| break; | |
| case 38: | |
| StringCopy(sParam1, "N6", 16); | |
| break; | |
| case 39: | |
| StringCopy(sParam1, "P1", 16); | |
| break; | |
| case 40: | |
| StringCopy(sParam1, "P2", 16); | |
| break; | |
| case 41: | |
| StringCopy(sParam1, "P3", 16); | |
| break; | |
| case 42: | |
| StringCopy(sParam1, "P4", 16); | |
| break; | |
| case 43: | |
| StringCopy(sParam1, "P5", 16); | |
| break; | |
| case 44: | |
| StringCopy(sParam1, "P6", 16); | |
| break; | |
| case 45: | |
| StringCopy(sParam1, "F1", 16); | |
| break; | |
| case 46: | |
| StringCopy(sParam1, "F2", 16); | |
| break; | |
| case 47: | |
| StringCopy(sParam1, "F3", 16); | |
| break; | |
| case 48: | |
| StringCopy(sParam1, "F4", 16); | |
| break; | |
| case 49: | |
| StringCopy(sParam1, "F5", 16); | |
| break; | |
| case 50: | |
| StringCopy(sParam1, "F6", 16); | |
| break; | |
| case 51: | |
| StringCopy(sParam1, "F7", 16); | |
| break; | |
| case 52: | |
| StringCopy(sParam1, "F8", 16); | |
| break; | |
| case 53: | |
| StringCopy(sParam1, "WS_DL", 16); | |
| break; | |
| case 54: | |
| StringCopy(sParam1, "BA_DL", 16); | |
| break; | |
| case 55: | |
| StringCopy(sParam1, "BA_GA", 16); | |
| break; | |
| case 56: | |
| StringCopy(sParam1, "BA_ST", 16); | |
| break; | |
| case 57: | |
| StringCopy(sParam1, "BA_PA", 16); | |
| break; | |
| case 58: | |
| StringCopy(sParam1, "PSY_DF", 16); | |
| break; | |
| case 59: | |
| StringCopy(sParam1, "TAX_TX", 16); | |
| break; | |
| case 60: | |
| StringCopy(sParam1, "CI_PP", 16); | |
| break; | |
| case 61: | |
| StringCopy(sParam1, "M_", 16); | |
| break; | |
| case 62: | |
| StringCopy(sParam1, "F_", 16); | |
| break; | |
| case 63: | |
| StringCopy(sParam1, "T_", 16); | |
| break; | |
| case 64: | |
| StringCopy(sParam1, "L_", 16); | |
| break; | |
| case 65: | |
| StringCopy(sParam1, "J_", 16); | |
| break; | |
| case 66: | |
| StringCopy(sParam1, "A_", 16); | |
| break; | |
| case 67: | |
| StringCopy(sParam1, "LOSTa", 16); | |
| break; | |
| case 68: | |
| StringCopy(sParam1, "LOSTb", 16); | |
| break; | |
| case 69: | |
| StringCopy(sParam1, "LATEa", 16); | |
| break; | |
| case 70: | |
| StringCopy(sParam1, "LATEb", 16); | |
| break; | |
| case 71: | |
| StringCopy(sParam1, "HOSPa", 16); | |
| break; | |
| case 72: | |
| StringCopy(sParam1, "HOSPb", 16); | |
| break; | |
| case 73: | |
| StringCopy(sParam1, "PDIEDa", 16); | |
| break; | |
| case 74: | |
| StringCopy(sParam1, "PDIEDb", 16); | |
| break; | |
| case 75: | |
| StringCopy(sParam1, "PBUSTa", 16); | |
| break; | |
| case 76: | |
| StringCopy(sParam1, "PBUSTb", 16); | |
| break; | |
| case 77: | |
| StringCopy(sParam1, "GH_", 16); | |
| break; | |
| case 78: | |
| StringCopy(sParam1, "AH_", 16); | |
| break; | |
| case 79: | |
| StringCopy(sParam1, "BH_", 16); | |
| break; | |
| case 80: | |
| StringCopy(sParam1, "C1", 16); | |
| break; | |
| case 81: | |
| StringCopy(sParam1, "C2", 16); | |
| break; | |
| case 82: | |
| StringCopy(sParam1, "C3", 16); | |
| break; | |
| default: | |
| break; | |
| } | |
| } | |
| int func_264() | |
| { | |
| if ((Global_1A045.f_36DD[0 /*20*/].f_11 || Global_1A045.f_36DD[1 /*20*/].f_11) || Global_1A045.f_36DD[2 /*20*/].f_11) | |
| { | |
| Global_1A045.f_36DD[0 /*20*/].f_11 = 0; | |
| Global_1A045.f_36DD[1 /*20*/].f_11 = 0; | |
| Global_1A045.f_36DD[2 /*20*/].f_11 = 0; | |
| return 1; | |
| } | |
| Global_1A045.f_36DD[0 /*20*/].f_11 = 0; | |
| Global_1A045.f_36DD[1 /*20*/].f_11 = 0; | |
| Global_1A045.f_36DD[2 /*20*/].f_11 = 0; | |
| return 0; | |
| } | |
| int func_265(int iParam0) | |
| { | |
| if ((iParam0 != 0 && iParam0 != 1) && iParam0 != 2) | |
| { | |
| return 0; | |
| } | |
| if (Global_1A045.f_36DD[iParam0 /*20*/].f_11) | |
| { | |
| return 1; | |
| } | |
| return 0; | |
| } | |
| void func_266(var uParam0) | |
| { | |
| if (uParam0->f_3 == 5) | |
| { | |
| if ((uParam0->f_4 - GAMEPLAY::GET_GAME_TIMER()) > 6000) | |
| { | |
| uParam0->f_4 = GAMEPLAY::GET_GAME_TIMER() + 6000; | |
| } | |
| } | |
| } | |
| void check_phone_calls_ex(int curTime) | |
| { | |
| int iVar0; | |
| int iVar1; | |
| if (!is_valid_char_index(get_active_char_index())) | |
| { | |
| return; | |
| } | |
| iVar0 = 0; | |
| while (iVar0 < Global_1A045.f_1E02.f_88 && !iLocal_78_hasHandledNotification) | |
| { | |
| attempt_notification_time_increase(&(Global_1A045.f_1E02[iVar0 /*15*/])); | |
| if (GAMEPLAY::IS_BIT_SET(Global_1A045.f_1E02[iVar0 /*15*/].f_1, 0)) | |
| { | |
| iVar1 = 0; | |
| if (Global_1A045.f_1E02[iVar0 /*15*/].f_3 >= 5) | |
| { | |
| iVar1 = 1; | |
| } | |
| if ((*curTime >= Global_9070_nextNotificationTime || GAMEPLAY::IS_BIT_SET(Global_1A045.f_1E02[iVar0 /*15*/].f_1, 21)) || iVar1) | |
| { | |
| if (Global_1A045.f_1E02[iVar0 /*15*/].f_3 == Global_1A045.f_1E02.f_397[get_active_char_index()] || !GAMEPLAY::IS_BIT_SET(Global_1A045.f_1E02[iVar0 /*15*/].f_2, get_active_char_index_from_global())) | |
| { | |
| if (*curTime >= Global_1A045.f_1E02[iVar0 /*15*/].f_4) | |
| { | |
| if (attempt_send_phone_call(&(Global_1A045.f_1E02[iVar0 /*15*/]), &iLocal_80)) | |
| { | |
| Global_906C_lastHandledIndex = iVar0; | |
| iLocal_82_localNextTime = -1; | |
| iLocal_90_notificationState = 1; | |
| Global_1A045.f_1E02.f_391 = 0; | |
| iLocal_78_hasHandledNotification = 1; | |
| if (func_138()) | |
| { | |
| iLocal_81 = 1; | |
| } | |
| } | |
| else | |
| { | |
| func_142(*curTime, &(Global_1A045.f_1E02[iVar0 /*15*/]), 0); | |
| } | |
| } | |
| } | |
| } | |
| } | |
| iVar0++; | |
| } | |
| } | |
| int attempt_send_phone_call(var uParam0, var uParam1) | |
| { | |
| int iVar0; | |
| int iVar1; | |
| struct<9> Var2; | |
| char[] cVar14[8]; | |
| char[] cVar18[8]; | |
| struct<5> Var22; | |
| if ((is_phone_in_use(0) || is_phone_disabled()) || is_phone_on_call()) | |
| { | |
| return 0; | |
| } | |
| if (!can_send_notification(uParam0->f_2, uParam0->f_6, uParam0->f_3, uParam0->f_7, uParam0->f_1)) | |
| { | |
| return 0; | |
| } | |
| if (!GAMEPLAY::IS_BIT_SET(uParam0->f_1, 13)) | |
| { | |
| if (uParam0->f_9 != -1) | |
| { | |
| if (!execute_func_for_index(uParam0->f_9)) | |
| { | |
| return 0; | |
| } | |
| } | |
| } | |
| iVar0 = 12; | |
| if (uParam0->f_3 == 5) | |
| { | |
| iVar0 = 13; | |
| } | |
| if (GAMEPLAY::IS_BIT_SET(uParam0->f_2, get_active_char_index_from_global())) | |
| { | |
| func_233(uParam0); | |
| if (GAMEPLAY::IS_BIT_SET(uParam0->f_1, 14)) | |
| { | |
| switch (get_active_char_index()) | |
| { | |
| case 0: | |
| iVar1 = 0; | |
| break; | |
| case 1: | |
| iVar1 = 1; | |
| break; | |
| case 2: | |
| iVar1 = 2; | |
| break; | |
| } | |
| if (!Global_1A045.f_6D8C[uParam0->f_6 /*29*/].f_C[iVar1] == 1) | |
| { | |
| GAMEPLAY::SET_BIT(&(uParam0->f_1), 15); | |
| func_55(uParam0->f_6, iVar1, 0); | |
| } | |
| } | |
| if (func_64(*uParam0) == 1) | |
| { | |
| func_243(*uParam0, &Var2); | |
| func_242(uParam0->f_C, &cVar14); | |
| func_242(uParam0->f_D, &cVar18); | |
| if (GAMEPLAY::IS_BIT_SET(uParam0->f_1, 12)) | |
| { | |
| if (func_272(&Global_8FC7, uParam0->f_6, &Var2, &(Var2.f_4), iVar0, &(Var2.f_8), &cVar14, &cVar18, 0, 0, 1)) | |
| { | |
| if (uParam0->f_3 == 5 || GAMEPLAY::IS_BIT_SET(uParam0->f_1, 12)) | |
| { | |
| func_133(1); | |
| } | |
| return 1; | |
| } | |
| else | |
| { | |
| func_119(); | |
| return 0; | |
| } | |
| } | |
| else if (func_271(&Global_8FC7, uParam0->f_6, &Var2, &(Var2.f_4), iVar0, &(Var2.f_8), &cVar14, &cVar18, 0, 0, 1)) | |
| { | |
| if (uParam0->f_3 == 5 || GAMEPLAY::IS_BIT_SET(uParam0->f_1, 12)) | |
| { | |
| func_133(1); | |
| } | |
| return 1; | |
| } | |
| else | |
| { | |
| func_119(); | |
| return 0; | |
| } | |
| } | |
| else | |
| { | |
| get_phone_call_data(*uParam0, &Var22); | |
| if (GAMEPLAY::IS_BIT_SET(uParam0->f_1, 9)) | |
| { | |
| if (func_270(&Global_8FC7, uParam0->f_6, &Var22, &(Var22.f_4), iVar0, 0, 0, 1)) | |
| { | |
| if (uParam0->f_3 == 5 || GAMEPLAY::IS_BIT_SET(uParam0->f_1, 12)) | |
| { | |
| func_133(1); | |
| } | |
| return 1; | |
| } | |
| else | |
| { | |
| func_119(); | |
| return 0; | |
| } | |
| } | |
| else if (GAMEPLAY::IS_BIT_SET(uParam0->f_1, 0)) | |
| { | |
| if (func_232(&Global_8FC7, uParam0->f_6, &Var22, &(Var22.f_4), iVar0, 1, 0, 0, 0)) | |
| { | |
| if (uParam0->f_3 == 5 || GAMEPLAY::IS_BIT_SET(uParam0->f_1, 12)) | |
| { | |
| func_133(1); | |
| } | |
| if (GAMEPLAY::IS_BIT_SET(uParam0->f_1, 13)) | |
| { | |
| *uParam1 = 1; | |
| } | |
| return 1; | |
| } | |
| else | |
| { | |
| func_119(); | |
| return 0; | |
| } | |
| } | |
| else if (uParam0->f_3 == 5) | |
| { | |
| if (func_269(&Global_8FC7, uParam0->f_6, &Var22, &(Var22.f_4), iVar0, 0, 0, 1)) | |
| { | |
| func_133(1); | |
| if (GAMEPLAY::IS_BIT_SET(uParam0->f_1, 13)) | |
| { | |
| *uParam1 = 1; | |
| } | |
| return 1; | |
| } | |
| else | |
| { | |
| func_119(); | |
| return 0; | |
| } | |
| } | |
| else if (func_270(&Global_8FC7, uParam0->f_6, &Var22, &(Var22.f_4), iVar0, 0, 0, 1)) | |
| { | |
| if (GAMEPLAY::IS_BIT_SET(uParam0->f_1, 12)) | |
| { | |
| func_133(1); | |
| } | |
| if (GAMEPLAY::IS_BIT_SET(uParam0->f_1, 13)) | |
| { | |
| *uParam1 = 1; | |
| } | |
| return 1; | |
| } | |
| else | |
| { | |
| func_119(); | |
| return 0; | |
| } | |
| } | |
| } | |
| return 0; | |
| } | |
| bool func_269(var uParam0, var uParam1, char *sParam2, char *sParam3, int iParam4, int iParam5, int iParam6, bool bParam7) | |
| { | |
| func_160(uParam0, uParam1, sParam2, iParam5, iParam6, 0); | |
| Global_3E2A = 1; | |
| Global_3E01 = 1; | |
| Global_3E08 = 0; | |
| Global_3E03 = 0; | |
| Global_41D9 = 0; | |
| Global_41DB = 0; | |
| Global_41DF = 0; | |
| Global_3DFF = 0; | |
| Global_3E2E = 0; | |
| Global_3E30 = 0; | |
| Global_280001 = 0; | |
| return func_153(sParam3, iParam4, bParam7); | |
| } | |
| bool func_270(var uParam0, var uParam1, char *sParam2, char *sParam3, int iParam4, int iParam5, int iParam6, bool bParam7) | |
| { | |
| func_160(uParam0, uParam1, sParam2, iParam5, iParam6, 0); | |
| Global_3E2A = 0; | |
| Global_3E01 = 1; | |
| Global_3E08 = 0; | |
| Global_3E03 = 0; | |
| Global_41D9 = 0; | |
| Global_41DB = 0; | |
| Global_41DF = 0; | |
| Global_3DFF = 0; | |
| Global_3E2E = 0; | |
| Global_3E30 = 0; | |
| Global_280001 = 0; | |
| return func_153(sParam3, iParam4, bParam7); | |
| } | |
| bool func_271(var uParam0, var uParam1, char *sParam2, char *sParam3, int iParam4, char *sParam5, char *sParam6, char *sParam7, int iParam8, int iParam9, bool bParam10) | |
| { | |
| func_160(uParam0, uParam1, sParam2, iParam8, iParam9, 0); | |
| Global_3E2A = 0; | |
| Global_3E01 = 1; | |
| Global_3E08 = 0; | |
| Global_3E03 = 0; | |
| Global_41D9 = 0; | |
| Global_41DB = 0; | |
| Global_41DF = 0; | |
| Global_3DFF = 0; | |
| Global_3E2E = 1; | |
| Global_3E30 = 0; | |
| StringCopy(&Global_3E4C, sParam6, 24); | |
| StringCopy(&Global_3E52, sParam7, 24); | |
| StringCopy(&Global_3E8E, sParam5, 24); | |
| Global_280001 = 0; | |
| return func_153(sParam3, iParam4, bParam10); | |
| } | |
| bool func_272(var uParam0, var uParam1, char *sParam2, char *sParam3, int iParam4, char *sParam5, char *sParam6, char *sParam7, int iParam8, int iParam9, bool bParam10) | |
| { | |
| func_160(uParam0, uParam1, sParam2, iParam8, iParam9, 0); | |
| Global_3E2A = 1; | |
| Global_3E01 = 1; | |
| Global_3E08 = 0; | |
| Global_3E03 = 0; | |
| Global_41D9 = 0; | |
| Global_41DB = 0; | |
| Global_41DF = 0; | |
| Global_3DFF = 0; | |
| Global_3E2E = 1; | |
| Global_3E30 = 0; | |
| StringCopy(&Global_3E4C, sParam6, 24); | |
| StringCopy(&Global_3E52, sParam7, 24); | |
| StringCopy(&Global_3E8E, sParam5, 24); | |
| Global_280001 = 0; | |
| return func_153(sParam3, iParam4, bParam10); | |
| } | |
| void attempt_notification_time_increase(var uParam0) | |
| { | |
| if (uParam0->f_3 == 5) | |
| { | |
| if ((uParam0->f_4 - GAMEPLAY::GET_GAME_TIMER()) > 6000) | |
| { | |
| uParam0->f_4 = GAMEPLAY::GET_GAME_TIMER() + 6000; | |
| } | |
| } | |
| } | |
| void check_phone_calls(int curTime) | |
| { | |
| int iVar0; | |
| int iVar1; | |
| if (!is_valid_char_index(get_active_char_index())) | |
| { | |
| return; | |
| } | |
| iVar0 = 0; | |
| while (iVar0 < Global_1A045.f_1E02.f_88 && !iLocal_78_hasHandledNotification) | |
| { | |
| attempt_notification_time_increase(&(Global_1A045.f_1E02[iVar0 /*15*/])); | |
| if (!GAMEPLAY::IS_BIT_SET(Global_1A045.f_1E02[iVar0 /*15*/].f_1, 0)) | |
| { | |
| iVar1 = 0; | |
| if (Global_1A045.f_1E02[iVar0 /*15*/].f_3 >= 5) | |
| { | |
| iVar1 = 1; | |
| } | |
| if ((*curTime >= Global_9070_nextNotificationTime || iVar1) || GAMEPLAY::IS_BIT_SET(Global_1A045.f_1E02[iVar0 /*15*/].f_1, 21)) | |
| { | |
| if (Global_1A045.f_1E02[iVar0 /*15*/].f_3 == Global_1A045.f_1E02.f_397[get_active_char_index()] || !GAMEPLAY::IS_BIT_SET(Global_1A045.f_1E02[iVar0 /*15*/].f_2, get_active_char_index_from_global())) | |
| { | |
| if (*curTime >= Global_9071[Global_1A045.f_1E02[iVar0 /*15*/].f_6] || iVar1) | |
| { | |
| if (*curTime >= Global_1A045.f_1E02[iVar0 /*15*/].f_4) | |
| { | |
| if (attempt_send_phone_call(&(Global_1A045.f_1E02[iVar0 /*15*/]), &iLocal_80)) | |
| { | |
| Global_906C_lastHandledIndex = iVar0; | |
| iLocal_82_localNextTime = -1; | |
| iLocal_90_notificationState = 1; | |
| Global_1A045.f_1E02.f_391 = 0; | |
| iLocal_78_hasHandledNotification = 1; | |
| if (func_138()) | |
| { | |
| iLocal_81 = 1; | |
| } | |
| } | |
| else | |
| { | |
| func_142(*curTime, &(Global_1A045.f_1E02[iVar0 /*15*/]), 0); | |
| } | |
| } | |
| } | |
| } | |
| } | |
| } | |
| iVar0++; | |
| } | |
| } | |
| bool func_275(int iParam0) | |
| { | |
| return Global_8E49 == iParam0; | |
| } | |
| int is_in_mission() | |
| { | |
| if (Global_8E49 == 15) | |
| { | |
| return 0; | |
| } | |
| return 1; | |
| } | |
| void cleanup_and_terminate() | |
| { | |
| struct<15> Var0; | |
| int iVar15; | |
| int iVar16; | |
| Global_906C_lastHandledIndex = -1; | |
| iVar15 = 0; | |
| while (iVar15 < Global_1A045.f_1E02.f_C6) | |
| { | |
| func_12(Global_1A045.f_1E02.f_89[iVar15 /*15*/].f_6); | |
| iVar16 = iVar15; | |
| while (iVar16 <= (Global_1A045.f_1E02.f_C6 - 2)) | |
| { | |
| Global_1A045.f_1E02.f_89[iVar16 /*15*/] = {Global_1A045.f_1E02.f_89[iVar16 + 1 /*15*/]}; | |
| iVar16++; | |
| } | |
| Global_1A045.f_1E02.f_89[(Global_1A045.f_1E02.f_C6 - 1) /*15*/] = {Var0}; | |
| Global_1A045.f_1E02.f_C6 = (Global_1A045.f_1E02.f_C6 - 1); | |
| iVar15++; | |
| } | |
| SCRIPT::TERMINATE_THIS_THREAD(); | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment