Skip to content

Instantly share code, notes, and snippets.

Created June 20, 2015 02:13
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save anonymous/25892d5a18f226b03256 to your computer and use it in GitHub Desktop.
Save anonymous/25892d5a18f226b03256 to your computer and use it in GitHub Desktop.
#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;
var uLocal_14 = 0;
var uLocal_15 = 0;
var uLocal_16 = 0;
*string sLocal_17 = 0;
float fLocal_18 = 0;
var uLocal_19 = 0;
var uLocal_20 = 0;
var uLocal_21 = 0;
float fLocal_22 = 0;
float fLocal_23 = 0;
var uLocal_24 = 0;
int iLocal_25 = 0;
var uLocal_26 = 0;
var uLocal_27 = 0;
float fLocal_28 = 0;
float fLocal_29 = 0;
float fLocal_30 = 0;
var uLocal_31 = 0;
var uLocal_32 = 0;
var uLocal_33 = 0;
var uLocal_34 = 0;
var uLocal_35 = 0;
var uLocal_36 = 0;
var uLocal_37 = 0;
var uLocal_38 = 0;
var uLocal_39 = 0;
var uLocal_40 = 0;
Vector3 mission_sphere_origin = 0;
float mission_sphere_radius = 0;
Vector3 vLocal_43 = 0;
Vector3 vLocal_44 = 0;
var uLocal_45 = 16;
var uLocal_46 = 0;
var uLocal_47 = 0;
var uLocal_48 = 0;
var uLocal_49 = 0;
var uLocal_50 = 0;
var uLocal_51 = 0;
var uLocal_52 = 0;
var uLocal_53 = 0;
var uLocal_54 = 0;
var uLocal_55 = 0;
var uLocal_56 = 0;
var uLocal_57 = 0;
var uLocal_58 = 0;
var uLocal_59 = 0;
var uLocal_60 = 0;
var uLocal_61 = 0;
var uLocal_62 = 0;
var uLocal_63 = 0;
var uLocal_64 = 0;
var uLocal_65 = 0;
var uLocal_66 = 0;
var uLocal_67 = 0;
var uLocal_68 = 0;
var uLocal_69 = 0;
var uLocal_70 = 0;
var uLocal_71 = 0;
var uLocal_72 = 0;
var uLocal_73 = 0;
var uLocal_74 = 0;
var uLocal_75 = 0;
var uLocal_76 = 0;
var uLocal_77 = 0;
var uLocal_78 = 0;
var uLocal_79 = 0;
var uLocal_80 = 0;
var uLocal_81 = 0;
var uLocal_82 = 0;
var uLocal_83 = 0;
var uLocal_84 = 0;
var uLocal_85 = 0;
var uLocal_86 = 0;
var uLocal_87 = 0;
var uLocal_88 = 0;
var uLocal_89 = 0;
var uLocal_90 = 0;
var uLocal_91 = 0;
var uLocal_92 = 0;
var uLocal_93 = 0;
var uLocal_94 = 0;
var uLocal_95 = 0;
var uLocal_96 = 0;
var uLocal_97 = 0;
var uLocal_98 = 0;
var uLocal_99 = 0;
var uLocal_100 = 0;
var uLocal_101 = 0;
var uLocal_102 = 0;
var uLocal_103 = 0;
var uLocal_104 = 0;
var uLocal_105 = 0;
var uLocal_106 = 0;
var uLocal_107 = 0;
var uLocal_108 = 0;
var uLocal_109 = 0;
var uLocal_110 = 0;
var uLocal_111 = 0;
var uLocal_112 = 0;
var uLocal_113 = 0;
var uLocal_114 = 0;
var uLocal_115 = 0;
var uLocal_116 = 0;
var uLocal_117 = 0;
var uLocal_118 = 0;
var uLocal_119 = 0;
var uLocal_120 = 0;
var uLocal_121 = 0;
var uLocal_122 = 0;
var uLocal_123 = 0;
var uLocal_124 = 0;
var uLocal_125 = 0;
var uLocal_126 = 0;
var uLocal_127 = 0;
var uLocal_128 = 0;
var uLocal_129 = 0;
var uLocal_130 = 0;
var uLocal_131 = 0;
var uLocal_132 = 0;
var uLocal_133 = 0;
var uLocal_134 = 0;
var uLocal_135 = 0;
var uLocal_136 = 0;
var uLocal_137 = 0;
var uLocal_138 = 0;
var uLocal_139 = 0;
var uLocal_140 = 0;
var uLocal_141 = 0;
var uLocal_142 = 0;
var uLocal_143 = 0;
var uLocal_144 = 0;
var uLocal_145 = 0;
var uLocal_146 = 0;
var uLocal_147 = 0;
var uLocal_148 = 0;
var uLocal_149 = 0;
var uLocal_150 = 0;
var uLocal_151 = 0;
var uLocal_152 = 0;
var uLocal_153 = 0;
var uLocal_154 = 0;
var uLocal_155 = 0;
var uLocal_156 = 0;
var uLocal_157 = 0;
var uLocal_158 = 0;
var uLocal_159 = 0;
var uLocal_160 = 0;
var uLocal_161 = 0;
var uLocal_162 = 0;
var uLocal_163 = 0;
var uLocal_164 = 0;
var uLocal_165 = 0;
var uLocal_166 = 0;
var uLocal_167 = 0;
var uLocal_168 = 0;
var uLocal_169 = 0;
var uLocal_170 = 0;
var uLocal_171 = 0;
var uLocal_172 = 0;
var uLocal_173 = 0;
var uLocal_174 = 0;
var uLocal_175 = 0;
var uLocal_176 = 0;
var uLocal_177 = 0;
var uLocal_178 = 0;
var uLocal_179 = 0;
var uLocal_180 = 0;
var uLocal_181 = 0;
var uLocal_182 = 0;
var uLocal_183 = 0;
var uLocal_184 = 0;
var uLocal_185 = 0;
var uLocal_186 = 0;
var uLocal_187 = 0;
var uLocal_188 = 0;
var uLocal_189 = 0;
var uLocal_190 = 0;
var uLocal_191 = 0;
var uLocal_192 = 0;
var uLocal_193 = 0;
var uLocal_194 = 0;
var uLocal_195 = 0;
var uLocal_196 = 0;
var uLocal_197 = 0;
var uLocal_198 = 0;
var uLocal_199 = 0;
var uLocal_200 = 0;
var uLocal_201 = 0;
var uLocal_202 = 0;
var uLocal_203 = 0;
var uLocal_204 = 0;
var uLocal_205 = 0;
var uLocal_206 = 0;
var uLocal_207 = 0;
var uLocal_208 = 0;
var uLocal_209 = 0;
var state_A = 0;
var state_B = 0;
float s_fStopSpeed = 0;
int iLocal_213 = 0;
var akuma_handle_one = 0;
var uLocal_215 = 0;
var akuma_handle_two = 0;
var uLocal_217 = 0;
int iLocal_218 = 0;
var uLocal_219 = 0;
var uLocal_220 = 0;
Vector3 player_forward_vector = 0;
int security_guard_hash = 0;
#endregion
void main()
{
bool bVar0;
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;
sLocal_17 = "NULL";
fLocal_18 = 0f;
fLocal_22 = -0.0375f;
fLocal_23 = 0.17f;
iLocal_25 = 3;
fLocal_28 = 80f;
fLocal_29 = 140f;
fLocal_30 = 180f;
mission_sphere_origin = {-1124.392f, -514.7001f, 33.21493f};
mission_sphere_radius = 200f;
vLocal_43 = {2490f, 3777f, 2402.879f};
vLocal_44 = {-2052f, 3237f, 1450.078f};
s_fStopSpeed = 3f;
iLocal_213 = 2;
security_guard_hash = joaat("s_m_m_security_01");
bVar0 = false;
if (get_itemset_with_unlock(82))
{
cleanup();
}
check_and_set_flow_mf_control_bitset(30);
if (is_entity_alive(player_ped_id()))
{
while (bVar0 == 0)
{
bVar0 = ((get_mission_flag() == 0 && get_current_ped() == 0) && is_entity_in_sphere(player_ped_id(), mission_sphere_origin, mission_sphere_radius));
check_exit_conditions();
}
}
set_mf_control_flag(FLAG_MOVIE_STUDIO_OPEN, 0);
close_movie_studio(1);
request_model_with_timeout(joaat("akuma"), 1);
request_model_with_timeout(security_guard_hash, 1);
while (true)
{
is_entity_alive(player_ped_id());
player_forward_vector = {get_entity_forward_vector(player_ped_id())};
if (get_player_wanted_level(player_id()) == 0)
{
run_solomon_state_machine(&state_A);
run_solomon_state_machine_two(&state_B);
if (is_player_in_movie_studio_area(get_entity_coords(player_ped_id(), 1), 7, 0))
{
set_mf_control_flag(FLAG_MOVIE_STUDIO_OPEN, 1);
check_and_clear_flowlaunch_bit(30);
cleanup();
}
}
check_exit_conditions();
}
}
bool check_and_clear_flowlaunch_bit(int iParam0)
{
int iVar0;
int iVar1;
if (iParam0 <= 31)
{
iVar0 = 9;
iVar1 = iParam0;
}
else
{
iVar0 = 10;
iVar1 = iParam0 - 32;
}
if (is_bit_set(g_SAVE_DATA.imm_6711.MF_CONTROLS_STRUCT.MF_CONTROL_BITSETIDS[iVar0], iVar1))
{
clear_bit(&g_SAVE_DATA.imm_6711.MF_CONTROLS_STRUCT.MF_CONTROL_BITSETIDS[iVar0], iVar1);
return true;
}
return false;
}
bool is_player_in_movie_studio_area(Vector3 vParam0, var uParam1, int iParam2)
{
Vector3[] vVar0 = new Vector3[15];
Vector3[] vVar1 = new Vector3[15];
float[] fVar2 = new float[15];
int iVar3;
int iVar4;
int iVar5;
iVar5 = 0;
switch (uParam1)
{
case 1:
vVar0[0 <3>] = {-1332.211f, 100.4608f, 40.38437f};
vVar1[0 <3>] = {-1094.238f, 148.4274f, 73f};
fVar2[0] = 171.25f;
vVar0[1 <3>] = {-999.7344f, -110.2231f, 25.25706f};
vVar1[1 <3>] = {-1149.494f, 109.2558f, 73f};
fVar2[1] = 132f;
vVar0[2 <3>] = {-1035.113f, -84.95885f, 28.2746f};
vVar1[2 <3>] = {-1261.103f, 50.08148f, 73f};
fVar2[2] = 132f;
iVar3 = 3;
break;
case 2:
vVar0[0 <3>] = {-804.3439f, -3346.5f, 10f};
vVar1[0 <3>] = {-1816.954f, -2768.893f, IntToFloat(250 + iParam2)};
fVar2[0] = 247f;
vVar0[1 <3>] = {-1911.488f, -2934.197f, 10f};
vVar1[1 <3>] = {-968.6236f, -3477.748f, IntToFloat(250 + iParam2)};
fVar2[1] = 149f;
vVar0[2 <3>] = {-844.9433f, -2802.785f, 10f};
vVar1[2 <3>] = {-1011.081f, -3086.904f, IntToFloat(250 + iParam2)};
fVar2[2] = 185.5f;
vVar0[3 <3>] = {-1021.086f, -2952.277f, 10f};
vVar1[3 <3>] = {-1599.008f, -2616.271f, IntToFloat(250 + iParam2)};
fVar2[3] = 250f;
vVar0[4 <3>] = {-1027.136f, -2436.457f, 10f};
vVar1[4 <3>] = {-1392.61f, -2226.763f, IntToFloat(250 + iParam2)};
fVar2[4] = 193.5f;
vVar0[5 <3>] = {-1497.549f, -2408.712f, 10f};
vVar1[5 <3>] = {-1136.917f, -2617.955f, IntToFloat(250 + iParam2)};
fVar2[5] = 234.5f;
vVar0[6 <3>] = {-982.7924f, -2831.709f, 12.93313f};
vVar1[6 <3>] = {-966.4677f, -2803.458f, 16.68313f};
fVar2[6] = 16f;
vVar0[7 <3>] = {-1110.083f, -3496.806f, 12f};
vVar1[7 <3>] = {-1955.298f, -3010.431f, IntToFloat(250 + iParam2)};
fVar2[7] = 80f;
vVar0[8 <3>] = {-1886.899f, -3193.024f, 12f};
vVar1[8 <3>] = {-1836.143f, -3105.268f, IntToFloat(250 + iParam2)};
fVar2[8] = 142f;
vVar0[9 <3>] = {-1134.337f, -3535.648f, 12f};
vVar1[9 <3>] = {-1259.649f, -3463.486f, IntToFloat(250 + iParam2)};
fVar2[9] = 30.75f;
vVar0[10 <3>] = {-969.1279f, -3463.899f, 12f};
vVar1[10 <3>] = {-896.3734f, -3505.715f, IntToFloat(250 + iParam2)};
fVar2[10] = 150f;
vVar0[11 <3>] = {-1369.491f, -2173.579f, 10f};
vVar1[11 <3>] = {-1685.626f, -2720.364f, IntToFloat(250 + iParam2)};
fVar2[11] = 29.25f;
vVar0[12 <3>] = {-1010.926f, -3550.943f, 10f};
vVar1[12 <3>] = {-1110.198f, -3493.617f, IntToFloat(250 + iParam2)};
fVar2[12] = 43f;
iVar3 = 13;
break;
case 3:
vVar0[0 <3>] = {-1773.944f, 3287.334f, 30f};
vVar1[0 <3>] = {-2029.776f, 2845.083f, IntToFloat(250 + iParam2)};
fVar2[0] = 250f;
vVar0[1 <3>] = {-2725.889f, 3291.099f, 30f};
vVar1[1 <3>] = {-2009.182f, 2879.835f, IntToFloat(250 + iParam2)};
fVar2[1] = 180f;
vVar0[2 <3>] = {-2442.026f, 3326.699f, 30f};
vVar1[2 <3>] = {-2033.928f, 3089.049f, IntToFloat(250 + iParam2)};
fVar2[2] = 200f;
vVar0[3 <3>] = {-1917.165f, 3374.209f, 30f};
vVar1[3 <3>] = {-2016.791f, 3195.058f, IntToFloat(250 + iParam2)};
fVar2[3] = 86.25f;
vVar0[4 <3>] = {-2192.753f, 3373.278f, 30f};
vVar1[4 <3>] = {-2191.544f, 3150.417f, IntToFloat(250 + iParam2)};
fVar2[4] = 140.5f;
vVar0[5 <3>] = {-2077.663f, 3344.514f, 30f};
vVar1[5 <3>] = {-2191.544f, 3150.417f, IntToFloat(250 + iParam2)};
fVar2[5] = 140.5f;
vVar0[6 <3>] = {-2861.755f, 3352.661f, 30f};
vVar1[6 <3>] = {-2715.871f, 3269.916f, IntToFloat(250 + iParam2)};
fVar2[6] = 90f;
vVar0[7 <3>] = {-2005.574f, 3364.533f, 30f};
vVar1[7 <3>] = {-1977.569f, 3330.888f, IntToFloat(250 + iParam2)};
fVar2[7] = 100f;
vVar0[8 <3>] = {-1682.235f, 3004.285f, 30f};
vVar1[8 <3>] = {-1942.747f, 2947.441f, IntToFloat(250 + iParam2)};
fVar2[8] = 248.75f;
vVar0[9 <3>] = {-2393.295f, 2936.406f, 31.6801f};
vVar1[9 <3>] = {-2453.037f, 3006.863f, 52.31003f};
fVar2[9] = 128f;
vVar0[10 <3>] = {-2347.185f, 3023.83f, 31.56573f};
vVar1[10 <3>] = {-2517.33f, 2989.063f, 49.95644f};
fVar2[10] = 127.25f;
vVar0[11 <3>] = {-2259.922f, 3358.04f, 29.99972f};
vVar1[11 <3>] = {-2299.772f, 3385.79f, 38.06014f};
fVar2[11] = 16f;
vVar0[12 <3>] = {-2476.309f, 3363.914f, 31.67933f};
vVar1[12 <3>] = {-2431.981f, 3287.669f, 39.97826f};
fVar2[12] = 214.25f;
vVar0[13 <3>] = {-2103.081f, 2797.783f, 29.37864f};
vVar1[13 <3>] = {-2096.821f, 2874.423f, 57.80989f};
fVar2[13] = 65.75f;
iVar3 = 14;
break;
case 4:
vVar0[0 <3>] = {1541.607f, 2527.555f, 40f};
vVar1[0 <3>] = {1815.575f, 2535.06f, IntToFloat(150 + iParam2)};
fVar2[0] = 114f;
vVar0[1 <3>] = {1788.879f, 2445.727f, 40f};
vVar1[1 <3>] = {1716.96f, 2502.957f, IntToFloat(150 + iParam2)};
fVar2[1] = 88.5f;
vVar0[2 <3>] = {1601.157f, 2436.244f, 40f};
vVar1[2 <3>] = {1650.078f, 2515.923f, IntToFloat(150 + iParam2)};
fVar2[2] = 133.25f;
vVar0[3 <3>] = {1706.331f, 2407.597f, 40f};
vVar1[3 <3>] = {1698.555f, 2460.208f, IntToFloat(150 + iParam2)};
fVar2[3] = 104.5f;
vVar0[4 <3>] = {1712.452f, 2756.218f, 40f};
vVar1[4 <3>] = {1718.848f, 2589.162f, IntToFloat(150 + iParam2)};
fVar2[4] = 121.75f;
vVar0[5 <3>] = {1830.228f, 2661.24f, 40f};
vVar1[5 <3>] = {1774.812f, 2679.419f, IntToFloat(150 + iParam2)};
fVar2[5] = 84.5f;
vVar0[6 <3>] = {1559.05f, 2632.22f, 40f};
vVar1[6 <3>] = {1657.208f, 2595.484f, IntToFloat(150 + iParam2)};
fVar2[6] = 103.75f;
vVar0[7 <3>] = {1612.021f, 2716.869f, 40f};
vVar1[7 <3>] = {1657.165f, 2669.721f, IntToFloat(150 + iParam2)};
fVar2[7] = 104.25f;
vVar0[8 <3>] = {1809.872f, 2729.827f, 40f};
vVar1[8 <3>] = {1789.855f, 2705.037f, IntToFloat(150 + iParam2)};
fVar2[8] = 91f;
vVar0[9 <3>] = {1818.789f, 2605.948f, 40f};
vVar1[9 <3>] = {1783.114f, 2606.783f, IntToFloat(150 + iParam2)};
fVar2[9] = 51.25f;
iVar3 = 10;
break;
case 5:
vVar0[0 <3>] = {3411.002f, 3663.185f, 20f};
vVar1[0 <3>] = {3615.583f, 3626.194f, IntToFloat(40 + iParam2)};
fVar2[0] = 45.75f;
vVar0[1 <3>] = {3426.66f, 3733.078f, 20f};
vVar1[1 <3>] = {3643.801f, 3694.362f, IntToFloat(40 + iParam2)};
fVar2[1] = 99f;
vVar0[2 <3>] = {3446.036f, 3795.688f, 20f};
vVar1[2 <3>] = {3650.914f, 3766.152f, IntToFloat(40 + iParam2)};
fVar2[2] = 81.5f;
iVar3 = 3;
break;
case 6:
vVar0[0 <3>] = {526.053f, -3391.497f, -10f};
vVar1[0 <3>] = {523.2289f, -3118.678f, IntToFloat(10 + iParam2)};
fVar2[0] = 120f;
vVar0[1 <3>] = {459.4397f, -3199.99f, 4.819676f};
vVar1[1 <3>] = {593.8928f, -3199.998f, 30.06926f};
fVar2[1] = 170f;
vVar0[2 <3>] = {552.8467f, -3111.054f, 4.819394f};
vVar1[2 <3>] = {585.3137f, -3111.844f, 17.56923f};
fVar2[2] = 12.5f;
vVar0[3 <3>] = {598.4666f, -3140.147f, 4.819257f};
vVar1[3 <3>] = {597.4973f, -3117.063f, 17.31926f};
fVar2[3] = 9.75f;
iVar3 = 4;
break;
case 7:
vVar0[0 <3>] = {-1108.55f, -570.8798f, 20f};
vVar1[0 <3>] = {-1187.811f, -477.5037f, IntToFloat(50 + iParam2)};
fVar2[0] = 162f;
vVar0[1 <3>] = {-1201.378f, -485.9673f, 20f};
vVar1[1 <3>] = {-1215.796f, -464.8281f, IntToFloat(50 + iParam2)};
fVar2[1] = 124f;
vVar0[2 <3>] = {-985.6311f, -525.4233f, 20f};
vVar1[2 <3>] = {-1013.393f, -475.2057f, IntToFloat(50 + iParam2)};
fVar2[2] = 55f;
vVar0[3 <3>] = {-1055.849f, -477.8226f, 20f};
vVar1[3 <3>] = {-1073.333f, -498.717f, IntToFloat(50 + iParam2)};
fVar2[3] = 142f;
iVar3 = 4;
break;
case 8:
vVar0[0 <3>] = {461.5684f, -984.572f, 29.43951f};
vVar1[0 <3>] = {471.17f, -984.4292f, 40.14212f};
fVar2[0] = 7.75f;
vVar0[1 <3>] = {457.3404f, -984.756f, 34.43951f};
vVar1[1 <3>] = {457.2084f, -993.7189f, 29.38958f};
fVar2[1] = 14.75f;
vVar0[2 <3>] = {477.6227f, -986.6f, 40.00819f};
vVar1[2 <3>] = {424.8687f, -986.3279f, 48.71241f};
fVar2[2] = 31.5f;
vVar0[3 <3>] = {474.3889f, -974.4613f, 39.55761f};
vVar1[3 <3>] = {474.0358f, -1021.972f, 49.10033f};
fVar2[3] = 30.5f;
vVar0[4 <3>] = {442.1768f, -974.1888f, 29.68951f};
vVar1[4 <3>] = {442.1855f, -979.8635f, 33.43951f};
fVar2[4] = 6.75f;
iVar3 = 5;
break;
}
iVar4 = 0;
while (iVar4 < iVar3)
{
if (is_point_in_angled_area(vParam0, vVar0[iVar4 <3>], vVar1[iVar4 <3>], fVar2[iVar4], iVar5, 1))
{
return true;
}
iVar4++;
}
return false;
}
void run_solomon_state_machine_two(uint32 *state)
{
bool conversationResult;
float playerLookDeviationAngle;
Vehicle player_vehicle;
switch (*state)
{
case 0:
cleanup_vehicle(&akuma_handle_two);
set_mf_control_flag(FLAG_MOVIE_STUDIO_OPEN, 0);
delete_ped(&uLocal_220);
*state++;
break;
case 1:
if (is_entity_aabb_in_angled_area(player_ped_id(), -1210.236f, -579.875f, 26.33215f, -1204.725f, -586.3573f, 29.56773f, 6f))
{
s_fStopSpeed = 0.25f;
*state++;
return;
}
if (is_ped_in_any_vehicle(player_ped_id(), 0))
{
player_vehicle = get_vehicle_ped_is_in(player_ped_id(), 0);
playerLookDeviationAngle = acos(xy_dot_product(player_forward_vector, 0.73f, 0.683f, -0.013f)); // acos of a dot product is the angle between both vectors in radians
if (absf(playerLookDeviationAngle) < 25f)
{
if (is_entity_aabb_in_angled_area(player_vehicle, -1211.774f, -580.9299f, 26.33095f, -1208.127f, -585.3617f, 29.66056f, 4.5f))
{
s_fStopSpeed = 3f;
*state++;
}
}
}
break;
case 2:
if (is_ped_in_any_vehicle(player_ped_id(), 0))
{
player_vehicle = get_vehicle_ped_is_in(player_ped_id(), 0);
try_stop_vehicle(player_vehicle, s_fStopSpeed, iLocal_213, 0.5f, 0);
}
else
{
task_stand_still(player_ped_id(), -1);
}
if (is_security_guard_at_position_and_near_player(-1210.152f, -578.0859f, 26.7238f))
{
set_auto_conversation_target(&uLocal_45, 0, player_ped_id(), "MICHAEL", 0, 1);
if (func_41())
{
conversationResult = start_mission_conversation(&uLocal_45, "AMSOLAU", "AMSOL_HERE", 8, 0, 0, 0);
}
else
{
conversationResult = start_mission_conversation(&uLocal_45, "AMSOLAU", "AMSOL_WORK", 8, 0, 0, 0);
}
if (conversationResult)
{
*state++;
}
}
else
{
*state++;
}
break;
case 3:
if (is_ped_in_any_vehicle(player_ped_id(), 0))
{
player_vehicle = get_vehicle_ped_is_in(player_ped_id(), 0);
if (try_stop_vehicle(player_vehicle, s_fStopSpeed, iLocal_213, 0.5f, 0))
{
*state++;
return;
}
}
*state++;
break;
case 4:
if (!is_scripted_speech_playing(player_ped_id()) && !is_scripted_conversation_ongoing())
{
clear_ped_tasks(player_ped_id());
*state++;
}
break;
case 5:
open_movie_studio(0);
*state++;
break;
case 6:
generate_mission_akuma(&akuma_handle_two, -1206.84f, -583.2034f, 26.1738f, 311.4116f);
*state++;
break;
case 7:
if (!is_entity_aabb_in_angled_area(player_ped_id(), -1210.236f, -579.875f, 26.33215f, -1204.725f, -586.3573f, 29.56773f, 6f))
{
cleanup_vehicle(&akuma_handle_two);
*state++;
}
break;
case 8:
if (iLocal_218 == 0)
{
cleanup();
}
break;
}
}
void generate_mission_akuma(var uParam0, Vector3 vParam1, var uParam2)
{
*uParam0.imm_1 = create_vehicle(joaat("akuma"), vParam1, uParam2, 1, 1);
if (is_entity_alive(*uParam0.imm_1))
{
freeze_entity_position(*uParam0.imm_1, 1);
set_entity_collision(*uParam0.imm_1, 0, 0);
set_entity_visible(*uParam0.imm_1, 0);
set_vehicle_engine_on(*uParam0.imm_1, 0, 1);
*uParam0 = create_ped_inside_vehicle(*uParam0.imm_1, 26, get_entity_model(player_ped_id()), -1, 1, 1);
if (is_entity_alive(*uParam0))
{
set_blocking_of_non_temporary_events(*uParam0, 1);
set_entity_visible(*uParam0, 0);
stop_ped_speaking(*uParam0, 1);
}
}
}
void open_movie_studio(var uParam0)// 0
{
set_mf_control_flag(FLAG_MOVIE_STUDIO_OPEN, 1);
set_roads_back_to_original_in_angled_area(-1039.504f, -477.7876f, 35.32967f, -1062.444f, -469.5685f, 40.62086f, 13f);
set_building_data_item(DOOR_135, uParam0);
set_building_data_item(DOOR_136, uParam0);
set_roads_back_to_original_in_angled_area(-1039.504f, -477.7876f, 35.32967f, -1062.444f, -469.5685f, 40.62086f, 13f);
set_building_data_item(DOOR_137, uParam0);
set_building_data_item(DOOR_138, uParam0);
}
void set_building_data_item(int iParam0, var uParam1)
{
func_7(iParam0, uParam1);
set_bit(&Global_25765[iParam0 / 32], iParam0 % 32);
Global_26226[iParam0] = uParam1;
g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[iParam0] = uParam1;
}
void func_7(int iParam0, int iParam1)
{
int iVar0;
if (iParam0 != 225)
{
if (Global_59842)
{
iVar0 = Global_1338499.imm_61[iParam0];
}
else
{
iVar0 = g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[iParam0];
}
if (iVar0 != iParam1 || is_bit_set(Global_25756[iParam0 / 32], iParam0 % 32))
{
if ((((iParam1 == 4 || iParam1 == 3) || iParam1 == 5) || iParam1 == 6) || iParam1 == 2)
{
set_bit(&Global_25765[iParam0 / 32], iParam0 % 32);
Global_26226[iParam0] = iParam1;
}
else if (Global_59842)
{
Global_1338499.imm_61[iParam0] = iParam1;
}
else
{
g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[iParam0] = iParam1;
}
set_bit(&Global_25756[iParam0 / 32], iParam0 % 32);
func_9(iParam0);
if (is_bit_set(Global_25756[iParam0 / 32], iParam0 % 32))
{
func_8(iParam0);
}
}
}
}
void func_8(int iParam0)
{
if (!is_bit_set(Global_26687.imm_227[iParam0 / 32], iParam0 % 23))
{
set_bit(&Global_26687.imm_227[iParam0 / 32], iParam0 % 23);
Global_26687[Global_26687.imm_226] = iParam0;
Global_26687.imm_226++;
}
}
void func_9(int iParam0)
{
Struct<7> Var0;
bool bVar1;
bool bVar2;
int iVar3;
float fVar4;
int iVar5;
int iVar6;
bool bVar7;
int iVar8;
int iVar9;
if (!func_28())
{
return;
}
if (is_ped_injured(player_ped_id()))
{
return;
}
Var0 = {func_27(iParam0)};
if (is_bit_set(Var0.imm_4, 2))
{
set_door(iParam0, &Var0);
}
if (!unk_0x5AFCD8A1(Var0.imm_5))
{
if (is_cutscene_playing())
{
return;
}
}
bVar1 = false;
bVar2 = false;
fVar4 = get_distance_between_coords(Var0, get_entity_coords(player_ped_id(), 1), 1);
if ((is_bit_set(Global_25765[iParam0 / 32], iParam0 % 32) && Global_26226[iParam0] == 2) && fVar4 > 210f)
{
clear_bit(&Global_25765[iParam0 / 32], iParam0 % 32);
Global_25774[iParam0] = 0;
}
if (_GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT (1832807115) == 0)
{
if (is_bit_set(Global_26000[iParam0 / 32], iParam0 % 32))
{
if (fVar4 < 25f)
{
if (Global_80929.imm_288 == 0)
{
if (!is_entity_dead(player_ped_id()))
{
Global_80929.imm_288 = get_interior_from_entity(player_ped_id());
}
}
iVar5 = Global_80929.imm_288;
iVar6 = get_interior_at_coords(Var0);
if (iVar5 == iVar6 && iVar5 != 0)
{
set_bit(&Global_25765[iParam0 / 32], iParam0 % 32);
Global_26226[iParam0] = 3;
set_bit(&Global_25756[iParam0 / 32], iParam0 % 32);
}
}
clear_bit(&Global_26000[iParam0 / 32], iParam0 % 32);
}
}
if (is_bit_set(Global_25765[iParam0 / 32], iParam0 % 32))
{
iVar3 = Global_26226[iParam0];
}
else if (is_bit_set(Var0.imm_4, 0))
{
if (g_SAVE_DATA.imm_6711)
{
iVar3 = check_and_clear_flowlaunch_bit1(iParam0);
}
else
{
iVar3 = 0;
}
}
else if (is_bit_set(Var0.imm_4, 1) && _GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT (92439941) == 0)
{
if (check_and_clear_flowlaunch_bit0())
{
iVar3 = 0;
}
else
{
iVar3 = 1;
}
}
else
{
iVar3 = g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[iParam0];
}
if (Global_26452[iParam0] != iVar3)
{
bVar1 = true;
}
if (is_bit_set(Global_25756[iParam0 / 32], iParam0 % 32))
{
if (!is_bit_set(Global_25765[iParam0 / 32], iParam0 % 32) || (Global_25774[iParam0] == 0 && Global_26226[iParam0] != 2))
{
bVar1 = true;
}
}
if (bVar1)
{
if (!Global_25755)
{
}
else
{
if (!unk_0x5AFCD8A1(Var0.imm_5))
{
add_door_to_system(Var0.imm_5, Var0.imm_3, Var0, 0, 0, 0);
}
switch (iVar3)
{
case 1:
if (is_bit_set(Var0.imm_4, 3))
{
bVar7 = true;
}
else if (fVar4 > 3f || absf(unk_0xB74C3BD7(Var0.imm_5)) <= 0.015f)
{
iVar8 = get_interior_from_entity(player_ped_id());
iVar9 = get_interior_at_coords(Var0);
if (iVar8 != iVar9 || iVar8 == 0)
{
bVar7 = true;
}
}
if (bVar7)
{
if (Var0.imm_6 != 0f)
{
unk_0x47531446(Var0.imm_5, Var0.imm_6, 0, 0);
}
unk_0xDF83DB47(Var0.imm_5, iVar3, 0, 1);
bVar2 = true;
}
break;
case 4:
if (Var0.imm_6 != 0f)
{
unk_0x47531446(Var0.imm_5, Var0.imm_6, 0, 0);
}
unk_0xDF83DB47(Var0.imm_5, iVar3, 0, 1);
bVar2 = true;
break;
case 2:
if (Var0.imm_6 != 0f)
{
unk_0x47531446(Var0.imm_5, Var0.imm_6, 0, 0);
}
unk_0xDF83DB47(Var0.imm_5, iVar3, 0, 1);
bVar2 = true;
break;
case 0:
if (Var0.imm_6 != 0f)
{
unk_0x47531446(Var0.imm_5, Var0.imm_6, 0, 1);
}
unk_0xDF83DB47(Var0.imm_5, iVar3, 0, 1);
bVar2 = true;
break;
case 3:
if (Var0.imm_6 != 0f)
{
unk_0x47531446(Var0.imm_5, Var0.imm_6, 0, 0);
}
unk_0xDF83DB47(Var0.imm_5, 0, 0, 1);
bVar2 = true;
break;
case 5:
if (Var0.imm_6 != 0f)
{
unk_0x47531446(Var0.imm_5, Var0.imm_6, 0, 0);
}
unk_0xDF83DB47(Var0.imm_5, iVar3, 0, 1);
bVar2 = true;
break;
case 6:
if (Var0.imm_6 != 0f)
{
unk_0x47531446(Var0.imm_5, Var0.imm_6, 0, 0);
}
unk_0xDF83DB47(Var0.imm_5, iVar3, 0, 1);
bVar2 = true;
break;
default:
if (Var0.imm_6 != 0f)
{
unk_0x47531446(Var0.imm_5, Var0.imm_6, 0, 0);
}
unk_0xDF83DB47(Var0.imm_5, iVar3, 0, 1);
bVar2 = true;
break;
}
}
if (bVar2)
{
clear_bit(&Global_25756[iParam0 / 32], iParam0 % 32);
Global_26452[iParam0] = iVar3;
}
}
if (is_bit_set(Global_25765[iParam0 / 32], iParam0 % 32) && Global_26226[iParam0] != 2)
{
set_bit(&Global_25756[iParam0 / 32], iParam0 % 32);
func_8(iParam0);
if (Global_25774[iParam0] < 2)
{
Global_25774[iParam0]++;
}
}
}
bool check_and_clear_flowlaunch_bit0()
{
if (is_player_wanted_level_greater(player_id(), 0))
{
return false;
}
switch (get_current_ped())
{
case 0:
if (g_SAVE_DATA.imm_6711.MF_CONTROLS_STRUCT.imm_57[65])
{
return true;
}
break;
case 1:
if (g_SAVE_DATA.imm_6711.MF_CONTROLS_STRUCT.imm_57[66])
{
return true;
}
break;
case 2:
if (g_SAVE_DATA.imm_6711.MF_CONTROLS_STRUCT.imm_57[65])
{
return true;
}
break;
}
return false;
}
bool check_and_clear_flowlaunch_bit1(int iParam0)
{
int iVar0;
iVar0 = get_current_ped();
switch (iParam0)
{
case 38:
case 39:
case 40:
case 41:
case 42:
case 43:
case 44:
case 45:
case 46:
if (iVar0 == 0)
{
if (is_bit_set(g_SAVE_DATA.imm_4932[0], 0))
{
return false;
}
}
if (is_less_than_3(iVar0))
{
if (is_bit_set(Global_76792[0], iVar0))
{
if (iParam0 != 40)
{
return false;
}
else
{
return true;
}
}
}
break;
case 47:
case 48:
case 49:
if (iVar0 == 1)
{
if (is_bit_set(g_SAVE_DATA.imm_4932[5], 0))
{
return false;
}
}
if (is_less_than_3(iVar0))
{
if (is_bit_set(Global_76792[5], iVar0))
{
return false;
}
}
break;
case 50:
if (iVar0 == 1)
{
if (is_bit_set(g_SAVE_DATA.imm_4932[6], 0))
{
return false;
}
}
if (is_less_than_3(iVar0))
{
if (is_bit_set(Global_76792[6], iVar0))
{
return false;
}
}
break;
case 51:
case 52:
if (iVar0 == 2)
{
if (is_bit_set(g_SAVE_DATA.imm_4932[2], 0))
{
return false;
}
if (is_less_than_3(iVar0))
{
if (is_bit_set(Global_76792[2], iVar0))
{
return false;
}
}
}
else if (iVar0 == 0)
{
if (is_bit_set(g_SAVE_DATA.imm_4932[1], 0))
{
return false;
}
if (is_less_than_3(iVar0))
{
if (is_bit_set(Global_76792[1], iVar0))
{
return false;
}
}
}
break;
case 53:
if (iVar0 == 2)
{
if (is_bit_set(g_SAVE_DATA.imm_4932[3], 0))
{
return false;
}
}
if (is_less_than_3(iVar0))
{
if (is_bit_set(Global_76792[3], iVar0))
{
return false;
}
}
break;
default:
return false;
break;
}
return true;
}
bool is_less_than_3(int iParam0)
{
return iParam0 < 3;
}
void set_door(var uParam0, var uParam1)
{
var uVar0;
int iVar1;
if (!is_bit_set(*uParam1.imm_4, 2))
{
return;
}
uVar0 = check_and_clear_flowlaunch_bit6();
iVar1 = check_and_clear_flowlaunch_bit5(uVar0);
switch (uParam0)
{
case 133:
case 134:
case 201:
case 202:
if (check_and_clear_flowlaunch_bit4(uParam0))
{
if (iVar1 < 19)
{
if (iVar1 >= 7)
{
g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0] = 0;
unk_0xDF83DB47(*uParam1.imm_5, g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0], 1, 1);
}
}
else
{
return;
}
}
else if (iVar1 >= 19)
{
if (vdist(get_entity_coords(player_ped_id(), 0), *uParam1) >= 12f)
{
g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0] = 1;
unk_0xDF83DB47(*uParam1.imm_5, g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0], 1, 1);
}
}
else if (iVar1 < 7)
{
if (vdist(get_entity_coords(player_ped_id(), 0), *uParam1) >= 12f)
{
g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0] = 1;
unk_0xDF83DB47(*uParam1.imm_5, g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0], 1, 1);
}
}
break;
case 199:
case 200:
case 203:
case 204:
if (check_and_clear_flowlaunch_bit4(uParam0))
{
if (iVar1 < 18)
{
if (iVar1 >= 7)
{
g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0] = 0;
unk_0xDF83DB47(*uParam1.imm_5, g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0], 1, 1);
}
}
else
{
return;
}
}
else if (iVar1 >= 18)
{
if (vdist(get_entity_coords(player_ped_id(), 0), *uParam1) >= 12f)
{
g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0] = 1;
unk_0xDF83DB47(*uParam1.imm_5, g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0], 1, 1);
}
}
else if (iVar1 < 7)
{
if (vdist(get_entity_coords(player_ped_id(), 0), *uParam1) >= 12f)
{
g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0] = 1;
unk_0xDF83DB47(*uParam1.imm_5, g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0], 1, 1);
}
}
break;
case 141:
case 142:
if (check_and_clear_flowlaunch_bit4(uParam0))
{
if ((_GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT (1139079984) == 0 && _GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT (478649282) == 0) && !g_SAVE_DATA.imm_6711.MF_CONTROLS_STRUCT.imm_57[4])
{
if (iVar1 < 21)
{
if (iVar1 >= 7)
{
g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0] = 0;
unk_0xDF83DB47(*uParam1.imm_5, g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0], 1, 1);
}
}
else
{
return;
}
}
else if (!g_SAVE_DATA.imm_6711.MF_CONTROLS_STRUCT.imm_57[4])
{
g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0] = 0;
unk_0xDF83DB47(*uParam1.imm_5, g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0], 1, 1);
}
}
else if (g_SAVE_DATA.imm_6711.MF_CONTROLS_STRUCT.imm_57[4])
{
g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0] = 1;
unk_0xDF83DB47(*uParam1.imm_5, g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0], 1, 1);
}
else if (_GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT (1139079984) == 0 && _GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT (478649282) == 0)
{
if (iVar1 >= 21)
{
if (vdist(get_entity_coords(player_ped_id(), 0), *uParam1) >= 18f)
{
g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0] = 1;
unk_0xDF83DB47(*uParam1.imm_5, g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0], 1, 1);
}
}
else if (iVar1 < 7)
{
if (vdist(get_entity_coords(player_ped_id(), 0), *uParam1) >= 18f)
{
g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0] = 1;
unk_0xDF83DB47(*uParam1.imm_5, g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0], 1, 1);
}
}
}
break;
case 145:
case 146:
case 143:
case 144:
if (check_and_clear_flowlaunch_bit4(uParam0))
{
if (iVar1 < 20)
{
if (iVar1 >= 9)
{
g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0] = 0;
unk_0xDF83DB47(*uParam1.imm_5, g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0], 1, 1);
}
}
else
{
return;
}
}
else if (iVar1 >= 20)
{
if (vdist(get_entity_coords(player_ped_id(), 0), *uParam1) >= 40f)
{
g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0] = 1;
unk_0xDF83DB47(*uParam1.imm_5, g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0], 1, 1);
}
}
else if (iVar1 < 9)
{
if (vdist(get_entity_coords(player_ped_id(), 0), *uParam1) >= 40f)
{
g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0] = 1;
unk_0xDF83DB47(*uParam1.imm_5, g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0], 1, 1);
}
}
break;
case 147:
case 148:
if (!check_and_clear_flowlaunch_bit4(uParam0))
{
g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0] = 1;
unk_0xDF83DB47(*uParam1.imm_5, g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0], 1, 1);
}
break;
case 152:
case 153:
case 154:
case 155:
case 156:
case 157:
if (!check_and_clear_flowlaunch_bit4(uParam0))
{
if (_GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT (-1802680602) == 0)
{
g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0] = 1;
unk_0xDF83DB47(*uParam1.imm_5, g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0], 1, 1);
}
}
else if (_GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT (-1802680602) > 0)
{
g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0] = 0;
unk_0xDF83DB47(*uParam1.imm_5, g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0], 1, 1);
}
break;
case 158:
case 159:
if (_GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT (Global_72553[70 <34>].imm_6) == 0)
{
if (!check_and_clear_flowlaunch_bit4(uParam0))
{
g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0] = 1;
unk_0xDF83DB47(*uParam1.imm_5, g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0], 1, 1);
}
}
break;
case 160:
case 161:
if (_GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT (1723330028) == 0)
{
if (!check_and_clear_flowlaunch_bit4(uParam0))
{
g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0] = 1;
unk_0xDF83DB47(*uParam1.imm_5, g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0], 1, 1);
}
}
break;
case 70:
case 71:
case 72:
if (!check_and_clear_flowlaunch_bit4(uParam0) && _GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT (Global_72553[26 <34>].imm_6) == 0)
{
g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0] = 1;
unk_0xDF83DB47(*uParam1.imm_5, g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0], 1, 1);
}
else
{
return;
}
break;
case 101:
case 102:
case 103:
case 104:
if (!check_and_clear_flowlaunch_bit4(uParam0))
{
if (_GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT (Global_72553[43 <34>].imm_6) == 0)
{
g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0] = 1;
unk_0xDF83DB47(*uParam1.imm_5, g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0], 1, 1);
}
}
else
{
return;
}
break;
case 190:
case 191:
if (!check_and_clear_flowlaunch_bit4(uParam0))
{
g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0] = 1;
unk_0xDF83DB47(*uParam1.imm_5, g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0], 1, 1);
}
break;
case 193:
if (!check_and_clear_flowlaunch_bit4(uParam0))
{
if (_GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT (Global_72553[93 <34>].imm_6) > 0)
{
g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0] = 1;
unk_0xDF83DB47(*uParam1.imm_5, g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0], 1, 1);
}
}
else
{
return;
}
break;
case 198:
if (!check_and_clear_flowlaunch_bit4(uParam0))
{
g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0] = 1;
unk_0xDF83DB47(*uParam1.imm_5, g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0], 1, 1);
}
break;
case 80:
if (!check_and_clear_flowlaunch_bit4(uParam0))
{
if (_GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT (Global_72553[8 <34>].imm_6) == 0 && _GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT (Global_72553[10 <34>].imm_6) == 0)
{
g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0] = 1;
unk_0xDF83DB47(*uParam1.imm_5, g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0], 1, 1);
}
}
else
{
return;
}
break;
case 205:
case 206:
if (!check_and_clear_flowlaunch_bit4(uParam0))
{
if (_GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT (Global_72553[47 <34>].imm_6) == 0)
{
g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0] = 1;
unk_0xDF83DB47(*uParam1.imm_5, g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0], 1, 1);
}
}
else
{
return;
}
break;
case 207:
if (_GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT (Global_72553[70 <34>].imm_6) == 0)
{
if (!check_and_clear_flowlaunch_bit4(uParam0))
{
g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0] = 1;
unk_0xDF83DB47(*uParam1.imm_5, g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0], 1, 1);
}
}
break;
case 208:
case 209:
case 211:
case 210:
case 212:
case 213:
case 214:
case 215:
if (_GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT (Global_72553[48 <34>].imm_6) == 0)
{
if (!check_and_clear_flowlaunch_bit4(uParam0))
{
g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0] = 1;
unk_0xDF83DB47(*uParam1.imm_5, g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0], 1, 1);
}
}
break;
case 99:
case 100:
if (_GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT (Global_72553[39 <34>].imm_6) == 0)
{
if (!check_and_clear_flowlaunch_bit4(uParam0))
{
g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0] = 1;
unk_0xDF83DB47(*uParam1.imm_5, g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0], 1, 1);
}
}
break;
case 216:
if (!check_and_clear_flowlaunch_bit4(uParam0))
{
g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0] = 1;
unk_0xDF83DB47(*uParam1.imm_5, g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0], 1, 1);
}
break;
case 217:
case 218:
if (!check_and_clear_flowlaunch_bit4(uParam0))
{
g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0] = 1;
unk_0xDF83DB47(*uParam1.imm_5, g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0], 1, 1);
}
break;
case 219:
case 220:
case 221:
case 222:
if (check_and_clear_flowlaunch_bit4(uParam0))
{
g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0] = 0;
unk_0xDF83DB47(*uParam1.imm_5, g_SAVE_DATA.BUILDING_SAVED_DATA_STRUCT[uParam0], 1, 1);
}
break;
}
}
bool check_and_clear_flowlaunch_bit4(var uParam0)
{
Struct<7> Var0;
int iVar1;
Var0 = {func_27(uParam0)};
iVar1 = unk_0xD42A41C2(Var0.imm_5);
return ((iVar1 == 1 || iVar1 == 4) || iVar1 == 2);
}
int check_and_clear_flowlaunch_bit5(var uParam0)
{
return shift_right(uParam0, 9) & 31;
}
var check_and_clear_flowlaunch_bit6()
{
var uVar0;
func_26(&uVar0, get_clock_seconds());
func_25(&uVar0, get_clock_minutes());
func_24(&uVar0, get_clock_hours());
check_and_clear_flowlaunch_bit9(&uVar0, get_clock_day_of_month());
check_and_clear_flowlaunch_bit8(&uVar0, get_clock_month());
check_and_clear_flowlaunch_bit7(&uVar0, get_clock_year());
return uVar0;
}
void check_and_clear_flowlaunch_bit7(var uParam0, int iParam1)
{
if (iParam1 <= 0)
{
return;
}
if (iParam1 > 2043 || iParam1 < 1979)
{
return;
}
*uParam0 -= *uParam0 & 2080374784;
if (iParam1 < 2011)
{
*uParam0 = (*uParam0 || shift_left(2011 - iParam1, 26));
*uParam0 |= -2147483648;
}
else
{
*uParam0 = (*uParam0 || shift_left(iParam1 - 2011, 26));
*uParam0 -= *uParam0 & -2147483648;
}
}
void check_and_clear_flowlaunch_bit8(var uParam0, int iParam1)
{
if (iParam1 < 0 || iParam1 > 11)
{
return;
}
*uParam0 -= *uParam0 & 15;
*uParam0 = (*uParam0 || iParam1);
}
void check_and_clear_flowlaunch_bit9(var uParam0, int iParam1)
{
var uVar0;
var uVar1;
uVar0 = func_23(*uParam0);
uVar1 = func_21(*uParam0);
if (iParam1 < 1 || iParam1 > func_20(uVar0, uVar1))
{
return;
}
*uParam0 -= *uParam0 & 496;
*uParam0 = (*uParam0 || shift_left(iParam1, 4));
}
int func_20(var uParam0, int iParam1)
{
if (iParam1 < 0)
{
iParam1 = 0;
}
switch (uParam0)
{
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;
}
var func_21(var uParam0)
{
return shift_right(uParam0, 26) & 31 * func_22(is_bit_set(uParam0, 31), -1, 1) + 2011;
}
var func_22(bool bParam0, var uParam1, var uParam2)
{
if (bParam0)
{
return uParam1;
}
return uParam2;
}
int func_23(var uParam0)
{
return uParam0 & 15;
}
void func_24(var uParam0, int iParam1)
{
if (iParam1 < 0 || iParam1 > 23)
{
return;
}
*uParam0 -= *uParam0 & 15872;
*uParam0 = (*uParam0 || shift_left(iParam1, 9));
}
void func_25(var uParam0, int iParam1)
{
if (iParam1 < 0 || iParam1 >= 60)
{
return;
}
*uParam0 -= *uParam0 & 1032192;
*uParam0 = (*uParam0 || shift_left(iParam1, 14));
}
void func_26(var uParam0, int iParam1)
{
if (iParam1 < 0 || iParam1 >= 60)
{
return;
}
*uParam0 -= *uParam0 & 66060288;
*uParam0 = (*uParam0 || shift_left(iParam1, 20));
}
struct<7> func_27(var uParam0)
{
Struct<7> Var0;
switch (uParam0)
{
case 0:
Var0.imm_3 = joaat("v_ilev_bs_door");
Var0 = {133f, -1711f, 29f};
Var0.imm_5 = 1804701345;
break;
case 1:
Var0.imm_3 = joaat("v_ilev_bs_door");
Var0 = {-1287.857f, -1115.742f, 7.1401f};
Var0.imm_5 = 1403601067;
break;
case 2:
Var0.imm_3 = joaat("v_ilev_bs_door");
Var0 = {1932.952f, 3725.154f, 32.9944f};
Var0.imm_5 = -2031139496;
break;
case 3:
Var0.imm_3 = joaat("v_ilev_bs_door");
Var0 = {1207.873f, -470.063f, 66.358f};
Var0.imm_5 = 1796834809;
break;
case 4:
Var0.imm_3 = joaat("v_ilev_bs_door");
Var0 = {-29.8692f, -148.1571f, 57.2265f};
Var0.imm_5 = 96153298;
break;
case 5:
Var0.imm_3 = joaat("v_ilev_bs_door");
Var0 = {-280.7851f, 6232.782f, 31.8455f};
Var0.imm_5 = -281080954;
break;
case 6:
Var0.imm_3 = joaat("v_ilev_hd_door_l");
Var0 = {-824f, -187f, 38f};
Var0.imm_5 = 183249434;
break;
case 7:
Var0.imm_3 = joaat("v_ilev_hd_door_r");
Var0 = {-823f, -188f, 38f};
Var0.imm_5 = 758345384;
break;
case 8:
Var0.imm_3 = joaat("v_ilev_cs_door01");
Var0 = {82.3186f, -1392.752f, 29.5261f};
Var0.imm_5 = -1069262641;
break;
case 9:
Var0.imm_3 = joaat("v_ilev_cs_door01_r");
Var0 = {82.3186f, -1390.476f, 29.5261f};
Var0.imm_5 = 1968521986;
break;
case 10:
Var0.imm_3 = joaat("v_ilev_cs_door01");
Var0 = {1686.983f, 4821.741f, 42.2131f};
Var0.imm_5 = -2143706301;
break;
case 11:
Var0.imm_3 = joaat("v_ilev_cs_door01_r");
Var0 = {1687.282f, 4819.484f, 42.2131f};
Var0.imm_5 = -1403421822;
break;
case 12:
Var0.imm_3 = joaat("v_ilev_cs_door01");
Var0 = {418.637f, -806.457f, 29.6396f};
Var0.imm_5 = -1950137670;
break;
case 13:
Var0.imm_3 = joaat("v_ilev_cs_door01_r");
Var0 = {418.637f, -808.733f, 29.6396f};
Var0.imm_5 = 1226259807;
break;
case 14:
Var0.imm_3 = joaat("v_ilev_cs_door01");
Var0 = {-1096.661f, 2705.446f, 19.2578f};
Var0.imm_5 = 1090833557;
break;
case 15:
Var0.imm_3 = joaat("v_ilev_cs_door01_r");
Var0 = {-1094.965f, 2706.964f, 19.2578f};
Var0.imm_5 = 897332612;
break;
case 16:
Var0.imm_3 = joaat("v_ilev_cs_door01");
Var0 = {1196.825f, 2703.221f, 38.3726f};
Var0.imm_5 = 1095946640;
break;
case 17:
Var0.imm_3 = joaat("v_ilev_cs_door01_r");
Var0 = {1199.101f, 2703.221f, 38.3726f};
Var0.imm_5 = 801975945;
break;
case 18:
Var0.imm_3 = joaat("v_ilev_cs_door01");
Var0 = {-818.7642f, -1079.544f, 11.4781f};
Var0.imm_5 = -167996547;
break;
case 19:
Var0.imm_3 = joaat("v_ilev_cs_door01_r");
Var0 = {-816.7932f, -1078.406f, 11.4781f};
Var0.imm_5 = -1935818563;
break;
case 20:
Var0.imm_3 = joaat("v_ilev_cs_door01");
Var0 = {-0.0564f, 6517.461f, 32.0278f};
Var0.imm_5 = 1891185217;
break;
case 21:
Var0.imm_3 = joaat("v_ilev_cs_door01_r");
Var0 = {-1.7253f, 6515.914f, 32.0278f};
Var0.imm_5 = 1236591681;
break;
case 22:
Var0.imm_3 = joaat("v_ilev_clothmiddoor");
Var0 = {-1201.435f, -776.8566f, 17.9918f};
Var0.imm_5 = 1980808685;
break;
case 23:
Var0.imm_3 = joaat("v_ilev_clothmiddoor");
Var0 = {617.2458f, 2751.022f, 42.7578f};
Var0.imm_5 = 1352749757;
break;
case 24:
Var0.imm_3 = joaat("v_ilev_clothmiddoor");
Var0 = {127.8201f, -211.8274f, 55.2275f};
Var0.imm_5 = -566554453;
break;
case 25:
Var0.imm_3 = joaat("v_ilev_clothmiddoor");
Var0 = {-3167.75f, 1055.536f, 21.5329f};
Var0.imm_5 = 1284749450;
break;
case 26:
Var0.imm_3 = joaat("v_ilev_ch_glassdoor");
Var0 = {-716.6754f, -155.42f, 37.6749f};
Var0.imm_5 = 261851994;
break;
case 27:
Var0.imm_3 = joaat("v_ilev_ch_glassdoor");
Var0 = {-715.6154f, -157.2561f, 37.6749f};
Var0.imm_5 = 217646625;
break;
case 28:
Var0.imm_3 = joaat("v_ilev_ch_glassdoor");
Var0 = {-157.0924f, -306.4413f, 39.994f};
Var0.imm_5 = 1801139578;
break;
case 29:
Var0.imm_3 = joaat("v_ilev_ch_glassdoor");
Var0 = {-156.4022f, -304.4366f, 39.994f};
Var0.imm_5 = -2123275866;
break;
case 30:
Var0.imm_3 = joaat("v_ilev_ch_glassdoor");
Var0 = {-1454.782f, -231.7927f, 50.0565f};
Var0.imm_5 = 1312689981;
break;
case 31:
Var0.imm_3 = joaat("v_ilev_ch_glassdoor");
Var0 = {-1456.201f, -233.3682f, 50.0565f};
Var0.imm_5 = -595055661;
break;
case 32:
Var0.imm_3 = joaat("v_ilev_ta_door");
Var0 = {321.81f, 178.36f, 103.68f};
Var0.imm_5 = -265260897;
break;
case 33:
Var0.imm_3 = -1212951353;
Var0 = {1859.89f, 3749.79f, 33.18f};
Var0.imm_5 = -1284867488;
break;
case 34:
Var0.imm_3 = -1212951353;
Var0 = {-289.1752f, 6199.112f, 31.637f};
Var0.imm_5 = 302307081;
break;
case 35:
Var0.imm_3 = joaat("v_ilev_ta_door");
Var0 = {-1155.454f, -1424.008f, 5.0461f};
Var0.imm_5 = -681886015;
break;
case 36:
Var0.imm_3 = joaat("v_ilev_ta_door");
Var0 = {1321.286f, -1650.597f, 52.3663f};
Var0.imm_5 = -2086556500;
break;
case 37:
Var0.imm_3 = joaat("v_ilev_ta_door");
Var0 = {-3167.789f, 1074.767f, 20.9209f};
Var0.imm_5 = -1496386696;
break;
case 38:
Var0.imm_3 = joaat("v_ilev_mm_doorm_l");
Var0 = {-817f, 179f, 73f};
set_bit(&Var0.imm_4, 0);
Var0.imm_5 = -2097039789;
break;
case 39:
Var0.imm_3 = joaat("v_ilev_mm_doorm_r");
Var0 = {-816f, 178f, 73f};
set_bit(&Var0.imm_4, 0);
Var0.imm_5 = -2127416656;
break;
case 40:
Var0.imm_3 = joaat("prop_ld_garaged_01");
Var0 = {-815f, 186f, 73f};
set_bit(&Var0.imm_4, 0);
Var0.imm_5 = -1986583853;
Var0.imm_6 = 6.5f;
break;
case 41:
Var0.imm_3 = joaat("prop_bh1_48_backdoor_l");
Var0 = {-797f, 177f, 73f};
set_bit(&Var0.imm_4, 0);
Var0.imm_5 = 776026812;
break;
case 42:
Var0.imm_3 = joaat("prop_bh1_48_backdoor_r");
Var0 = {-795f, 178f, 73f};
set_bit(&Var0.imm_4, 0);
Var0.imm_5 = 698422331;
break;
case 43:
Var0.imm_3 = joaat("prop_bh1_48_backdoor_l");
Var0 = {-793f, 181f, 73f};
set_bit(&Var0.imm_4, 0);
Var0.imm_5 = 535076355;
break;
case 44:
Var0.imm_3 = joaat("prop_bh1_48_backdoor_r");
Var0 = {-794f, 183f, 73f};
set_bit(&Var0.imm_4, 0);
Var0.imm_5 = 474675599;
break;
case 45:
Var0.imm_3 = joaat("prop_bh1_48_gate_1");
Var0 = {-849f, 179f, 70f};
set_bit(&Var0.imm_4, 0);
Var0.imm_5 = -1978427516;
break;
case 46:
Var0.imm_3 = joaat("v_ilev_mm_windowwc");
Var0 = {-802.7333f, 167.5041f, 77.5824f};
set_bit(&Var0.imm_4, 0);
Var0.imm_5 = -1700375831;
break;
case 47:
Var0.imm_3 = joaat("v_ilev_fa_frontdoor");
Var0 = {-14f, -1441f, 31f};
set_bit(&Var0.imm_4, 0);
Var0.imm_5 = 613961892;
break;
case 48:
Var0.imm_3 = joaat("v_ilev_fh_frntdoor");
Var0 = {-15f, -1427f, 31f};
set_bit(&Var0.imm_4, 0);
Var0.imm_5 = -272570634;
break;
case 49:
Var0.imm_3 = joaat("prop_sc1_21_g_door_01");
Var0 = {-25.28f, -1431.06f, 30.84f};
set_bit(&Var0.imm_4, 0);
Var0.imm_5 = -1040675994;
break;
case 50:
Var0.imm_3 = joaat("v_ilev_fh_frontdoor");
Var0 = {7.52f, 539.53f, 176.18f};
set_bit(&Var0.imm_4, 0);
Var0.imm_5 = 1201219326;
break;
case 51:
Var0.imm_3 = joaat("v_ilev_trevtraildr");
Var0 = {1973f, 3815f, 34f};
set_bit(&Var0.imm_4, 0);
Var0.imm_5 = 1736361794;
break;
case 52:
Var0.imm_3 = joaat("prop_cs4_10_tr_gd_01");
Var0 = {1972.787f, 3824.554f, 32.5831f};
Var0.imm_5 = 1113956670;
Var0.imm_6 = 12f;
break;
case 53:
Var0.imm_3 = joaat("v_ilev_trev_doorfront");
Var0 = {-1150f, -1521f, 11f};
set_bit(&Var0.imm_4, 0);
Var0.imm_5 = -1361617046;
break;
}
switch (uParam0)
{
case 54:
Var0.imm_3 = joaat("prop_com_ls_door_01");
Var0 = {-1145.9f, -1991.14f, 14.18f};
Var0.imm_5 = -1871080926;
Var0.imm_6 = 25f;
break;
case 55:
Var0.imm_3 = joaat("prop_id2_11_gdoor");
Var0 = {723.12f, -1088.83f, 23.28f};
Var0.imm_5 = 1168079979;
Var0.imm_6 = 25f;
break;
case 56:
Var0.imm_3 = joaat("prop_com_ls_door_01");
Var0 = {-356.09f, -134.77f, 40.01f};
Var0.imm_5 = 1206354175;
Var0.imm_6 = 25f;
break;
case 57:
Var0.imm_3 = joaat("v_ilev_carmod3door");
Var0 = {108.8502f, 6617.876f, 32.673f};
Var0.imm_5 = -1038180727;
Var0.imm_6 = 25f;
break;
case 58:
Var0.imm_3 = joaat("v_ilev_carmod3door");
Var0 = {114.3206f, 6623.226f, 32.7161f};
Var0.imm_5 = 1200466273;
Var0.imm_6 = 25f;
break;
case 59:
Var0.imm_3 = joaat("v_ilev_carmod3door");
Var0 = {1182.305f, 2645.242f, 38.807f};
Var0.imm_5 = 1391004277;
Var0.imm_6 = 25f;
break;
case 60:
Var0.imm_3 = joaat("v_ilev_carmod3door");
Var0 = {1174.654f, 2645.242f, 38.6826f};
Var0.imm_5 = -459199009;
Var0.imm_6 = 25f;
break;
case 61:
Var0.imm_3 = joaat("v_ilev_janitor_frontdoor");
Var0 = {-107.5401f, -9.0258f, 70.6696f};
Var0.imm_5 = -252283844;
break;
case 62:
Var0.imm_3 = joaat("v_ilev_ss_door8");
Var0 = {717f, -975f, 25f};
Var0.imm_5 = -826072862;
break;
case 63:
Var0.imm_3 = joaat("v_ilev_ss_door7");
Var0 = {719f, -975f, 25f};
Var0.imm_5 = 763780711;
break;
case 64:
Var0.imm_3 = joaat("v_ilev_ss_door02");
Var0 = {709.9813f, -963.5311f, 30.5453f};
Var0.imm_5 = -874851305;
break;
case 65:
Var0.imm_3 = joaat("v_ilev_ss_door03");
Var0 = {709.9894f, -960.6675f, 30.5453f};
Var0.imm_5 = -1480820165;
break;
case 66:
Var0.imm_3 = joaat("v_ilev_store_door");
Var0 = {707.8046f, -962.4564f, 30.5453f};
Var0.imm_5 = 949391213;
break;
case 67:
Var0.imm_3 = -1212951353;
Var0 = {1393f, 3599f, 35f};
Var0.imm_5 = 212192855;
break;
case 68:
Var0.imm_3 = -1212951353;
Var0 = {1395f, 3600f, 35f};
Var0.imm_5 = -126474752;
break;
case 69:
Var0.imm_3 = joaat("v_ilev_ss_door04");
Var0 = {1387f, 3614f, 39f};
Var0.imm_5 = 1765671336;
break;
case 70:
Var0.imm_3 = joaat("prop_ron_door_01");
Var0 = {1083.547f, -1975.435f, 31.6222f};
Var0.imm_5 = 792295685;
set_bit(&Var0.imm_4, 2);
break;
case 71:
Var0.imm_3 = joaat("prop_ron_door_01");
Var0 = {1065.237f, -2006.079f, 32.2329f};
Var0.imm_5 = 563273144;
set_bit(&Var0.imm_4, 2);
break;
case 72:
Var0.imm_3 = joaat("prop_ron_door_01");
Var0 = {1085.307f, -2018.561f, 41.6289f};
Var0.imm_5 = -726993043;
set_bit(&Var0.imm_4, 2);
break;
case 73:
Var0.imm_3 = joaat("v_ilev_bank4door02");
Var0 = {-111f, 6464f, 32f};
Var0.imm_5 = 178228075;
break;
case 74:
Var0.imm_3 = joaat("v_ilev_bank4door01");
Var0 = {-110f, 6462f, 32f};
Var0.imm_5 = 1852297978;
break;
case 75:
Var0.imm_3 = joaat("v_ilev_lester_doorfront");
Var0 = {1274f, -1721f, 55f};
Var0.imm_5 = -565026078;
break;
case 76:
Var0.imm_3 = joaat("v_ilev_lester_doorveranda");
Var0 = {1271.89f, -1707.57f, 53.79f};
Var0.imm_5 = 1646172266;
break;
case 77:
Var0.imm_3 = joaat("v_ilev_lester_doorveranda");
Var0 = {1270.77f, -1708.1f, 53.75f};
Var0.imm_5 = 204467342;
break;
case 78:
Var0.imm_3 = joaat("v_ilev_deviantfrontdoor");
Var0 = {-127.5f, -1456.18f, 37.94f};
Var0.imm_5 = 2047070410;
break;
case 79:
Var0.imm_3 = joaat("prop_com_gar_door_01");
Var0 = {483.56f, -1316.08f, 32.18f};
Var0.imm_5 = 1417775309;
break;
case 80:
Var0.imm_3 = joaat("v_ilev_cs_door");
Var0 = {483f, -1312f, 29f};
Var0.imm_5 = -106474626;
set_bit(&Var0.imm_4, 2);
break;
case 81:
Var0.imm_3 = joaat("prop_strip_door_01");
Var0 = {128f, -1299f, 29f};
Var0.imm_5 = 1840510598;
break;
case 82:
Var0.imm_3 = joaat("prop_magenta_door");
Var0 = {96f, -1285f, 29f};
Var0.imm_5 = 1382825971;
break;
case 83:
Var0.imm_3 = joaat("prop_motel_door_09");
Var0 = {549f, -1773f, 34f};
Var0.imm_5 = 232536303;
break;
case 84:
Var0.imm_3 = joaat("v_ilev_gangsafedoor");
Var0 = {974f, -1839f, 36f};
Var0.imm_5 = 1267246609;
set_bit(&Var0.imm_4, 3);
break;
case 85:
Var0.imm_3 = joaat("v_ilev_gangsafedoor");
Var0 = {977f, -105f, 75f};
Var0.imm_5 = -1900237971;
set_bit(&Var0.imm_4, 3);
break;
case 86:
Var0.imm_3 = joaat("v_ilev_ra_door1_l");
Var0 = {1391f, 1163f, 114f};
Var0.imm_5 = 2077901353;
break;
case 87:
Var0.imm_3 = joaat("v_ilev_ra_door1_r");
Var0 = {1391f, 1161f, 114f};
Var0.imm_5 = -2102079126;
break;
case 88:
Var0.imm_3 = joaat("prop_cs6_03_door_l");
Var0 = {1396f, 1143f, 115f};
Var0.imm_5 = -1905793212;
break;
case 89:
Var0.imm_3 = joaat("prop_cs6_03_door_r");
Var0 = {1396f, 1141f, 115f};
Var0.imm_5 = -1797032505;
break;
case 90:
Var0.imm_3 = joaat("v_ilev_ra_door1_l");
Var0 = {1409f, 1146f, 114f};
Var0.imm_5 = -62235167;
break;
case 91:
Var0.imm_3 = joaat("v_ilev_ra_door1_r");
Var0 = {1409f, 1148f, 114f};
Var0.imm_5 = -1727188163;
break;
case 92:
Var0.imm_3 = joaat("v_ilev_ra_door1_l");
Var0 = {1408f, 1159f, 114f};
Var0.imm_5 = -562748873;
break;
case 93:
Var0.imm_3 = joaat("v_ilev_ra_door1_r");
Var0 = {1408f, 1161f, 114f};
Var0.imm_5 = 1976429759;
break;
case 94:
Var0.imm_3 = joaat("prop_gar_door_01");
Var0 = {-1067f, -1666f, 5f};
Var0.imm_5 = 1341041543;
break;
case 95:
Var0.imm_3 = joaat("prop_gar_door_02");
Var0 = {-1065f, -1669f, 5f};
Var0.imm_5 = -1631467220;
break;
case 96:
Var0.imm_3 = joaat("prop_map_door_01");
Var0 = {-1104.66f, -1638.48f, 4.68f};
Var0.imm_5 = -1788473129;
break;
case 97:
Var0.imm_3 = joaat("v_ilev_fib_door1");
Var0 = {-31.72f, -1101.85f, 26.57f};
Var0.imm_5 = -1831288286;
break;
case 98:
Var0.imm_3 = joaat("v_ilev_tort_door");
Var0 = {134.4f, -2204.1f, 7.52f};
Var0.imm_5 = 963876966;
break;
case 99:
Var0.imm_3 = joaat("v_ilev_bl_shutter2");
Var0 = {3628f, 3747f, 28f};
Var0.imm_5 = 1773088812;
set_bit(&Var0.imm_4, 2);
break;
case 100:
Var0.imm_3 = joaat("v_ilev_bl_shutter2");
Var0 = {3621f, 3752f, 28f};
Var0.imm_5 = -1332101528;
set_bit(&Var0.imm_4, 2);
break;
case 101:
Var0.imm_3 = joaat("v_ilev_rc_door3_l");
Var0 = {-608.73f, -1610.32f, 27.16f};
Var0.imm_5 = -1811763714;
set_bit(&Var0.imm_4, 2);
break;
case 102:
Var0.imm_3 = joaat("v_ilev_rc_door3_r");
Var0 = {-611.32f, -1610.09f, 27.16f};
Var0.imm_5 = 1608500665;
set_bit(&Var0.imm_4, 2);
break;
case 103:
Var0.imm_3 = joaat("v_ilev_rc_door3_l");
Var0 = {-592.94f, -1631.58f, 27.16f};
Var0.imm_5 = -1456048340;
set_bit(&Var0.imm_4, 2);
break;
case 104:
Var0.imm_3 = joaat("v_ilev_rc_door3_r");
Var0 = {-592.71f, -1628.99f, 27.16f};
Var0.imm_5 = 943854909;
set_bit(&Var0.imm_4, 2);
break;
case 105:
Var0.imm_3 = joaat("v_ilev_ss_door04");
Var0 = {1991f, 3053f, 47f};
Var0.imm_5 = -89065356;
break;
case 106:
Var0.imm_3 = 479144380;
Var0 = {1988.353f, 3054.411f, 47.3204f};
Var0.imm_5 = -925491840;
break;
case 107:
Var0.imm_3 = joaat("prop_epsilon_door_l");
Var0 = {-700.17f, 47.31f, 44.3f};
Var0.imm_5 = 1999872275;
break;
case 108:
Var0.imm_3 = joaat("prop_epsilon_door_r");
Var0 = {-697.94f, 48.35f, 44.3f};
Var0.imm_5 = 1999872275;
break;
case 109:
Var0.imm_3 = joaat("v_ilev_cm_door1");
Var0 = {241.3574f, 361.0488f, 105.8963f};
Var0.imm_5 = 1538555582;
break;
case 110:
Var0.imm_3 = joaat("prop_ch2_09c_garage_door");
Var0 = {-689.11f, 506.97f, 110.64f};
Var0.imm_5 = -961994186;
break;
case 111:
Var0.imm_3 = joaat("v_ilev_door_orangesolid");
Var0 = {-1055.96f, -236.43f, 44.17f};
Var0.imm_5 = -1772472848;
break;
case 112:
Var0.imm_3 = joaat("prop_magenta_door");
Var0 = {29f, 3661f, 41f};
Var0.imm_5 = -46374650;
break;
case 113:
Var0.imm_3 = joaat("prop_cs4_05_tdoor");
Var0 = {32f, 3667f, 41f};
Var0.imm_5 = -358302761;
break;
case 114:
Var0.imm_3 = joaat("v_ilev_housedoor1");
Var0 = {87f, -1959f, 21f};
Var0.imm_5 = -1237936041;
break;
case 115:
Var0.imm_3 = joaat("v_ilev_fh_frntdoor");
Var0 = {0f, -1823f, 30f};
Var0.imm_5 = 1487374207;
break;
case 116:
Var0.imm_3 = joaat("p_cut_door_03");
Var0 = {23.34f, -1897.6f, 23.05f};
Var0.imm_5 = -199126299;
break;
case 117:
Var0.imm_3 = joaat("p_cut_door_02");
Var0 = {524.2f, 3081.14f, 41.16f};
Var0.imm_5 = -897071863;
break;
case 118:
Var0.imm_3 = joaat("v_ilev_po_door");
Var0 = {-1910.58f, -576.01f, 19.25f};
Var0.imm_5 = -864465775;
break;
case 119:
Var0.imm_3 = joaat("prop_ss1_10_door_l");
Var0 = {-720.39f, 256.86f, 80.29f};
Var0.imm_5 = -208439480;
break;
case 120:
Var0.imm_3 = joaat("prop_ss1_10_door_r");
Var0 = {-718.42f, 257.79f, 80.29f};
Var0.imm_5 = -1001088805;
break;
case 121:
Var0.imm_3 = joaat("v_ilev_fibl_door02");
Var0 = {106.38f, -742.7f, 46.18f};
Var0.imm_5 = 756894459;
break;
case 122:
Var0.imm_3 = joaat("v_ilev_fibl_door01");
Var0 = {105.76f, -746.65f, 46.18f};
Var0.imm_5 = 476981677;
break;
case 123:
Var0.imm_3 = joaat("v_ilev_ct_door01");
Var0 = {-2343.53f, 3265.37f, 32.96f};
Var0.imm_5 = 2081647379;
break;
case 124:
Var0.imm_3 = joaat("v_ilev_ct_door01");
Var0 = {-2342.23f, 3267.62f, 32.96f};
Var0.imm_5 = 2081647379;
break;
case 125:
Var0.imm_3 = joaat("ap1_02_door_l");
Var0 = {-1041.933f, -2748.167f, 22.0308f};
Var0.imm_5 = 169965357;
break;
case 126:
Var0.imm_3 = joaat("ap1_02_door_r");
Var0 = {-1044.841f, -2746.489f, 22.0308f};
Var0.imm_5 = 311232516;
break;
case 128:
Var0.imm_3 = joaat("v_ilev_fb_doorshortl");
Var0 = {-1045.12f, -232.004f, 39.4379f};
Var0.imm_5 = -1563127729;
break;
case 129:
Var0.imm_3 = joaat("v_ilev_fb_doorshortr");
Var0 = {-1046.516f, -229.3581f, 39.4379f};
Var0.imm_5 = 759145763;
break;
case 130:
Var0.imm_3 = joaat("v_ilev_fb_door01");
Var0 = {-1083.62f, -260.4167f, 38.1867f};
Var0.imm_5 = -84399179;
break;
case 131:
Var0.imm_3 = joaat("v_ilev_fb_door02");
Var0 = {-1080.974f, -259.0204f, 38.1867f};
Var0.imm_5 = -461898059;
break;
case 127:
Var0.imm_3 = joaat("v_ilev_gtdoor");
Var0 = {-1042.57f, -240.6f, 38.11f};
Var0.imm_5 = 1259065971;
break;
case 132:
Var0.imm_3 = joaat("prop_damdoor_01");
Var0 = {1385.258f, -2079.949f, 52.7638f};
Var0.imm_5 = -884051216;
break;
case 133:
Var0.imm_3 = joaat("v_ilev_genbankdoor2");
Var0 = {1656.57f, 4849.66f, 42.35f};
Var0.imm_5 = 243782214;
set_bit(&Var0.imm_4, 2);
break;
case 134:
Var0.imm_3 = joaat("v_ilev_genbankdoor1");
Var0 = {1656.25f, 4852.24f, 42.35f};
Var0.imm_5 = 714115627;
set_bit(&Var0.imm_4, 2);
break;
case 135:
Var0.imm_3 = -1184516519;
Var0 = {-1051.402f, -474.6847f, 36.6199f};
Var0.imm_5 = 1668106976;
set_bit(&Var0.imm_4, 1);
break;
case 136:
Var0.imm_3 = -1184516519;
Var0 = {-1049.285f, -476.6376f, 36.7584f};
Var0.imm_5 = 1382347031;
set_bit(&Var0.imm_4, 1);
break;
case 137:
Var0.imm_3 = 1230099731;
Var0 = {-1210.957f, -580.8765f, 27.2373f};
Var0.imm_5 = -966790948;
set_bit(&Var0.imm_4, 1);
break;
case 138:
Var0.imm_3 = 1230099731;
Var0 = {-1212.445f, -578.4401f, 27.2373f};
Var0.imm_5 = -2068750132;
set_bit(&Var0.imm_4, 1);
break;
case 139:
Var0.imm_3 = joaat("v_ilev_roc_door4");
Var0 = {-565.1712f, 276.6259f, 83.2863f};
Var0.imm_5 = -1716533184;
break;
case 140:
Var0.imm_3 = joaat("v_ilev_roc_door4");
Var0 = {-561.2863f, 293.5043f, 87.7771f};
Var0.imm_5 = 2146505927;
break;
case 141:
Var0.imm_3 = joaat("p_jewel_door_l");
Var0 = {-631.96f, -236.33f, 38.21f};
Var0.imm_5 = 1874948872;
set_bit(&Var0.imm_4, 2);
break;
case 142:
Var0.imm_3 = joaat("p_jewel_door_r1");
Var0 = {-630.43f, -238.44f, 38.21f};
Var0.imm_5 = -1965020851;
set_bit(&Var0.imm_4, 2);
break;
case 145:
Var0.imm_3 = -1743257725;
Var0 = {231.62f, 216.23f, 106.4f};
Var0.imm_5 = 1951546856;
set_bit(&Var0.imm_4, 2);
break;
case 146:
Var0.imm_3 = -1743257725;
Var0 = {232.72f, 213.88f, 106.4f};
Var0.imm_5 = -431382051;
set_bit(&Var0.imm_4, 2);
break;
case 143:
Var0.imm_3 = joaat("v_ilev_j2_door");
Var0 = {258.32f, 203.84f, 106.43f};
Var0.imm_5 = -293975210;
set_bit(&Var0.imm_4, 2);
break;
case 144:
Var0.imm_3 = joaat("v_ilev_j2_door");
Var0 = {260.76f, 202.95f, 106.43f};
Var0.imm_5 = -785215289;
set_bit(&Var0.imm_4, 2);
break;
case 148:
Var0.imm_3 = joaat("v_ilev_bk_gate");
Var0 = {256.31f, 220.66f, 106.43f};
Var0.imm_5 = -366143778;
set_bit(&Var0.imm_4, 2);
break;
case 147:
Var0.imm_3 = joaat("v_ilev_bk_door");
Var0 = {266.36f, 217.57f, 110.43f};
Var0.imm_5 = 440819155;
set_bit(&Var0.imm_4, 2);
break;
case 149:
Var0.imm_3 = joaat("v_ilev_shrf2door");
Var0 = {-442.66f, 6015.222f, 31.8663f};
Var0.imm_5 = -588495243;
break;
case 150:
Var0.imm_3 = joaat("v_ilev_shrf2door");
Var0 = {-444.4985f, 6017.06f, 31.8663f};
Var0.imm_5 = 1815504139;
break;
case 151:
Var0.imm_3 = joaat("v_ilev_shrfdoor");
Var0 = {1855.685f, 3683.93f, 34.5928f};
Var0.imm_5 = 1344911780;
break;
case 152:
Var0.imm_3 = joaat("prop_bhhotel_door_l");
Var0 = {-1223.35f, -172.41f, 39.98f};
Var0.imm_5 = -320891223;
set_bit(&Var0.imm_4, 2);
break;
case 153:
Var0.imm_3 = joaat("prop_bhhotel_door_r");
Var0 = {-1220.93f, -173.68f, 39.98f};
Var0.imm_5 = 1511747875;
set_bit(&Var0.imm_4, 2);
break;
case 154:
Var0.imm_3 = joaat("prop_bhhotel_door_l");
Var0 = {-1211.99f, -190.57f, 39.98f};
Var0.imm_5 = -1517722103;
set_bit(&Var0.imm_4, 2);
break;
case 155:
Var0.imm_3 = joaat("prop_bhhotel_door_r");
Var0 = {-1213.26f, -192.98f, 39.98f};
Var0.imm_5 = -1093199712;
set_bit(&Var0.imm_4, 2);
break;
case 156:
Var0.imm_3 = joaat("prop_bhhotel_door_l");
Var0 = {-1217.77f, -201.54f, 39.98f};
Var0.imm_5 = 1902048492;
set_bit(&Var0.imm_4, 2);
break;
case 157:
Var0.imm_3 = joaat("prop_bhhotel_door_r");
Var0 = {-1219.04f, -203.95f, 39.98f};
Var0.imm_5 = -444768985;
set_bit(&Var0.imm_4, 2);
break;
case 158:
Var0.imm_3 = joaat("prop_ch3_04_door_01l");
Var0 = {2514.32f, -317.34f, 93.32f};
Var0.imm_5 = 404057594;
set_bit(&Var0.imm_4, 2);
break;
case 159:
Var0.imm_3 = joaat("prop_ch3_04_door_01r");
Var0 = {2512.42f, -319.26f, 93.32f};
Var0.imm_5 = -1417472813;
set_bit(&Var0.imm_4, 2);
break;
case 160:
Var0.imm_3 = joaat("prop_ch3_01_trlrdoor_l");
Var0 = {2333.23f, 2574.97f, 47.03f};
Var0.imm_5 = -1376084479;
set_bit(&Var0.imm_4, 2);
break;
case 161:
Var0.imm_3 = joaat("prop_ch3_01_trlrdoor_r");
Var0 = {2329.65f, 2576.64f, 47.03f};
Var0.imm_5 = 457472151;
set_bit(&Var0.imm_4, 2);
break;
case 162:
Var0.imm_3 = joaat("v_ilev_gc_door04");
Var0 = {16.1279f, -1114.605f, 29.9469f};
Var0.imm_5 = 1071759151;
break;
case 163:
Var0.imm_3 = joaat("v_ilev_gc_door03");
Var0 = {18.572f, -1115.495f, 29.9469f};
Var0.imm_5 = -2119023917;
break;
case 165:
Var0.imm_3 = joaat("v_ilev_gc_door04");
Var0 = {1698.176f, 3751.506f, 34.8553f};
Var0.imm_5 = -1488490473;
break;
case 166:
Var0.imm_3 = joaat("v_ilev_gc_door03");
Var0 = {1699.937f, 3753.42f, 34.8553f};
Var0.imm_5 = -511187813;
break;
case 167:
Var0.imm_3 = joaat("v_ilev_gc_door04");
Var0 = {244.7274f, -44.0791f, 70.91f};
Var0.imm_5 = -248569395;
break;
case 168:
Var0.imm_3 = joaat("v_ilev_gc_door03");
Var0 = {243.8379f, -46.5232f, 70.91f};
Var0.imm_5 = 989443413;
break;
case 169:
Var0.imm_3 = joaat("v_ilev_gc_door04");
Var0 = {845.3624f, -1024.539f, 28.3448f};
Var0.imm_5 = 2022251829;
break;
case 170:
Var0.imm_3 = joaat("v_ilev_gc_door03");
Var0 = {842.7684f, -1024.539f, 23.3448f};
Var0.imm_5 = 649820567;
break;
case 171:
Var0.imm_3 = joaat("v_ilev_gc_door04");
Var0 = {-326.1122f, 6075.27f, 31.6047f};
Var0.imm_5 = 537455378;
break;
case 172:
Var0.imm_3 = joaat("v_ilev_gc_door03");
Var0 = {-324.273f, 6077.109f, 31.6047f};
Var0.imm_5 = 1121431731;
break;
case 173:
Var0.imm_3 = joaat("v_ilev_gc_door04");
Var0 = {-665.2424f, -944.3256f, 21.9792f};
Var0.imm_5 = -1437380438;
break;
case 174:
Var0.imm_3 = joaat("v_ilev_gc_door03");
Var0 = {-662.6414f, -944.3256f, 21.9792f};
Var0.imm_5 = -946336965;
break;
case 175:
Var0.imm_3 = joaat("v_ilev_gc_door04");
Var0 = {-1313.826f, -389.1259f, 36.8457f};
Var0.imm_5 = 1893144650;
break;
case 176:
Var0.imm_3 = joaat("v_ilev_gc_door03");
Var0 = {-1314.465f, -391.6472f, 36.8457f};
Var0.imm_5 = 435841678;
break;
case 177:
Var0.imm_3 = joaat("v_ilev_gc_door04");
Var0 = {-1114.009f, 2689.77f, 18.7041f};
Var0.imm_5 = 948508314;
break;
case 178:
Var0.imm_3 = joaat("v_ilev_gc_door03");
Var0 = {-1112.071f, 2691.505f, 18.7041f};
Var0.imm_5 = -1796714665;
break;
case 179:
Var0.imm_3 = joaat("v_ilev_gc_door04");
Var0 = {-3164.845f, 1081.392f, 20.9887f};
Var0.imm_5 = -1155247245;
break;
case 180:
Var0.imm_3 = joaat("v_ilev_gc_door03");
Var0 = {-3163.812f, 1083.778f, 20.9887f};
Var0.imm_5 = 782482084;
break;
case 181:
Var0.imm_3 = joaat("v_ilev_gc_door04");
Var0 = {2570.905f, 303.3556f, 108.8848f};
Var0.imm_5 = -1194470801;
break;
case 182:
Var0.imm_3 = joaat("v_ilev_gc_door03");
Var0 = {2568.304f, 303.3556f, 108.8848f};
Var0.imm_5 = -2129698061;
break;
case 183:
Var0.imm_3 = joaat("v_ilev_gc_door04");
Var0 = {813.1779f, -2148.27f, 29.7689f};
Var0.imm_5 = 1071759151;
break;
case 184:
Var0.imm_3 = joaat("v_ilev_gc_door03");
Var0 = {810.5769f, -2148.27f, 29.7689f};
Var0.imm_5 = -2119023917;
break;
case 164:
Var0.imm_3 = joaat("v_ilev_gc_door01");
Var0 = {6.8179f, -1098.209f, 29.9469f};
Var0.imm_5 = 1487704245;
set_bit(&Var0.imm_4, 3);
break;
case 185:
Var0.imm_3 = joaat("v_ilev_gc_door01");
Var0 = {827.5342f, -2160.493f, 29.7688f};
Var0.imm_5 = 1529812051;
set_bit(&Var0.imm_4, 3);
break;
case 186:
Var0.imm_3 = joaat("prop_lrggate_01c_l");
Var0 = {-1107.01f, 289.38f, 64.76f};
Var0.imm_5 = 904342475;
break;
case 187:
Var0.imm_3 = joaat("prop_lrggate_01c_r");
Var0 = {-1101.62f, 290.36f, 64.76f};
Var0.imm_5 = -795418380;
break;
case 188:
Var0.imm_3 = joaat("prop_lrggate_01c_l");
Var0 = {-1138.64f, 300.82f, 67.18f};
Var0.imm_5 = -1502457334;
break;
case 189:
Var0.imm_3 = joaat("prop_lrggate_01c_r");
Var0 = {-1137.05f, 295.59f, 67.18f};
Var0.imm_5 = -1994188940;
break;
case 190:
Var0.imm_3 = joaat("v_ilev_bl_doorel_l");
Var0 = {-2053.16f, 3239.49f, 30.5f};
Var0.imm_5 = -621770121;
set_bit(&Var0.imm_4, 2);
break;
case 191:
Var0.imm_3 = joaat("v_ilev_bl_doorel_r");
Var0 = {-2054.39f, 3237.23f, 30.5f};
Var0.imm_5 = 1018580481;
set_bit(&Var0.imm_4, 2);
break;
case 192:
Var0.imm_3 = joaat("v_ilev_cbankcountdoor01");
Var0 = {-108.91f, 6469.11f, 31.91f};
Var0.imm_5 = 421926217;
break;
case 193:
Var0.imm_3 = joaat("prop_fnclink_03gate5");
Var0 = {-182.91f, 6168.37f, 32.14f};
Var0.imm_5 = -1331552374;
set_bit(&Var0.imm_4, 2);
break;
}
switch (uParam0)
{
case 196:
Var0.imm_3 = joaat("v_ilev_csr_door_l");
Var0 = {-59.89f, -1092.95f, 26.88f};
Var0.imm_5 = -293141277;
break;
case 197:
Var0.imm_3 = joaat("v_ilev_csr_door_r");
Var0 = {-60.55f, -1094.75f, 26.89f};
Var0.imm_5 = 506750037;
break;
case 194:
Var0.imm_3 = joaat("v_ilev_csr_door_l");
Var0 = {-39.13f, -1108.22f, 26.72f};
Var0.imm_5 = 1496005418;
break;
case 195:
Var0.imm_3 = joaat("v_ilev_csr_door_r");
Var0 = {-37.33f, -1108.87f, 26.72f};
Var0.imm_5 = -1863079210;
break;
case 198:
Var0.imm_3 = joaat("prop_ron_door_01");
Var0 = {1943.73f, 3803.63f, 32.31f};
Var0.imm_5 = -2018911784;
set_bit(&Var0.imm_4, 2);
break;
case 199:
Var0.imm_3 = joaat("v_ilev_genbankdoor2");
Var0 = {316.39f, -276.49f, 54.52f};
Var0.imm_5 = -93934272;
set_bit(&Var0.imm_4, 2);
break;
case 200:
Var0.imm_3 = joaat("v_ilev_genbankdoor1");
Var0 = {313.96f, -275.6f, 54.52f};
Var0.imm_5 = 667682830;
set_bit(&Var0.imm_4, 2);
break;
case 201:
Var0.imm_3 = joaat("v_ilev_genbankdoor2");
Var0 = {-2965.71f, 484.22f, 16.05f};
Var0.imm_5 = 1876735830;
set_bit(&Var0.imm_4, 2);
break;
case 202:
Var0.imm_3 = joaat("v_ilev_genbankdoor1");
Var0 = {-2965.82f, 481.63f, 16.05f};
Var0.imm_5 = -2112857171;
set_bit(&Var0.imm_4, 2);
break;
case 205:
Var0.imm_3 = joaat("v_ilev_abbmaindoor");
Var0 = {962.1f, -2183.83f, 31.06f};
Var0.imm_5 = 2046930518;
set_bit(&Var0.imm_4, 2);
break;
case 206:
Var0.imm_3 = joaat("v_ilev_abbmaindoor2");
Var0 = {961.79f, -2187.08f, 31.06f};
Var0.imm_5 = 1208502884;
set_bit(&Var0.imm_4, 2);
break;
case 207:
Var0.imm_3 = joaat("prop_ch3_04_door_02");
Var0 = {2508.43f, -336.63f, 115.76f};
Var0.imm_5 = 1986432421;
set_bit(&Var0.imm_4, 2);
break;
case 208:
Var0.imm_3 = joaat("prop_ch1_07_door_01l");
Var0 = {-2255.19f, 322.26f, 184.93f};
Var0.imm_5 = -722798986;
set_bit(&Var0.imm_4, 2);
break;
case 209:
Var0.imm_3 = joaat("prop_ch1_07_door_01r");
Var0 = {-2254.06f, 319.7f, 184.93f};
Var0.imm_5 = 204301578;
set_bit(&Var0.imm_4, 2);
break;
case 210:
Var0.imm_3 = joaat("prop_ch1_07_door_01l");
Var0 = {-2301.13f, 336.91f, 184.93f};
Var0.imm_5 = -320140460;
set_bit(&Var0.imm_4, 2);
break;
case 211:
Var0.imm_3 = joaat("prop_ch1_07_door_01r");
Var0 = {-2298.57f, 338.05f, 184.93f};
Var0.imm_5 = 65222916;
set_bit(&Var0.imm_4, 2);
break;
case 212:
Var0.imm_3 = joaat("prop_ch1_07_door_01l");
Var0 = {-2222.32f, 305.86f, 184.93f};
Var0.imm_5 = -920027322;
set_bit(&Var0.imm_4, 2);
break;
case 213:
Var0.imm_3 = joaat("prop_ch1_07_door_01r");
Var0 = {-2221.19f, 303.3f, 184.93f};
Var0.imm_5 = -58432001;
set_bit(&Var0.imm_4, 2);
break;
case 214:
Var0.imm_3 = joaat("prop_ch1_07_door_01l");
Var0 = {-2280.6f, 265.43f, 184.93f};
Var0.imm_5 = -2007378629;
set_bit(&Var0.imm_4, 2);
break;
case 215:
Var0.imm_3 = joaat("prop_ch1_07_door_01r");
Var0 = {-2278.04f, 266.57f, 184.93f};
Var0.imm_5 = 418772613;
set_bit(&Var0.imm_4, 2);
break;
case 216:
Var0.imm_3 = joaat("prop_gar_door_04");
Var0 = {778.31f, -1867.49f, 30.66f};
Var0.imm_5 = 1679064921;
set_bit(&Var0.imm_4, 2);
break;
case 217:
Var0.imm_3 = joaat("prop_gate_tep_01_l");
Var0 = {-721.35f, 91.01f, 56.68f};
Var0.imm_5 = 412198396;
set_bit(&Var0.imm_4, 2);
break;
case 218:
Var0.imm_3 = joaat("prop_gate_tep_01_r");
Var0 = {-728.84f, 88.64f, 56.68f};
Var0.imm_5 = -1053755588;
set_bit(&Var0.imm_4, 2);
break;
case 219:
Var0.imm_3 = joaat("prop_artgallery_02_dr");
Var0 = {-2287.62f, 363.9f, 174.93f};
Var0.imm_5 = -53446139;
set_bit(&Var0.imm_4, 2);
break;
case 220:
Var0.imm_3 = joaat("prop_artgallery_02_dl");
Var0 = {-2289.78f, 362.91f, 174.93f};
Var0.imm_5 = 1333960556;
set_bit(&Var0.imm_4, 2);
break;
case 221:
Var0.imm_3 = joaat("prop_artgallery_02_dr");
Var0 = {-2289.86f, 362.88f, 174.93f};
Var0.imm_5 = -41786493;
set_bit(&Var0.imm_4, 2);
break;
case 222:
Var0.imm_3 = joaat("prop_artgallery_02_dl");
Var0 = {-2292.01f, 361.89f, 174.93f};
Var0.imm_5 = 1750120734;
set_bit(&Var0.imm_4, 2);
break;
case 223:
Var0.imm_3 = joaat("prop_fnclink_07gate1");
Var0 = {1803.94f, 3929.01f, 33.72f};
Var0.imm_5 = 1661506222;
break;
case 203:
Var0.imm_3 = joaat("v_ilev_genbankdoor2");
Var0 = {-348.81f, -47.26f, 49.39f};
Var0.imm_5 = -2116116146;
set_bit(&Var0.imm_4, 2);
break;
case 204:
Var0.imm_3 = joaat("v_ilev_genbankdoor1");
Var0 = {-351.26f, -46.41f, 49.39f};
Var0.imm_5 = -74083138;
set_bit(&Var0.imm_4, 2);
break;
case 224:
Var0.imm_3 = joaat("prop_abat_slide");
Var0 = {962.9084f, -2105.814f, 34.6432f};
Var0.imm_5 = -1670085357;
break;
}
return Var0;
}
bool func_28()
{
if (func_29() == -1 || func_29() == 999)
{
return true;
}
return false;
}
var func_29()
{
return Global_19455;
}
bool start_mission_conversation(var uParam0, var uParam1, var uParam2, int iParam3, var uParam4, var uParam5, var uParam6)
{
func_40(uParam0, 143, uParam1, uParam4, uParam5, uParam6);
if (iParam3 > 7)
{
iParam3 = 7;
}
Global_11735 = 0;
Global_11737 = 0;
Global_11742 = 0;
Global_12699 = 0;
Global_12701 = 0;
Global_12705 = 0;
return func_31(uParam2, iParam3, 0);
}
bool func_31(*string sParam0, int iParam1, bool bParam2)
{
Global_11729 = 0;
if (Global_11728 == 0 || Global_11730 == 2)
{
if (Global_11728 != 0)
{
if (iParam1 > Global_11730)
{
if (Global_11735 == 0)
{
stop_scripted_conversation(0);
Global_10433.imm_1 = 3;
Global_11728 = 0;
Global_11729 = 1;
Global_11761 = 0;
Global_11724 = 0;
Global_11725 = 0;
Global_11739 = 0;
}
else
{
func_39();
return false;
}
}
else
{
return false;
}
}
if (is_scripted_conversation_ongoing())
{
return false;
}
if (func_38(8, -1))
{
return false;
}
Global_11784 = {Global_11778};
func_37();
Global_11017 = {Global_11182};
Global_11734 = Global_11735;
Global_11741 = Global_11742;
Global_11743 = {Global_11749};
Global_11736 = Global_11737;
Global_12698 = Global_12699;
Global_12706 = {Global_12712};
Global_12700 = Global_12701;
Global_12702 = Global_12703;
Global_12704 = Global_12705;
Global_11347.imm_370 = Global_12697;
Global_11347.imm_368 = Global_12695;
Global_11347.imm_369 = Global_12696;
Global_11724 = Global_11725;
if (Global_11734)
{
clear_bit(&Global_1686, 20);
clear_bit(&Global_1687, 17);
clear_bit(&Global_1688, 0);
if (bParam2)
{
func_36();
if (Global_2480[Global_10433 <1968>][0 <281>].imm_259 == 2)
{
if (iParam1 == 13)
{
}
else
{
return false;
}
}
if (Global_10433.imm_1 > 3)
{
return false;
}
}
if (Global_10399 == 1)
{
return false;
}
if (is_player_playing(player_id()))
{
if (is_ped_in_melee_combat(player_ped_id()))
{
return false;
}
if (func_35())
{
return false;
}
if (is_ped_sprinting(player_ped_id()))
{
return false;
}
if (is_ped_ragdoll(player_ped_id()))
{
return false;
}
if (unk_0xCD71F11B(player_ped_id()))
{
return false;
}
if (unk_0x8DDD0B5B(player_ped_id(), -72657034))
{
return false;
}
if (!Global_59842)
{
if (is_entity_in_water(player_ped_id()))
{
return false;
}
if (is_player_climbing(player_id()))
{
return false;
}
if (is_ped_planting_bomb(player_ped_id()))
{
return false;
}
if (is_special_ability_active(player_id()))
{
return false;
}
}
}
if (func_34())
{
return false;
}
else
{
switch (Global_10433.imm_1)
{
case 7:
return false;
break;
case 8:
return false;
break;
case 9:
break;
case 10:
break;
default:
break;
}
if (is_bit_set(Global_1686, 9))
{
return false;
}
}
func_33();
Global_11738 = bParam2;
}
Global_11730 = iParam1;
StringCopy(&Global_11347, sParam0, 24);
Global_10594 = 0;
end_scripted_conversation();
return true;
}
if (Global_11728 == 5)
{
return false;
}
if (iParam1 < Global_11730 || iParam1 == Global_11730)
{
return false;
}
if (iParam1 == 2)
{
}
else
{
func_39();
}
return false;
}
void end_scripted_conversation()
{
int iVar0;
iVar0 = 0;
while (iVar0 <= 69)
{
StringCopy(&Global_10596[iVar0 <6>], "", 24);
iVar0++;
}
stop_scripted_conversation(0);
Global_11728 = 1;
}
void func_33()
{
Global_11761 = Global_11760;
Global_11755 = Global_11756;
Global_11802 = {Global_11790};
Global_11808 = {Global_11796};
Global_11763 = Global_11762;
Global_11832 = {Global_11814};
Global_11838 = {Global_11820};
Global_11844 = {Global_11826};
Global_11850 = {Global_11856};
Global_1477 = Global_1478;
Global_1479 = Global_1480;
Global_11739 = Global_11740;
Global_11741 = Global_11742;
Global_11743 = {Global_11749};
Global_11732 = Global_11733;
Global_12724 = 0;
Global_11757 = 0;
Global_11758 = 0;
clear_bit(&Global_1687, 16);
}
bool func_34()
{
if (Global_10433.imm_1 == 1 || Global_10433.imm_1 == 0)
{
return true;
}
return false;
}
bool func_35()
{
int iVar0;
int iVar1;
if (Global_59842)
{
iVar0 = 0;
get_current_ped_weapon(player_ped_id(), &iVar1, 1);
if (is_player_playing(player_id()))
{
if ((iVar1 == joaat("weapon_sniperrifle") || iVar1 == joaat("weapon_heavysniper")) || iVar1 == joaat("weapon_remotesniper"))
{
iVar0 = 1;
}
}
if (is_aim_cam_active() && iVar0 == 1)
{
return true;
}
else
{
return false;
}
}
if (is_player_playing(player_id()))
{
if (get_ped_config_flag(player_ped_id(), 78, 1))
{
return true;
}
else
{
return false;
}
}
return true;
}
void func_36()
{
Global_10433 = get_current_ped();
if (Global_10433 == 143)
{
Global_10433 = 3;
}
if (Global_59842)
{
Global_10433 = 3;
}
if (Global_10433 > 3)
{
Global_10433 = 3;
}
}
void func_37()
{
int iVar0;
iVar0 = 0;
while (iVar0 <= 15)
{
Global_11017[iVar0 <10>] = 0;
StringCopy(&Global_11017[iVar0 <10>].imm_1, "", 24);
Global_11017[iVar0 <10>].imm_7 = 0;
Global_11017[iVar0 <10>].imm_8 = 0;
iVar0++;
}
Global_11017.imm_161 = -99;
Global_11017.imm_162 = {0f, 0f, 0f};
}
var func_38(var uParam0, int iParam1)
{
switch (uParam0)
{
case 5:
if (iParam1 > -1)
{
return Global_1355279.imm_147[iParam1];
}
break;
}
return is_bit_set(Global_1355279.imm_566, uParam0);
}
void func_39()
{
restart_scripted_conversation();
Global_12719 = 0;
if ((is_mobile_phone_call_ongoing() || Global_10433.imm_1 == 9) || Global_10432 == 1)
{
stop_scripted_conversation(0);
Global_11728 = 6;
Global_10433.imm_1 = 3;
return;
}
if (is_scripted_conversation_ongoing())
{
stop_scripted_conversation(1);
Global_11728 = 6;
return;
}
}
void func_40(var uParam0, var uParam1, *string sParam2, int iParam3, int iParam4, var uParam5)
{
Global_11182 = {*uParam0};
Global_1478 = uParam1;
StringCopy(&Global_11778, sParam2, 24);
Global_12697 = uParam5;
if (iParam3 == 0)
{
Global_12695 = 1;
Global_12693 = 0;
}
else
{
Global_12695 = 0;
Global_12693 = 1;
}
if (iParam4 == 0)
{
Global_12696 = 1;
Global_12694 = 0;
}
else
{
Global_12696 = 0;
Global_12694 = 1;
}
}
bool func_41()
{
if (is_bit_set(get_random_int_in_range(0, 65535), 0))
{
return true;
}
return false;
}
void set_auto_conversation_target(var uParam0, var uParam1, var uParam2, *string sParam3, var uParam4, var uParam5) //set_auto_conversation_target(&uLocal_45, 0, player_ped_id(), "MICHAEL", 0, 1);
{
if (*(uParam0[uParam1 <10>]).imm_7 == 1)
{
}
*uParam0[uParam1 <10>] = uParam2;
StringCopy(uParam0[uParam1 <10>].imm_1, sParam3, 24);
*(uParam0[uParam1 <10>]).imm_7 = 1;
*(uParam0[uParam1 <10>]).imm_8 = uParam4;
*(uParam0[uParam1 <10>]).imm_9 = uParam5;
if (!Global_59842) // is multiplayer
{
if (!is_ped_injured(uParam2))
{
if (*(uParam0[uParam1 <10>]).imm_8 == 0)
{
set_ped_can_play_ambient_anims(uParam2, 0);
}
else
{
set_ped_can_play_ambient_anims(uParam2, 1);
}
}
if (!is_ped_injured(uParam2))
{
if (*(uParam0[uParam1 <10>]).imm_9 == 0)
{
set_ped_can_use_auto_conversation_lookat(uParam2, 0);
}
else
{
set_ped_can_use_auto_conversation_lookat(uParam2, 1);
}
}
}
}
bool is_security_guard_at_position_and_near_player(Vector3 position)
{
int iVar0;
int iVar1;
var[] ped_array = new var[20];
iVar0 = get_ped_nearby_peds(player_ped_id(), &ped_array, -1);
if (iVar0 == 0)
{
return false;
}
iVar1 = 0;
while (iVar1 < iVar0)
{
if (is_entity_alive(ped_array[iVar1]))
{
if (is_ped_model(ped_array[iVar1], security_guard_hash))
{
if (get_ped_distance_from_vector(ped_array[iVar1], position, 1) < 5f)
{
return true;
}
}
}
iVar1++;
}
return false;
}
var get_ped_distance_from_vector(var uParam0, Vector3 vParam1, var uParam2)
{
Vector3 vVar0;
if (!is_entity_dead(uParam0))
{
vVar0 = {get_entity_coords(uParam0, 1)};
}
else
{
vVar0 = {get_entity_coords(uParam0, 0)};
}
return get_distance_between_coords(vVar0, vParam1, uParam2);
}
bool try_stop_vehicle(Vehicle handle, float deceleration, var uParam2, float maxSpeed, var uParam4)
{
disable_control_action(0, 65);
disable_control_action(0, 66);
disable_control_action(0, 69);
disable_control_action(0, 225);
disable_control_action(0, 53);
disable_control_action(0, 54);
disable_control_action(0, 68);
disable_control_action(0, 73);
disable_control_action(0, 63);
disable_control_action(0, 64);
disable_control_action(0, 62);
disable_control_action(0, 67);
disable_control_action(0, 77);
disable_control_action(0, 74);
disable_control_action(0, 75);
disable_control_action(0, 102);
disable_control_action(0, 95);
disable_control_action(0, 98);
disable_control_action(0, 80);
disable_control_action(0, 80);
disable_control_action(0, 78);
disable_control_action(0, 79);
disable_control_action(0, 101);
disable_control_action(0, 103);
disable_control_action(0, 104);
disable_control_action(0, 105);
disable_control_action(0, 106);
disable_control_action(0, 107);
if (get_game_timer() - g_LAST_TASK_STOP_VEHICLE)> 500) // Global_25
{
_task_stop_vehicle(handle, deceleration, uParam2, uParam4);
}
g_LAST_TASK_STOP_VEHICLE = get_game_timer();
if (!is_entity_dead(handle))
{
if (absf(get_entity_speed(handle)) <= maxSpeed)
{
return true;
}
}
return false;
}
float 2d_dot_product(Vector3 lhs, Vector3 rhs)
{
return lhs.x * rhs.x + lhs.y * rhs.y;
}
bool is_entity_aabb_in_angled_area(var entity_handle, Vector3 vParam1, Vector3 vParam2, var uParam3)
{
Vector3 vVar0;
Struct<2> aabb_min;
Struct<2> aabb_max;
if (is_entity_in_angled_area(entity_handle, vParam1, vParam2, uParam3, 0, 1, 0))
{
return true;
}
if (is_entity_a_ped(entity_handle))
{
return false;
}
get_model_dimensions(get_entity_model(entity_handle), &aabb_min.x, &aabb_max);
vVar0 = {get_offset_from_entity_in_world_coords(entity_handle, aabb_min.x, aabb_max.y, 0f)}; // entity - {min.x, max.y, 0}
if (is_point_in_angled_area(vVar0, vParam1, vParam2, uParam3, 0, 1))
{
return true;
}
vVar0 = {get_offset_from_entity_in_world_coords(entity_handle, 0f, aabb_max.y, 0f)}; // entity - {0 , max.y, 0 }
if (is_point_in_angled_area(vVar0, vParam1, vParam2, uParam3, 0, 1))
{
return true;
}
vVar0 = {get_offset_from_entity_in_world_coords(entity_handle, aabb_max.x aabb_max.y, 0f)}; // top
if (is_point_in_angled_area(vVar0, vParam1, vParam2, uParam3, 0, 1))
{
return true;
}
vVar0 = {get_offset_from_entity_in_world_coords(entity_handle, aabb_min.x, aabb_min.y, 0f)};
if (is_point_in_angled_area(vVar0, vParam1, vParam2, uParam3, 0, 1))
{
return true;
}
vVar0 = {get_offset_from_entity_in_world_coords(entity_handle, 0f, aabb_min.y, 0f)};
if (is_point_in_angled_area(vVar0, vParam1, vParam2, uParam3, 0, 1))
{
return true;
}
vVar0 = {get_offset_from_entity_in_world_coords(entity_handle, aabb_max.x aabb_min.y, 0f)};
if (is_point_in_angled_area(vVar0, vParam1, vParam2, uParam3, 0, 1))
{
return true;
}
return false;
}
void delete_ped(var ped)
{
if (does_entity_exist(*ped))
{
if (!is_entity_dead(*ped))
{
set_entity_load_collision_flag(*ped, 0);
}
if (!is_entity_a_mission_entity(*ped))
{
set_entity_as_mission_entity(*ped, 1, 0);
}
delete_ped(ped);
}
}
void cleanup_vehicle(var uParam0)
{
delete_ped(uParam0);
cleanup_ped_vehicle?(uParam0.imm_1);
}
void cleanup_ped_vehicle?(var uParam0)
{
if (does_entity_exist(*uParam0))
{
if (!is_entity_a_mission_entity(*uParam0))
{
set_entity_as_mission_entity(*uParam0, 1, 0);
}
if (is_vehicle_usable(*uParam0))
{
if (is_entity_a_mission_entity(*uParam0) && unk_0xACFEB3F9(*uParam0, 1))
{
if (is_ped_alive(player_ped_id()))
{
if (is_ped_in_vehicle(player_ped_id(), *uParam0, 0))
{
set_vehicle_as_no_longer_needed(uParam0);
return;
}
}
delete_vehicle(uParam0);
}
}
else
{
if (is_ped_alive(player_ped_id()))
{
if (is_ped_in_vehicle(player_ped_id(), *uParam0, 0))
{
set_vehicle_as_no_longer_needed(uParam0);
return;
}
}
delete_vehicle(uParam0);
}
}
}
bool is_ped_alive(var uParam0)
{
if (does_entity_exist(uParam0))
{
if (!is_entity_dead(uParam0))
{
return true;
}
}
return false;
}
bool is_vehicle_usable(var uParam0)
{
if (is_ped_alive(uParam0))
{
if (is_vehicle_driveable(uParam0, 0))
{
if (!is_entity_on_fire(uParam0))
{
return true;
}
}
}
return false;
}
void run_solomon_state_machine(uint32 *currentState)
{
bool conversationResult;
var uVar1;
var player_vehicle_handle;
switch (*currentState)
{
case 0:
cleanup_vehicle(&akuma_handle_one);
set_mf_control_flag(FLAG_MOVIE_STUDIO_OPEN, 0);
delete_ped(&uLocal_219);
*currentState++;
break;
case 1:
if (is_entity_aabb_in_angled_area(player_ped_id(), -1055.046f, -469.3347f, 35.43333f, -1057.44f, -474.9772f, 39.8187f, 12.5f))
{
s_fStopSpeed = 0.25f;
*currentState++;
return;
}
if (is_ped_in_any_vehicle(player_ped_id(), 0))
{
player_vehicle_handle = get_vehicle_ped_is_in(player_ped_id(), 0);
uVar1 = acos(xy_dot_product(player_forward_vector, -0.37f, -0.927f, -0.053f));
if (absf(uVar1) < 45f)
{
if (is_entity_aabb_in_angled_area(player_vehicle_handle, -1049.318f, -473.7472f, 34.94196f, -1059.483f, -468.7608f, 39.94483f, 4.5f))
{
s_fStopSpeed = 1f;
*currentState++;
}
}
}
break;
case 2:
if (is_ped_in_any_vehicle(player_ped_id(), 0))
{
player_vehicle_handle = get_vehicle_ped_is_in(player_ped_id(), 0);
try_stop_vehicle(player_vehicle_handle, s_fStopSpeed, iLocal_213, 0.5f, 0);
}
else
{
task_stand_still(player_ped_id(), -1);
}
if (is_security_guard_at_position_and_near_player(-1051.1f, -476.1f, 37f))
{
set_auto_conversation_target(&uLocal_45, 0, player_ped_id(), "MICHAEL", 0, 1);
if (func_41())
{
conversationResult = start_mission_conversation(&uLocal_45, "AMSOLAU", "AMSOL_HERE", 8, 0, 0, 0);
}
else
{
conversationResult = start_mission_conversation(&uLocal_45, "AMSOLAU", "AMSOL_WORK", 8, 0, 0, 0);
}
if (conversationResult)
{
*currentState++;
}
}
else
{
*currentState++;
}
break;
case 3:
if (is_ped_in_any_vehicle(player_ped_id(), 0))
{
player_vehicle_handle = get_vehicle_ped_is_in(player_ped_id(), 0);
if (try_stop_vehicle(player_vehicle_handle, s_fStopSpeed, iLocal_213, 0.5f, 0))
{
*currentState++;
}
return;
}
*currentState++;
break;
case 4:
if (!is_scripted_speech_playing(player_ped_id()) && !is_scripted_conversation_ongoing())
{
clear_ped_tasks(player_ped_id());
*currentState++;
}
break;
case 5:
open_movie_studio(0);
*currentState++;
break;
case 6:
generate_mission_akuma(&akuma_handle_one, -1051.956f, -472.055f, 35.5672f, 161.4418f);
*currentState++;
break;
case 7:
if (!is_entity_aabb_in_angled_area(player_ped_id(), -1055.514f, -474.6371f, 35.6278f, -1051.23f, -464.4126f, 39.91479f, 9.5f))
{
cleanup_vehicle(&akuma_handle_one);
*currentState++;
}
break;
case 8:
if (iLocal_218 == 0)
{
cleanup();
}
break;
}
}
bool request_model_with_timeout(int iParam0, int iParam1)
{
int iVar0;
iVar0 = get_game_timer() + 7500;
if (iParam0 == 0)
{
return false;
}
request_model(iParam0);
if (has_model_loaded(iParam0))
{
return true;
}
if (iParam1 == 0)
{
return true;
}
while (!has_model_loaded(iParam0))
{
wait(0);
if (get_game_timer() > iVar0 && !has_model_loaded(iParam0))
{
return false;
}
}
return true;
}
void close_movie_studio(var uParam0)
{
set_mf_control_flag(FLAG_MOVIE_STUDIO_OPEN, 0);
set_roads_in_angled_area(-1039.504f, -477.7876f, 35.32967f, -1062.444f, -469.5685f, 40.62086f, 13f, 0, 0, 1);
set_building_data_item(DOOR_135, uParam0);
set_building_data_item(DOOR_136, uParam0);
set_roads_in_angled_area(-1039.504f, -477.7876f, 35.32967f, -1062.444f, -469.5685f, 40.62086f, 13f, 0, 0, 1);
set_building_data_item(DOOR_137, uParam0);
set_building_data_item(DOOR_138, uParam0);
}
void set_mf_control_flag(int iParam0, int iParam1)
{
if (iParam0 == 136 || iParam0 == -1)
{
return;
}
if (g_SAVE_DATA.imm_6711.MF_CONTROLS_STRUCT.MF_CONTROL_FLAGIDS[iParam0] == iParam1)
{
return;
}
g_SAVE_DATA.imm_6711.MF_CONTROLS_STRUCT.MF_CONTROL_FLAGIDS[iParam0] = iParam1;
}
void check_exit_conditions()
{
is_entity_alive(player_ped_id());
if (_GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT (-1637666659) > 0)
{
check_and_clear_flowlaunch_bit(30);
set_mf_control_flag(FLAG_MOVIE_STUDIO_OPEN, 1);
cleanup();
}
if (get_mission_array_item(MF_MISSION_STRUCT_59) == 1)
{
set_mf_control_flag(FLAG_MOVIE_STUDIO_OPEN, 1);
check_and_clear_flowlaunch_bit(30);
cleanup();
}
if (get_mission_flag())
{
cleanup();
}
if (get_current_ped() != 0)
{
cleanup();
}
if (!is_entity_in_sphere(player_ped_id(), mission_sphere_origin, mission_sphere_radius + 30f))
{
cleanup();
}
wait(0);
is_entity_alive(player_ped_id());
}
int get_mission_array_item(int iParam0)
{
if (iParam0 == 94 || iParam0 == -1) // bounds checking
{
return 0;
}
return g_SAVE_DATA.imm_6711.MF_MISSION_ARRAY[iParam0 <6>];
}
bool is_entity_in_sphere(var uParam0, Vector3 vParam1, float fParam2)
{
return vdist2(get_entity_coords(uParam0, 1), vParam1) <= fParam2 * fParam2;
}
var get_current_ped()
{
func_61();
return g_SAVE_DATA.PP_INFO_STRUCT.PP_CURRENT_PED;
}
void func_61()
{
int iVar0;
if (does_entity_exist(player_ped_id()))
{
if (get_charsheet_item(g_SAVE_DATA.PP_INFO_STRUCT.PP_CURRENT_PED) != get_entity_model(player_ped_id()))
{
iVar0 = func_62(player_ped_id());
if (is_less_than_3(iVar0))
{
if (g_SAVE_DATA.PP_INFO_STRUCT.PP_CURRENT_PED != iVar0 && is_less_than_3(g_SAVE_DATA.PP_INFO_STRUCT.PP_CURRENT_PED))
{
g_SAVE_DATA.PP_INFO_STRUCT.PP_PREVIOUS_PED = g_SAVE_DATA.PP_INFO_STRUCT.PP_CURRENT_PED;
}
g_SAVE_DATA.PP_INFO_STRUCT.PP_LAST_KNOWN_PED = iVar0;
g_SAVE_DATA.PP_INFO_STRUCT.PP_CURRENT_PED = iVar0;
return;
}
}
else
{
g_SAVE_DATA.PP_INFO_STRUCT.PP_LAST_KNOWN_PED = g_SAVE_DATA.PP_INFO_STRUCT.PP_CURRENT_PED;
return;
}
}
g_SAVE_DATA.PP_INFO_STRUCT.PP_CURRENT_PED = 143;
}
int func_62(var uParam0)
{
int iVar0;
int iVar1;
if (does_entity_exist(uParam0))
{
iVar1 = get_entity_model(uParam0);
iVar0 = 0;
while (iVar0 <= 2)
{
if (get_charsheet_item(iVar0) == iVar1)
{
return iVar0;
}
iVar0++;
}
}
return 143;
}
int get_charsheet_item(int iParam0)
{
if (is_less_than_3(iParam0))
{
return g_SAVE_DATA.CHARSHEET_SAVED_ARRAY[iParam0 <29>];
}
else if (iParam0 != 143)
{
}
return 0;
}
bool is_entity_alive(var uParam0)
{
if (!does_entity_exist(uParam0))
{
return false;
}
return !is_entity_dead(uParam0);
}
bool check_and_set_flow_mf_control_bitset(int iParam0)
{
int iVar0;
int iVar1;
if (iParam0 <= 31)
{
iVar0 = 9;
iVar1 = iParam0;
}
else
{
iVar0 = 10;
iVar1 = iParam0 - 32;
}
if (is_bit_set(g_SAVE_DATA.imm_6711.MF_CONTROLS_STRUCT.MF_CONTROL_BITSETIDS[iVar0], iVar1))
{
return false;
}
set_bit(&g_SAVE_DATA.imm_6711.MF_CONTROLS_STRUCT.MF_CONTROL_BITSETIDS[iVar0], iVar1);
return true;
}
void cleanup()
{
cleanup_vehicle(&akuma_handle_one);
cleanup_vehicle(&akuma_handle_two);
cleanup_mission_ped(&uLocal_219, 0, 0, 1);
cleanup_mission_ped(&uLocal_220, 0, 0, 1);
set_mf_control_flag(FLAG_MOVIE_STUDIO_OPEN, 1);
set_model_as_no_longer_needed(joaat("s_m_m_security_01"));
set_model_as_no_longer_needed(joaat("akuma"));
terminate_this_thread();
}
void cleanup_mission_ped(var uParam0, var uParam1, int iParam2, int iParam3)
{
if (does_entity_exist(*uParam0))
{
if (!is_ped_injured(*uParam0))
{
set_entity_load_collision_flag(*uParam0, 0);
if (iParam3 == 0)
{
clear_ped_secondary_task(*uParam0);
}
set_ped_keep_task(*uParam0, uParam1);
if (iParam2 == 1)
{
set_blocking_of_non_temporary_events(*uParam0, 0);
}
}
set_ped_as_no_longer_needed(uParam0);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment