Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /****************************************************************
- This file is a part of Open IV dev team GTA V research project
- --------------------------------------------------------------
- Description : decompiled script pb_prostitute.xsc (UP14)
- Copyright : (C) Alexander Blade, http://dev-c.com, 2014
- ****************************************************************/
- void main()
- {
- l_2 = 1;
- l_3 = 134;
- l_4 = 134;
- l_5 = 1;
- l_6 = 1;
- l_7 = 1;
- l_8 = 134;
- l_9 = 1;
- l_10 = 12;
- l_11 = 12;
- l_14 = 0.001f;
- l_17 = "NULL";
- l_18 = 0f;
- l_22 = -0.0375f;
- l_23 = 0.17f;
- l_24 = 3;
- l_27 = 80f;
- l_28 = 140f;
- l_29 = 180f;
- l_35 = 1;
- l_36 = 65;
- l_37 = 49;
- l_38 = 64;
- l_80 = ((0.05f + 0.275f) - 0.01f);
- setStruct(0f, 0f, 0f, 3, &l_89);
- l_107 = -1;
- l_109 = -1;
- l_110 = -1;
- l_111 = -1;
- l_112 = -1;
- l_113 = -1;
- l_114 = -1;
- l_115 = -1;
- l_117 = -1;
- l_119 = -1;
- l_120 = -1;
- l_324 = -1;
- if (g_3 != 0)
- {
- SCRIPT::TERMINATE_THIS_THREAD();
- }
- if ((NETWORK::NETWORK_IS_GAME_IN_PROGRESS() != 0) && (sub_10C7F(PLAYER::PLAYER_ID(), 1) != 0))
- {
- SCRIPT::TERMINATE_THIS_THREAD();
- }
- SYSTEM::WAIT(0);
- l_127 = l_373;
- if (NETWORK::NETWORK_IS_GAME_IN_PROGRESS() != 0)
- {
- sub_10C72();
- NETWORK::NETWORK_SET_THIS_SCRIPT_IS_NETWORK_SCRIPT(2, 0, PLAYER::PLAYER_ID());
- sub_10B51(0, -1, 0);
- GAMEPLAY::SET_THIS_SCRIPT_CAN_BE_PAUSED(0);
- }
- else if ((sub_10B44() == 0) && (PLAYER::0x4B37333C(35) != 0))
- {
- sub_10666();
- sub_105F7(1);
- sub_104E0();
- }
- sub_1047E();
- sub_10463(128);
- Label_0262:
- if (l_95 == 0)
- {
- if (sub_F6B7(l_85, 2) != 0)
- {
- }
- sub_F6C6(" Something forced this exit!!!!!!~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");
- sub_10666();
- sub_104E0();
- }
- else
- {
- var num3 = 1;
- if (sub_10B44() != 0)
- {
- if (ENTITY::DOES_ENTITY_EXIST(l_127) == 0)
- {
- num3 = 0;
- }
- else if (NETWORK::NETWORK_HAS_CONTROL_OF_ENTITY(l_127) == 0)
- {
- num3 = 0;
- NETWORK::NETWORK_REQUEST_CONTROL_OF_ENTITY(l_127);
- }
- }
- sub_10202();
- if (sub_10B44() != 0)
- {
- sub_101B1();
- if (sub_101A1(128) != 0)
- {
- l_95 = 0;
- }
- }
- if (sub_FE7D() == 0)
- {
- sub_2B3(0);
- }
- else if (num3 != 0)
- {
- if (l_325 > 0)
- {
- sub_FB99();
- }
- sub_FAAB();
- sub_F9BA();
- switch (l_325)
- {
- case 0:
- if (l_324 != -1)
- {
- if (sub_F704() != 0)
- {
- if (sub_F6CE() != 0)
- {
- if (sub_10B44() != 0)
- {
- if (NETWORK::NETWORK_HAS_CONTROL_OF_ENTITY(l_127) != 0)
- {
- AI::TASK_START_SCENARIO_IN_PLACE(l_127, "WORLD_HUMAN_PROSTITUTE_HIGH_CLASS", 0, 0);
- }
- else
- {
- NETWORK::NETWORK_REQUEST_CONTROL_OF_ENTITY(l_127);
- }
- }
- else
- {
- AI::TASK_START_SCENARIO_IN_PLACE(l_127, "WORLD_HUMAN_PROSTITUTE_HIGH_CLASS", 0, 0);
- }
- }
- l_325 = 1;
- sub_F6C6("Prostitue: moving to PROS_PB_CUSTOMER_DETERMINE_TYPE");
- }
- break;
- }
- if (AI::IS_PED_ACTIVE_IN_SCENARIO(l_127) == 0)
- {
- if (sub_F8A8() != 0)
- {
- l_324 = 4;
- }
- break;
- }
- l_324 = sub_F941();
- break;
- case 1:
- if (sub_F6B7(l_85, 4096) != 0)
- {
- sub_F655();
- }
- if (sub_F611() != 0)
- {
- l_325 = 2;
- sub_F6C6("Prostitue: moving to PROS_PB_CUSTOMER_PLAYER");
- }
- if (sub_F4CE() != 0)
- {
- l_325 = 3;
- sub_F4AD(&l_85, 64);
- g_19605 = 1;
- sub_F6C6("Prostitue: moving to PROS_PB_CUSTOMER_OTHER");
- }
- break;
- case 2:
- sub_2D58();
- break;
- case 3:
- sub_2C9();
- break;
- }
- }
- sub_2AB();
- SYSTEM::WAIT(0);
- goto Label_0262;
- }
- }
- void sub_2AB()
- {
- }
- void sub_2B3(var A_0)
- {
- if (A_0 != null)
- {
- l_95 = 1;
- }
- else
- {
- l_95 = 0;
- }
- }
- void sub_2C9()
- {
- if (((l_326 > 0) && (VEHICLE::IS_VEHICLE_DRIVEABLE(l_129, 0) != 0)) && ((PED::IS_PED_INJURED(l_128) == 0) && (PED::IS_PED_IN_VEHICLE(l_128, l_129, 0) == 0)))
- {
- sub_2CEB();
- }
- bool flag1 = ENTITY::DOES_ENTITY_EXIST(l_128) == 0;
- if (flag1 | ENTITY::IS_ENTITY_DEAD(l_128))
- {
- sub_2CDE(15);
- }
- switch (l_326)
- {
- case 0:
- if (l_327 != 0)
- {
- l_326 = 1;
- }
- break;
- case 1:
- sub_290D();
- break;
- case 2:
- sub_27BA();
- break;
- case 3:
- sub_2318();
- break;
- case 4:
- sub_1DB2();
- break;
- case 5:
- sub_1908();
- break;
- case 6:
- if (PED::IS_PED_INJURED(l_128) != 0)
- {
- sub_2CEB();
- break;
- }
- if (AI::GET_SCRIPT_TASK_STATUS(l_127, 0xE763797) == 7)
- {
- l_98 = GAMEPLAY::GET_GAME_TIMER();
- l_99 = l_98 - l_97;
- bool flag2 = l_99 >= 10000;
- if (flag2 | (ENTITY::IS_ENTITY_AT_ENTITY(l_127, l_128, 12f, 12f, 5f, 0, 1, 0) == 0))
- {
- sub_F6C6("prostitute WAITING TO END");
- sub_2CEB();
- }
- }
- break;
- case 7:
- if (PATHFIND::0x86E80A17(sub_1841(0), sub_1841(1), sub_1841(2), sub_1841(3)) == 0)
- {
- PATHFIND::0x2CDA5012(sub_1841(0), sub_1841(1), sub_1841(2), sub_1841(3));
- }
- else
- {
- struct _s = &l_121;
- AI::TASK_VEHICLE_DRIVE_TO_COORD(l_128, l_129, rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), (VEHICLE::0x7D1A0616(l_129) * 0.65f), 0, 0, 0xC01AB, 4f, -1f);
- l_326 = 8;
- }
- break;
- case 8:
- {
- struct _s = &l_121;
- struct _s = ENTITY::GET_ENTITY_COORDS(l_127, 1);
- bool flag3 = SYSTEM::VDIST2(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8)) < 25f;
- if (flag3 & (AI::GET_SCRIPT_TASK_STATUS(l_128, 0x93A5526E) != 1))
- {
- l_328 = GAMEPLAY::GET_RANDOM_INT_IN_RANGE(1, 3);
- l_326 = 11;
- }
- if (sub_1755(l_128) != 0)
- {
- sub_2CDE(15);
- }
- break;
- }
- case 11:
- sub_507();
- break;
- case 12:
- sub_2CDE(15);
- break;
- case 15:
- {
- var num1 = ENTITY::DOES_ENTITY_EXIST(l_127);
- if ((num1 & ENTITY::DOES_ENTITY_EXIST(l_129)) != 0)
- {
- if (PED::IS_PED_IN_VEHICLE(l_127, l_129, 0) != 0)
- {
- if ((ENTITY::IS_ENTITY_DEAD(l_128) == 0) && (AI::GET_SCRIPT_TASK_STATUS(l_128, 0xCE98FBB3) != 1))
- {
- AI::TASK_LEAVE_ANY_VEHICLE(l_127, 0, 0x1000000);
- }
- }
- else
- {
- sub_2B3(0);
- }
- }
- break;
- }
- }
- }
- void sub_507()
- {
- switch (l_333)
- {
- case 0:
- PED::SET_SCRIPTED_ANIM_SEAT_OFFSET(l_127, 0.916f);
- if (sub_EB3(l_128) != 0)
- {
- sub_E7E(&l_150);
- l_333 = 1;
- }
- break;
- case 1:
- sub_E06(l_129);
- if (sub_DC6(l_128) != 0)
- {
- sub_662(&l_153, "pbproau", "pbpro_pic", 4, 0, 0, 0);
- sub_2CDE(15);
- }
- if ((sub_5D9(&l_150) > 1f) && (AI::GET_SCRIPT_TASK_STATUS(l_127, 0xE763797) == 7))
- {
- sub_5B4(&l_85, 512);
- l_333 = 3;
- }
- break;
- case 3:
- sub_2CDE(15);
- break;
- case 5:
- sub_2CDE(15);
- break;
- }
- }
- void sub_5B4(var A_0, var A_1)
- {
- sub_5C4(A_0, A_1);
- }
- void sub_5C4(var A_0, var A_1)
- {
- wPtr(rPtr(A_0) - (rPtr(A_0) & A_1), A_0);
- }
- var sub_5D9(var A_0)
- {
- if (sub_652(A_0) != 0)
- {
- if (sub_642(A_0) != 0)
- {
- return rPtr((A_0) + 8);
- }
- return (sub_610() - rPtr((A_0) + 4));
- }
- return rPtr((A_0) + 4);
- }
- var sub_610()
- {
- if (NETWORK::NETWORK_IS_GAME_IN_PROGRESS() != 0)
- {
- return (SYSTEM::TO_FLOAT(NETWORK::GET_NETWORK_TIME()) / 1000f);
- }
- return (SYSTEM::TO_FLOAT(GAMEPLAY::GET_GAME_TIMER()) / 1000f);
- }
- var sub_642(var A_0)
- {
- return GAMEPLAY::IS_BIT_SET(rPtr(A_0), 2);
- }
- var sub_652(var A_0)
- {
- return GAMEPLAY::IS_BIT_SET(rPtr(A_0), 1);
- }
- var sub_662(var A_0, var A_1, var A_2, var A_3, var A_4, var A_5, var A_6)
- {
- sub_D70(A_0, 143, A_1, A_4, A_5, A_6);
- if ((A_3 > 7) && (A_3 < 12))
- {
- A_3 = 7;
- }
- g_11735 = 0;
- g_11737 = 0;
- g_11742 = 0;
- g_12699 = 0;
- g_12701 = 0;
- g_12705 = 0;
- g_2621441 = 0;
- return sub_6B0(A_2, A_3, 0);
- }
- var sub_6B0(var A_0, var A_1, var A_2)
- {
- g_11729 = 0;
- bool flag1 = g_11728 == 0;
- if (!(flag1 | (g_11730 == 2)))
- {
- if (g_11728 != 5)
- {
- bool flag2 = A_1 < g_11730;
- if (flag2 | (A_1 == g_11730))
- {
- return 0;
- }
- if (A_1 != 2)
- {
- sub_D19();
- }
- }
- return 0;
- }
- if (g_11728 != 0)
- {
- if (A_1 <= g_11730)
- {
- return 0;
- }
- if (g_11735 != 0)
- {
- sub_D19();
- return 0;
- }
- AUDIO::STOP_SCRIPTED_CONVERSATION(0);
- wPtr(3, (&g_10433) + 1);
- g_11728 = 0;
- g_11729 = 1;
- g_11761 = 0;
- g_11724 = 0;
- g_11725 = 0;
- g_11739 = 0;
- }
- if (AUDIO::IS_SCRIPTED_CONVERSATION_ONGOING() != 0)
- {
- return 0;
- }
- if (sub_CDE(8, -1) != 0)
- {
- return 0;
- }
- struct _s = &g_11778;
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 12), rPtrOfs(_s, 16), rPtrOfs(_s, 20), 6, &g_11784);
- sub_C86();
- struct _s = &g_11182;
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 12), rPtrOfs(_s, 16), rPtrOfs(_s, 20), rPtrOfs(_s, 24), rPtrOfs(_s, 28), rPtrOfs(_s, 32), rPtrOfs(_s, 36), rPtrOfs(_s, 40), rPtrOfs(_s, 44), rPtrOfs(_s, 48), rPtrOfs(_s, 52), rPtrOfs(_s, 56), rPtrOfs(_s, 60), rPtrOfs(_s, 64), rPtrOfs(_s, 68), rPtrOfs(_s, 72), rPtrOfs(_s, 76), rPtrOfs(_s, 80), rPtrOfs(_s, 84), rPtrOfs(_s, 88), rPtrOfs(_s, 92), rPtrOfs(_s, 96), rPtrOfs(_s, 100), rPtrOfs(_s, 104), rPtrOfs(_s, 108), rPtrOfs(_s, 112), rPtrOfs(_s, 116), rPtrOfs(_s, 120), rPtrOfs(_s, 124), rPtrOfs(_s, 128), rPtrOfs(_s, 132), rPtrOfs(_s, 136), rPtrOfs(_s, 140), rPtrOfs(_s, 144), rPtrOfs(_s, 148), rPtrOfs(_s, 152), rPtrOfs(_s, 156), rPtrOfs(_s, 160), rPtrOfs(_s, 164), rPtrOfs(_s, 168), rPtrOfs(_s, 172), rPtrOfs(_s, 176), rPtrOfs(_s, 180), rPtrOfs(_s, 184), rPtrOfs(_s, 188), rPtrOfs(_s, 192), rPtrOfs(_s, 196), rPtrOfs(_s, 200), rPtrOfs(_s, 204), rPtrOfs(_s, 208), rPtrOfs(_s, 212), rPtrOfs(_s, 216), rPtrOfs(_s, 220), rPtrOfs(_s, 224), rPtrOfs(_s, 228), rPtrOfs(_s, 232), rPtrOfs(_s, 236), rPtrOfs(_s, 240), rPtrOfs(_s, 244), rPtrOfs(_s, 248), rPtrOfs(_s, 252), rPtrOfs(_s, 256), rPtrOfs(_s, 260), rPtrOfs(_s, 264), rPtrOfs(_s, 268), rPtrOfs(_s, 272), rPtrOfs(_s, 276), rPtrOfs(_s, 280), rPtrOfs(_s, 284), rPtrOfs(_s, 288), rPtrOfs(_s, 292), rPtrOfs(_s, 296), rPtrOfs(_s, 300), rPtrOfs(_s, 304), rPtrOfs(_s, 308), rPtrOfs(_s, 312), rPtrOfs(_s, 316), rPtrOfs(_s, 320), rPtrOfs(_s, 324), rPtrOfs(_s, 328), rPtrOfs(_s, 332), rPtrOfs(_s, 336), rPtrOfs(_s, 340), rPtrOfs(_s, 344), rPtrOfs(_s, 348), rPtrOfs(_s, 352), rPtrOfs(_s, 356), rPtrOfs(_s, 360), rPtrOfs(_s, 364), rPtrOfs(_s, 368), rPtrOfs(_s, 372), rPtrOfs(_s, 376), rPtrOfs(_s, 380), rPtrOfs(_s, 384), rPtrOfs(_s, 388), rPtrOfs(_s, 392), rPtrOfs(_s, 396), rPtrOfs(_s, 400), rPtrOfs(_s, 404), rPtrOfs(_s, 408), rPtrOfs(_s, 412), rPtrOfs(_s, 416), rPtrOfs(_s, 420), rPtrOfs(_s, 424), rPtrOfs(_s, 428), rPtrOfs(_s, 432), rPtrOfs(_s, 436), rPtrOfs(_s, 440), rPtrOfs(_s, 444), rPtrOfs(_s, 448), rPtrOfs(_s, 452), rPtrOfs(_s, 456), rPtrOfs(_s, 460), rPtrOfs(_s, 464), rPtrOfs(_s, 468), rPtrOfs(_s, 472), rPtrOfs(_s, 476), rPtrOfs(_s, 480), rPtrOfs(_s, 484), rPtrOfs(_s, 488), rPtrOfs(_s, 492), rPtrOfs(_s, 496), rPtrOfs(_s, 500), rPtrOfs(_s, 504), rPtrOfs(_s, 508), rPtrOfs(_s, 512), rPtrOfs(_s, 516), rPtrOfs(_s, 520), rPtrOfs(_s, 524), rPtrOfs(_s, 528), rPtrOfs(_s, 532), rPtrOfs(_s, 536), rPtrOfs(_s, 540), rPtrOfs(_s, 544), rPtrOfs(_s, 548), rPtrOfs(_s, 552), rPtrOfs(_s, 556), rPtrOfs(_s, 560), rPtrOfs(_s, 564), rPtrOfs(_s, 568), rPtrOfs(_s, 572), rPtrOfs(_s, 576), rPtrOfs(_s, 580), rPtrOfs(_s, 584), rPtrOfs(_s, 588), rPtrOfs(_s, 592), rPtrOfs(_s, 596), rPtrOfs(_s, 600), rPtrOfs(_s, 604), rPtrOfs(_s, 608), rPtrOfs(_s, 612), rPtrOfs(_s, 616), rPtrOfs(_s, 620), rPtrOfs(_s, 624), rPtrOfs(_s, 628), rPtrOfs(_s, 632), rPtrOfs(_s, 636), rPtrOfs(_s, 640), rPtrOfs(_s, 644), rPtrOfs(_s, 648), rPtrOfs(_s, 652), rPtrOfs(_s, 656), 165, &g_11017);
- g_11734 = g_11735;
- g_11741 = g_11742;
- g_2621442 = g_2621441;
- struct _s = &g_11749;
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 12), rPtrOfs(_s, 16), rPtrOfs(_s, 20), 6, &g_11743);
- g_11736 = g_11737;
- g_12698 = g_12699;
- struct _s = &g_12712;
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 12), rPtrOfs(_s, 16), rPtrOfs(_s, 20), 6, &g_12706);
- g_12700 = g_12701;
- g_12702 = g_12703;
- g_12704 = g_12705;
- wPtr(g_12697, (&g_11347) + 370);
- wPtr(g_12695, (&g_11347) + 368);
- wPtr(g_12696, (&g_11347) + 369);
- g_11724 = g_11725;
- if (g_11734 != 0)
- {
- GAMEPLAY::CLEAR_BIT(&g_1686, 20);
- GAMEPLAY::CLEAR_BIT(&g_1687, 17);
- GAMEPLAY::CLEAR_BIT(&g_1688, 0);
- if (A_2 != null)
- {
- sub_AF5();
- if ((rPtr(getElemPtr(0, getElemPtr(g_10433, &g_2480, 7872), 1124) + 1036) == 2) && (A_1 != 13))
- {
- return 0;
- }
- if (rPtr((&g_10433) + 1) > 3)
- {
- return 0;
- }
- }
- if (g_10399 == 1)
- {
- return 0;
- }
- if (PLAYER::IS_PLAYER_PLAYING(PLAYER::PLAYER_ID()) != 0)
- {
- if (PED::IS_PED_IN_MELEE_COMBAT(PLAYER::PLAYER_PED_ID()) != 0)
- {
- return 0;
- }
- if (sub_A5D() != 0)
- {
- return 0;
- }
- if (AI::IS_PED_SPRINTING(PLAYER::PLAYER_PED_ID()) != 0)
- {
- return 0;
- }
- if (PED::IS_PED_RAGDOLL(PLAYER::PLAYER_PED_ID()) != 0)
- {
- return 0;
- }
- if (PED::0xCD71F11B(PLAYER::PLAYER_PED_ID()) != 0)
- {
- return 0;
- }
- if (WEAPON::0x8DDD0B5B(PLAYER::PLAYER_PED_ID(), 0xFBAB5776) != 0)
- {
- return 0;
- }
- if (g_59842 == 0)
- {
- if (ENTITY::IS_ENTITY_IN_WATER(PLAYER::PLAYER_PED_ID()) != 0)
- {
- return 0;
- }
- if (PLAYER::IS_PLAYER_CLIMBING(PLAYER::PLAYER_ID()) != 0)
- {
- return 0;
- }
- if (PED::IS_PED_PLANTING_BOMB(PLAYER::PLAYER_PED_ID()) != 0)
- {
- return 0;
- }
- if (PLAYER::IS_SPECIAL_ABILITY_ACTIVE(PLAYER::PLAYER_ID()) != 0)
- {
- return 0;
- }
- }
- }
- if (sub_A36() != 0)
- {
- return 0;
- }
- switch (rPtr((&g_10433) + 1))
- {
- case 7:
- return 0;
- case 8:
- return 0;
- }
- if (GAMEPLAY::IS_BIT_SET(g_1686, 9) != 0)
- {
- return 0;
- }
- sub_9A3();
- g_11738 = A_2;
- }
- g_11730 = A_1;
- strcpy(A_0, &g_11347, 24);
- g_10594 = 0;
- sub_971();
- return 1;
- }
- void sub_971()
- {
- var num3 = 0;
- while (true)
- {
- if (num3 > 69)
- {
- break;
- }
- strcpy("", getElemPtr(num3, &g_10596, 24), 24);
- num3++;
- }
- AUDIO::STOP_SCRIPTED_CONVERSATION(0);
- g_11728 = 1;
- }
- void sub_9A3()
- {
- g_11761 = g_11760;
- g_11755 = g_11756;
- struct _s = &g_11790;
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 12), rPtrOfs(_s, 16), rPtrOfs(_s, 20), 6, &g_11802);
- struct _s = &g_11796;
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 12), rPtrOfs(_s, 16), rPtrOfs(_s, 20), 6, &g_11808);
- g_11763 = g_11762;
- struct _s = &g_11814;
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 12), rPtrOfs(_s, 16), rPtrOfs(_s, 20), 6, &g_11832);
- struct _s = &g_11820;
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 12), rPtrOfs(_s, 16), rPtrOfs(_s, 20), 6, &g_11838);
- struct _s = &g_11826;
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 12), rPtrOfs(_s, 16), rPtrOfs(_s, 20), 6, &g_11844);
- struct _s = &g_11856;
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 12), rPtrOfs(_s, 16), rPtrOfs(_s, 20), 6, &g_11850);
- g_1477 = g_1478;
- g_1479 = g_1480;
- g_11739 = g_11740;
- g_11741 = g_11742;
- struct _s = &g_11749;
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 12), rPtrOfs(_s, 16), rPtrOfs(_s, 20), 6, &g_11743);
- g_11732 = g_11733;
- g_12724 = 0;
- g_11757 = 0;
- g_11758 = 0;
- GAMEPLAY::CLEAR_BIT(&g_1687, 16);
- }
- var sub_A36()
- {
- bool flag1 = rPtr((&g_10433) + 1) == 1;
- if (flag1 | (rPtr((&g_10433) + 1) == 0))
- {
- return 1;
- }
- return 0;
- }
- var sub_A5D()
- {
- if (g_59842 != 0)
- {
- var num4;
- var num3 = 0;
- WEAPON::GET_CURRENT_PED_WEAPON(PLAYER::PLAYER_PED_ID(), &num4, 1);
- if (PLAYER::IS_PLAYER_PLAYING(PLAYER::PLAYER_ID()) != 0)
- {
- bool flag1 = num4 == 0x5FC3C11;
- bool flag2 = flag1 | (num4 == 0xC472FE2);
- if (flag2 | (num4 == 0x33058E22))
- {
- num3 = 1;
- }
- }
- var num1 = CAM::IS_AIM_CAM_ACTIVE();
- if ((num1 & (num3 == 1)) != 0)
- {
- return 1;
- }
- return 0;
- }
- if (PLAYER::IS_PLAYER_PLAYING(PLAYER::PLAYER_ID()) != 0)
- {
- if (PED::GET_PED_CONFIG_FLAG(PLAYER::PLAYER_PED_ID(), 78, 1) != 0)
- {
- return 1;
- }
- return 0;
- }
- return 1;
- }
- void sub_AF5()
- {
- g_10433 = sub_B25();
- if (g_10433 == 143)
- {
- g_10433 = 3;
- }
- if (g_59842 != 0)
- {
- g_10433 = 3;
- }
- if (g_10433 > 3)
- {
- g_10433 = 3;
- }
- }
- var sub_B25()
- {
- sub_B3E();
- return rPtr((((&g_86838) + 1729) + 539) + 2659);
- }
- void sub_B3E()
- {
- if (ENTITY::DOES_ENTITY_EXIST(PLAYER::PLAYER_PED_ID()) != 0)
- {
- if (sub_C5C(rPtr((((&g_86838) + 1729) + 539) + 2659)) == ENTITY::GET_ENTITY_MODEL(PLAYER::PLAYER_PED_ID()))
- {
- wPtr(rPtr((((&g_86838) + 1729) + 539) + 2659), (((&g_86838) + 1729) + 539) + 2661);
- return;
- }
- var num3 = sub_C1F(PLAYER::PLAYER_PED_ID());
- if (sub_C13(num3) != 0)
- {
- bool flag1 = rPtr((((&g_86838) + 1729) + 539) + 2659) != num3;
- if (flag1 & sub_C13(rPtr((((&g_86838) + 1729) + 539) + 2659)))
- {
- wPtr(rPtr((((&g_86838) + 1729) + 539) + 2659), (((&g_86838) + 1729) + 539) + 2660);
- }
- wPtr(num3, (((&g_86838) + 1729) + 539) + 2661);
- wPtr(num3, (((&g_86838) + 1729) + 539) + 2659);
- return;
- }
- }
- wPtr(143, (((&g_86838) + 1729) + 539) + 2659);
- }
- var sub_C13(var A_0)
- {
- return (A_0 < 3);
- }
- var sub_C1F(var A_0)
- {
- if (ENTITY::DOES_ENTITY_EXIST(A_0) != 0)
- {
- var num4 = ENTITY::GET_ENTITY_MODEL(A_0);
- for (var i = 0; i <= 2; i++)
- {
- if (sub_C5C(i) == num4)
- {
- return i;
- }
- }
- }
- return 143;
- }
- var sub_C5C(var A_0)
- {
- if (sub_C13(A_0) != 0)
- {
- return getElem(A_0, (&g_86838) + 23936, 116);
- }
- return 0;
- }
- void sub_C86()
- {
- var num3 = 0;
- while (true)
- {
- if (num3 > 15)
- {
- break;
- }
- setElem(0, num3, &g_11017, 40);
- strcpy("", getElemPtr(num3, &g_11017, 40) + 4, 24);
- wPtr(0, getElemPtr(num3, &g_11017, 40) + 28);
- wPtr(0, getElemPtr(num3, &g_11017, 40) + 32);
- num3++;
- }
- wPtr(-99, (&g_11017) + 161);
- setStruct(0f, 0f, 0f, 3, (&g_11017) + 162);
- }
- var sub_CDE(var A_0, var A_1)
- {
- switch (A_0)
- {
- case 5:
- if (A_1 <= -1)
- {
- break;
- }
- return getElem(A_1, (&g_1355279) + 147, 4);
- }
- return GAMEPLAY::IS_BIT_SET(rPtr((&g_1355279) + 566), A_0);
- }
- void sub_D19()
- {
- AUDIO::RESTART_SCRIPTED_CONVERSATION();
- g_12719 = 0;
- var num1 = AUDIO::IS_MOBILE_PHONE_CALL_ONGOING();
- var num6 = num1 | (rPtr((&g_10433) + 1) == 9);
- if ((num6 | (g_10432 == 1)) != 0)
- {
- AUDIO::STOP_SCRIPTED_CONVERSATION(0);
- g_11728 = 6;
- wPtr(3, (&g_10433) + 1);
- }
- else if (AUDIO::IS_SCRIPTED_CONVERSATION_ONGOING() != 0)
- {
- AUDIO::STOP_SCRIPTED_CONVERSATION(1);
- g_11728 = 6;
- }
- }
- void sub_D70(var A_0, var A_1, var A_2, var A_3, var A_4, var A_5)
- {
- struct _s = A_0;
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 12), rPtrOfs(_s, 16), rPtrOfs(_s, 20), rPtrOfs(_s, 24), rPtrOfs(_s, 28), rPtrOfs(_s, 32), rPtrOfs(_s, 36), rPtrOfs(_s, 40), rPtrOfs(_s, 44), rPtrOfs(_s, 48), rPtrOfs(_s, 52), rPtrOfs(_s, 56), rPtrOfs(_s, 60), rPtrOfs(_s, 64), rPtrOfs(_s, 68), rPtrOfs(_s, 72), rPtrOfs(_s, 76), rPtrOfs(_s, 80), rPtrOfs(_s, 84), rPtrOfs(_s, 88), rPtrOfs(_s, 92), rPtrOfs(_s, 96), rPtrOfs(_s, 100), rPtrOfs(_s, 104), rPtrOfs(_s, 108), rPtrOfs(_s, 112), rPtrOfs(_s, 116), rPtrOfs(_s, 120), rPtrOfs(_s, 124), rPtrOfs(_s, 128), rPtrOfs(_s, 132), rPtrOfs(_s, 136), rPtrOfs(_s, 140), rPtrOfs(_s, 144), rPtrOfs(_s, 148), rPtrOfs(_s, 152), rPtrOfs(_s, 156), rPtrOfs(_s, 160), rPtrOfs(_s, 164), rPtrOfs(_s, 168), rPtrOfs(_s, 172), rPtrOfs(_s, 176), rPtrOfs(_s, 180), rPtrOfs(_s, 184), rPtrOfs(_s, 188), rPtrOfs(_s, 192), rPtrOfs(_s, 196), rPtrOfs(_s, 200), rPtrOfs(_s, 204), rPtrOfs(_s, 208), rPtrOfs(_s, 212), rPtrOfs(_s, 216), rPtrOfs(_s, 220), rPtrOfs(_s, 224), rPtrOfs(_s, 228), rPtrOfs(_s, 232), rPtrOfs(_s, 236), rPtrOfs(_s, 240), rPtrOfs(_s, 244), rPtrOfs(_s, 248), rPtrOfs(_s, 252), rPtrOfs(_s, 256), rPtrOfs(_s, 260), rPtrOfs(_s, 264), rPtrOfs(_s, 268), rPtrOfs(_s, 272), rPtrOfs(_s, 276), rPtrOfs(_s, 280), rPtrOfs(_s, 284), rPtrOfs(_s, 288), rPtrOfs(_s, 292), rPtrOfs(_s, 296), rPtrOfs(_s, 300), rPtrOfs(_s, 304), rPtrOfs(_s, 308), rPtrOfs(_s, 312), rPtrOfs(_s, 316), rPtrOfs(_s, 320), rPtrOfs(_s, 324), rPtrOfs(_s, 328), rPtrOfs(_s, 332), rPtrOfs(_s, 336), rPtrOfs(_s, 340), rPtrOfs(_s, 344), rPtrOfs(_s, 348), rPtrOfs(_s, 352), rPtrOfs(_s, 356), rPtrOfs(_s, 360), rPtrOfs(_s, 364), rPtrOfs(_s, 368), rPtrOfs(_s, 372), rPtrOfs(_s, 376), rPtrOfs(_s, 380), rPtrOfs(_s, 384), rPtrOfs(_s, 388), rPtrOfs(_s, 392), rPtrOfs(_s, 396), rPtrOfs(_s, 400), rPtrOfs(_s, 404), rPtrOfs(_s, 408), rPtrOfs(_s, 412), rPtrOfs(_s, 416), rPtrOfs(_s, 420), rPtrOfs(_s, 424), rPtrOfs(_s, 428), rPtrOfs(_s, 432), rPtrOfs(_s, 436), rPtrOfs(_s, 440), rPtrOfs(_s, 444), rPtrOfs(_s, 448), rPtrOfs(_s, 452), rPtrOfs(_s, 456), rPtrOfs(_s, 460), rPtrOfs(_s, 464), rPtrOfs(_s, 468), rPtrOfs(_s, 472), rPtrOfs(_s, 476), rPtrOfs(_s, 480), rPtrOfs(_s, 484), rPtrOfs(_s, 488), rPtrOfs(_s, 492), rPtrOfs(_s, 496), rPtrOfs(_s, 500), rPtrOfs(_s, 504), rPtrOfs(_s, 508), rPtrOfs(_s, 512), rPtrOfs(_s, 516), rPtrOfs(_s, 520), rPtrOfs(_s, 524), rPtrOfs(_s, 528), rPtrOfs(_s, 532), rPtrOfs(_s, 536), rPtrOfs(_s, 540), rPtrOfs(_s, 544), rPtrOfs(_s, 548), rPtrOfs(_s, 552), rPtrOfs(_s, 556), rPtrOfs(_s, 560), rPtrOfs(_s, 564), rPtrOfs(_s, 568), rPtrOfs(_s, 572), rPtrOfs(_s, 576), rPtrOfs(_s, 580), rPtrOfs(_s, 584), rPtrOfs(_s, 588), rPtrOfs(_s, 592), rPtrOfs(_s, 596), rPtrOfs(_s, 600), rPtrOfs(_s, 604), rPtrOfs(_s, 608), rPtrOfs(_s, 612), rPtrOfs(_s, 616), rPtrOfs(_s, 620), rPtrOfs(_s, 624), rPtrOfs(_s, 628), rPtrOfs(_s, 632), rPtrOfs(_s, 636), rPtrOfs(_s, 640), rPtrOfs(_s, 644), rPtrOfs(_s, 648), rPtrOfs(_s, 652), rPtrOfs(_s, 656), 165, &g_11182);
- g_1478 = A_1;
- strcpy(A_2, &g_11778, 24);
- g_12697 = A_5;
- if (A_3 == 0)
- {
- g_12695 = 1;
- g_12693 = 0;
- }
- else
- {
- g_12695 = 0;
- g_12693 = 1;
- }
- if (A_4 == 0)
- {
- g_12696 = 1;
- g_12694 = 0;
- }
- else
- {
- g_12696 = 0;
- g_12694 = 1;
- }
- }
- var sub_DC6(var A_0)
- {
- if (sub_DF0() != 0)
- {
- struct _s = ENTITY::GET_ENTITY_COORDS(A_0, 1);
- if (ENTITY::0xEA127CBC(ENTITY::GET_ENTITY_MODEL(A_0), rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 1) == 0)
- {
- return 1;
- }
- }
- return 0;
- }
- var sub_DF0()
- {
- if (g_12744 != 0)
- {
- return 1;
- }
- return 0;
- }
- void sub_E06(var A_0)
- {
- bool flag1 = l_328 != 1;
- if (!(flag1 & (l_328 != 2)) && (sub_E6B() != 0))
- {
- sub_E30(&A_0);
- }
- }
- void sub_E30(var A_0)
- {
- if (VEHICLE::IS_VEHICLE_DRIVEABLE(rPtr(A_0), 0) != 0)
- {
- var num3;
- var num6;
- setStruct(0f, 0f, -0.25f, 3, &num3);
- setStruct(0f, 0f, 0f, 3, &num6);
- struct _s = &num3;
- struct _s = &num6;
- ENTITY::APPLY_FORCE_TO_ENTITY(rPtr(A_0), 1, rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 0, 1, 1, 1, 1, 0);
- }
- }
- var sub_E6B()
- {
- return ENTITY::0x66571CA0(l_127, 0x3438B9BD);
- }
- void sub_E7E(var A_0)
- {
- sub_E8D(A_0, 0f);
- }
- void sub_E8D(var A_0, var A_1)
- {
- wPtr(sub_610() - A_1, (A_0) + 4);
- GAMEPLAY::SET_BIT(A_0, 1);
- GAMEPLAY::CLEAR_BIT(A_0, 2);
- wPtr(0f, (A_0) + 8);
- }
- var sub_EB3(var A_0)
- {
- if (GAMEPLAY::IS_STRING_NULL_OR_EMPTY(l_96) != 0)
- {
- l_96 = sub_16FB(A_0);
- return 0;
- }
- if (STREAMING::HAS_ANIM_DICT_LOADED(l_96) == 0)
- {
- return 0;
- }
- sub_F3E(l_127, sub_16EE(), 1, SYSTEM::FLOOR((15000f * (1f + (SYSTEM::TO_FLOAT(l_105) / 2f)))));
- if (A_0 == PLAYER::PLAYER_PED_ID())
- {
- sub_F3E(A_0, sub_16EE(), 0, SYSTEM::FLOOR((15000f * (1f + (SYSTEM::TO_FLOAT(l_105) / 2f)))));
- }
- sub_F6C6("anim_dict has loaded, triggering anims?");
- sub_F4AD(&l_85, 512);
- return 1;
- }
- void sub_F3E(var A_0, var A_1, var A_2, var A_3)
- {
- if (ENTITY::IS_ENTITY_DEAD(A_0) == 0)
- {
- var num3 = PED::GET_VEHICLE_PED_IS_IN(A_0, 1);
- if (VEHICLE::IS_VEHICLE_DRIVEABLE(num3, 0) != 0)
- {
- var num4 = sub_16AB(num3);
- var num5 = sub_16FB(A_0);
- if (STREAMING::HAS_ANIM_DICT_LOADED(num5) == 0)
- {
- STREAMING::REQUEST_ANIM_DICT(num5);
- }
- else
- {
- var num6;
- AI::OPEN_SEQUENCE_TASK(&num6);
- AI::TASK_PLAY_ANIM(0, num5, sub_104D(0, A_2, A_1, num4), 8f, -8f, -1, 0, 0, 0, 0, 0);
- AI::TASK_PLAY_ANIM(0, num5, sub_104D(1, A_2, A_1, num4), 8f, -4f, -1, 0, 0, 0, 0, 0);
- AI::TASK_PLAY_ANIM(0, num5, sub_104D(2, A_2, A_1, num4), 8f, -4f, A_3, 1, 0, 0, 0, 0);
- AI::TASK_PLAY_ANIM(0, num5, sub_104D(3, A_2, A_1, num4), 8f, -4f, -1, 0, 0, 0, 0, 0);
- AI::TASK_PLAY_ANIM(0, num5, sub_104D(4, A_2, A_1, num4), 4f, -2f, -1, 0, 0, 0, 0, 0);
- AI::CLOSE_SEQUENCE_TASK(num6);
- AI::TASK_PERFORM_SEQUENCE(A_0, num6);
- AI::CLEAR_SEQUENCE_TASK(&num6);
- }
- }
- }
- }
- var sub_104D(var A_0, var A_1, var A_2, var A_3)
- {
- var num3 = "";
- switch (A_0)
- {
- case 0:
- if (A_3 == null)
- {
- if (A_2 != null)
- {
- if (A_1 != null)
- {
- num3 = sub_132F(18);
- }
- else
- {
- num3 = sub_132F(23);
- }
- }
- else if (A_1 != null)
- {
- num3 = sub_132F(8);
- }
- else
- {
- num3 = sub_132F(13);
- }
- break;
- }
- if (A_2 == null)
- {
- if (A_1 != null)
- {
- num3 = sub_14ED(8);
- }
- else
- {
- num3 = sub_14ED(13);
- }
- break;
- }
- if (A_1 == null)
- {
- num3 = sub_14ED(23);
- break;
- }
- num3 = sub_14ED(18);
- break;
- case 1:
- if (A_3 == null)
- {
- if (A_2 != null)
- {
- if (A_1 != null)
- {
- num3 = sub_132F(19);
- }
- else
- {
- num3 = sub_132F(24);
- }
- }
- else if (A_1 != null)
- {
- num3 = sub_132F(9);
- }
- else
- {
- num3 = sub_132F(14);
- }
- break;
- }
- if (A_2 == null)
- {
- if (A_1 != null)
- {
- num3 = sub_14ED(9);
- }
- else
- {
- num3 = sub_14ED(14);
- }
- break;
- }
- if (A_1 == null)
- {
- num3 = sub_14ED(24);
- break;
- }
- num3 = sub_14ED(19);
- break;
- case 2:
- if (A_3 == null)
- {
- if (A_2 != null)
- {
- if (A_1 != null)
- {
- num3 = sub_132F(20);
- }
- else
- {
- num3 = sub_132F(25);
- }
- }
- else if (A_1 != null)
- {
- num3 = sub_132F(10);
- }
- else
- {
- num3 = sub_132F(15);
- }
- break;
- }
- if (A_2 == null)
- {
- if (A_1 != null)
- {
- num3 = sub_14ED(10);
- }
- else
- {
- num3 = sub_14ED(15);
- }
- break;
- }
- if (A_1 == null)
- {
- num3 = sub_14ED(25);
- break;
- }
- num3 = sub_14ED(20);
- break;
- case 3:
- if (A_3 == null)
- {
- if (A_2 != null)
- {
- if (A_1 != null)
- {
- num3 = sub_132F(21);
- }
- else
- {
- num3 = sub_132F(26);
- }
- }
- else if (A_1 != null)
- {
- num3 = sub_132F(11);
- }
- else
- {
- num3 = sub_132F(16);
- }
- break;
- }
- if (A_2 == null)
- {
- if (A_1 != null)
- {
- num3 = sub_14ED(11);
- }
- else
- {
- num3 = sub_14ED(16);
- }
- break;
- }
- if (A_1 == null)
- {
- num3 = sub_14ED(26);
- break;
- }
- num3 = sub_14ED(21);
- break;
- case 4:
- if (A_3 == null)
- {
- if (A_2 != null)
- {
- if (A_1 != null)
- {
- num3 = sub_132F(22);
- }
- else
- {
- num3 = sub_132F(27);
- }
- }
- else if (A_1 != null)
- {
- num3 = sub_132F(12);
- }
- else
- {
- num3 = sub_132F(17);
- }
- break;
- }
- if (A_2 == null)
- {
- if (A_1 != null)
- {
- num3 = sub_14ED(12);
- }
- else
- {
- num3 = sub_14ED(17);
- }
- break;
- }
- if (A_1 == null)
- {
- num3 = sub_14ED(27);
- break;
- }
- num3 = sub_14ED(22);
- break;
- case 5:
- if (A_3 == null)
- {
- if (A_1 != null)
- {
- num3 = sub_132F(3);
- }
- else
- {
- num3 = sub_132F(2);
- }
- break;
- }
- if (A_1 == null)
- {
- num3 = sub_14ED(2);
- break;
- }
- num3 = sub_14ED(3);
- break;
- }
- return num3;
- }
- var sub_132F(var A_0)
- {
- var num3;
- switch (A_0)
- {
- case 0:
- num3 = "into_proposition_male";
- break;
- case 1:
- num3 = "into_proposition_prostitute";
- break;
- case 2:
- num3 = "proposition_loop_male";
- break;
- case 3:
- num3 = "proposition_loop_prostitute";
- break;
- case 4:
- num3 = "proposition_to_exit_male";
- break;
- case 5:
- num3 = "prop_to_sit_alt_prostitute";
- break;
- case 6:
- num3 = "prop_to_sit_male";
- break;
- case 7:
- num3 = "prop_to_sit_prostitute";
- break;
- case 8:
- num3 = "proposition_to_sex_p1_prostitute";
- break;
- case 9:
- num3 = "proposition_to_sex_p2_prostitute";
- break;
- case 10:
- num3 = "sex_loop_prostitute";
- break;
- case 11:
- num3 = "sex_to_proposition_p1_prostitute";
- break;
- case 12:
- num3 = "sex_to_proposition_p2_prostitute";
- break;
- case 13:
- num3 = "proposition_to_sex_p1_male";
- break;
- case 14:
- num3 = "proposition_to_sex_p2_male";
- break;
- case 15:
- num3 = "sex_loop_male";
- break;
- case 16:
- num3 = "sex_to_proposition_p1_male";
- break;
- case 17:
- num3 = "sex_to_proposition_p2_male";
- break;
- case 18:
- num3 = "proposition_to_BJ_p1_prostitute";
- break;
- case 19:
- num3 = "proposition_to_BJ_p2_prostitute";
- break;
- case 20:
- num3 = "BJ_loop_prostitute";
- break;
- case 21:
- num3 = "BJ_to_proposition_p1_prostitute";
- break;
- case 22:
- num3 = "BJ_to_proposition_p2_prostitute";
- break;
- case 23:
- num3 = "proposition_to_BJ_p1_male";
- break;
- case 24:
- num3 = "proposition_to_BJ_p2_male";
- break;
- case 25:
- num3 = "BJ_loop_male";
- break;
- case 26:
- num3 = "BJ_to_proposition_p1_male";
- break;
- case 27:
- num3 = "BJ_to_proposition_p2_male";
- break;
- default:
- num3 = "";
- break;
- }
- return num3;
- }
- var sub_14ED(var A_0)
- {
- var num3;
- switch (A_0)
- {
- case 0:
- num3 = "low_car_sit_to_prop_player";
- break;
- case 1:
- num3 = "low_car_sit_to_prop_female";
- break;
- case 2:
- num3 = "low_car_prop_loop_player";
- break;
- case 3:
- num3 = "low_car_prop_loop_female";
- break;
- case 4:
- num3 = "low_car_prop_to_leave_player";
- break;
- case 5:
- num3 = "low_car_prop_to_sit_alt_female";
- break;
- case 6:
- num3 = "low_car_prop_to_sit_player";
- break;
- case 7:
- num3 = "low_car_prop_to_sit_female";
- break;
- case 8:
- num3 = "low_car_prop_to_sex_p1_female";
- break;
- case 9:
- num3 = "low_car_prop_to_sex_p2_female";
- break;
- case 10:
- num3 = "low_car_sex_loop_female";
- break;
- case 11:
- num3 = "low_car_sex_to_prop_p1_female";
- break;
- case 12:
- num3 = "low_car_sex_to_prop_p2_female";
- break;
- case 13:
- num3 = "low_car_prop_to_sex_p1_player";
- break;
- case 14:
- num3 = "low_car_prop_to_sex_p2_player";
- break;
- case 15:
- num3 = "low_car_sex_loop_player";
- break;
- case 16:
- num3 = "low_car_sex_to_prop_p1_player";
- break;
- case 17:
- num3 = "low_car_sex_to_prop_p2_player";
- break;
- case 18:
- num3 = "low_car_prop_to_bj_p1_female";
- break;
- case 19:
- num3 = "low_car_prop_to_bj_p2_female";
- break;
- case 20:
- num3 = "low_car_bj_loop_female";
- break;
- case 21:
- num3 = "low_car_bj_to_prop_p1_female";
- break;
- case 22:
- num3 = "low_car_bj_to_prop_p2_female";
- break;
- case 23:
- num3 = "low_car_prop_to_bj_p1_player";
- break;
- case 24:
- num3 = "low_car_prop_to_bj_p2_player";
- break;
- case 25:
- num3 = "low_car_bj_loop_player";
- break;
- case 26:
- num3 = "low_car_bj_to_prop_p1_player";
- break;
- case 27:
- num3 = "low_car_bj_to_prop_p2_player";
- break;
- default:
- num3 = "";
- break;
- }
- return num3;
- }
- var sub_16AB(var A_0)
- {
- if (VEHICLE::IS_VEHICLE_DRIVEABLE(A_0, 0) != 0)
- {
- switch (VEHICLE::GET_VEHICLE_LAYOUT_HASH(A_0))
- {
- case 0x84D77E93:
- case 0xFDB5DC9C:
- case 0xD158A20D:
- case 0x205A6F50:
- case 0x4163EC9:
- return 1;
- }
- }
- return 0;
- }
- var sub_16EE()
- {
- return (l_328 == 0);
- }
- var sub_16FB(var A_0)
- {
- if ((ENTITY::IS_ENTITY_DEAD(A_0) == 0) && (PED::IS_PED_SITTING_IN_ANY_VEHICLE(A_0) != 0))
- {
- var num3 = PED::GET_VEHICLE_PED_IS_IN(A_0, 1);
- if ((VEHICLE::IS_VEHICLE_DRIVEABLE(num3, 0) != 0) && (sub_16AB(num3) != 0))
- {
- return sub_1749();
- }
- }
- return sub_173D();
- }
- var sub_173D()
- {
- return "mini@prostitutes@sexnorm_veh";
- }
- var sub_1749()
- {
- return "mini@prostitutes@sexlow_veh";
- }
- var sub_1755(var A_0)
- {
- if (ENTITY::IS_ENTITY_DEAD(A_0) == 0)
- {
- var num1 = PED::IS_PED_BEING_JACKED(A_0);
- if ((num1 | (sub_1806(A_0, l_129, -1) == 0)) != 0)
- {
- var num3;
- struct _s = ENTITY::GET_ENTITY_COORDS(A_0, 1);
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, &num3);
- PED::SET_PED_FLEE_ATTRIBUTES(A_0, 0x30010, 1);
- if (sub_17E5() != 0)
- {
- struct _s = &num3;
- AI::TASK_SMART_FLEE_COORD(A_0, rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 250f, -1, 1, 1);
- }
- else if (ENTITY::IS_ENTITY_DEAD(PED::GET_PEDS_JACKER(A_0)) == 0)
- {
- AI::TASK_COMBAT_PED(A_0, PED::GET_PEDS_JACKER(A_0), 0, 16);
- }
- else
- {
- struct _s = &num3;
- AI::TASK_SMART_FLEE_COORD(A_0, rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 250f, -1, 1, 1);
- }
- }
- }
- return 0;
- }
- var sub_17E5()
- {
- if (GAMEPLAY::IS_BIT_SET(GAMEPLAY::GET_RANDOM_INT_IN_RANGE(0, 0xFFFF), 0) != 0)
- {
- return 1;
- }
- return 0;
- }
- var sub_1806(var A_0, var A_1, var A_2)
- {
- bool flag1 = ENTITY::IS_ENTITY_DEAD(A_0) == 0;
- if (((flag1 & (ENTITY::IS_ENTITY_DEAD(A_1) == 0)) && (PED::IS_PED_SITTING_IN_VEHICLE(A_0, A_1) != 0)) && (VEHICLE::GET_PED_IN_VEHICLE_SEAT(A_1, A_2) == A_0))
- {
- return 1;
- }
- return 0;
- }
- var sub_1841(var A_0)
- {
- var num3;
- var num6;
- struct _s = ENTITY::GET_ENTITY_COORDS(l_127, 1);
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, &num3);
- struct _s = &l_121;
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, &num6);
- if (A_0 == 0)
- {
- if (num3 < num6)
- {
- return (num3 - 20f);
- }
- return (num6 - 20f);
- }
- if (A_0 == 1)
- {
- if (rPtr((&num3) + 1) < rPtr((&num6) + 1))
- {
- return (rPtr((&num3) + 1) - 20f);
- }
- return (rPtr((&num6) + 1) - 20f);
- }
- if (A_0 == 2)
- {
- if (num3 > num6)
- {
- return (num3 + 20f);
- }
- return (num6 + 20f);
- }
- if (rPtr((&num3) + 1) > rPtr((&num6) + 1))
- {
- return (rPtr((&num3) + 1) + 20f);
- }
- return (rPtr((&num6) + 1) + 20f);
- }
- void sub_1908()
- {
- if (PED::IS_PED_INJURED(l_128) == 0)
- {
- if (VEHICLE::IS_VEHICLE_DRIVEABLE(l_129, 0) != 0)
- {
- if (PED::IS_PED_IN_VEHICLE(l_128, l_129, 0) != 0)
- {
- if (((AI::GET_SCRIPT_TASK_STATUS(l_127, 0xE763797) == 1) && (AI::GET_SEQUENCE_PROGRESS(l_127) > 0)) && (PED::IS_PED_IN_VEHICLE(l_127, l_129, 0) != 0))
- {
- sub_F6C6("prostitute WAITING TO END - DRIVING OFF (WANDER)");
- AI::OPEN_SEQUENCE_TASK(&l_132);
- AI::TASK_VEHICLE_DRIVE_WANDER(0, l_129, 10f, 0xC00AB);
- AI::CLOSE_SEQUENCE_TASK(l_132);
- AI::TASK_PERFORM_SEQUENCE(l_128, l_132);
- AI::CLEAR_SEQUENCE_TASK(&l_132);
- struct _s = ENTITY::GET_ENTITY_COORDS(l_127, 1);
- struct _s = sub_19D7(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8));
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, &l_121);
- STREAMING::REQUEST_ANIM_DICT(sub_16FB(l_127));
- l_326 = 7;
- l_97 = GAMEPLAY::GET_GAME_TIMER();
- }
- }
- else
- {
- sub_F6C6("EXIT - OTHER OUT OF THE VEHICLE");
- sub_2CEB();
- }
- }
- else
- {
- sub_F6C6("EXIT - OTHER VEHICLE DEAD");
- sub_2CEB();
- }
- }
- else
- {
- sub_F6C6("EXIT - OTHER ped INJURED");
- sub_2CEB();
- }
- }
- var sub_19D7(var A_0, var A_1, var A_2)
- {
- var num3 = 0;
- var num4 = 0;
- while (true)
- {
- if (num4 >= 32)
- {
- break;
- }
- struct _s = &A_0;
- struct _s = sub_1A1F(num4);
- struct _s = &A_0;
- struct _s = sub_1A1F(num3);
- if (SYSTEM::VDIST2(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8)) < SYSTEM::VDIST2(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8)))
- {
- num3 = num4;
- }
- num4++;
- }
- struct _s = sub_1A1F(num3);
- return buildStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8));
- }
- var sub_1A1F(var A_0)
- {
- var num3;
- switch (A_0)
- {
- case 0:
- setStruct(-1449.075f, -634.0139f, 29.094f, 3, &num3);
- break;
- case 1:
- setStruct(-1266.291f, -1361.175f, 3.222f, 3, &num3);
- break;
- case 2:
- setStruct(-227.0429f, 311.6679f, 91.1655f, 3, &num3);
- break;
- case 3:
- setStruct(-1310.978f, -235.9881f, 41.1789f, 3, &num3);
- break;
- case 4:
- setStruct(-545.299f, -874.6625f, 26.1981f, 3, &num3);
- break;
- case 5:
- setStruct(-192.1116f, -1332.385f, 30.3304f, 3, &num3);
- break;
- case 6:
- setStruct(196.6188f, -1850.396f, 26.2005f, 3, &num3);
- break;
- case 7:
- setStruct(322.9744f, -1000.23f, 28.2401f, 3, &num3);
- break;
- case 8:
- setStruct(38.824f, -98.3984f, 55.2507f, 3, &num3);
- break;
- case 9:
- setStruct(-1800.76f, -404.1213f, 43.8109f, 3, &num3);
- break;
- case 10:
- setStruct(1421.334f, -1618.83f, 58.3324f, 3, &num3);
- break;
- case 11:
- setStruct(983.5914f, -2360.14f, 29.5098f, 3, &num3);
- break;
- case 12:
- setStruct(97.9046f, -2501.28f, 5.0001f, 3, &num3);
- break;
- case 13:
- setStruct(1591.921f, 6516.841f, 16.3155f, 3, &num3);
- break;
- case 14:
- setStruct(1278.73f, 3624.059f, 32.0408f, 3, &num3);
- break;
- case 15:
- setStruct(2464.667f, 5526.815f, 44.2143f, 3, &num3);
- break;
- case 16:
- setStruct(2052.58f, 4637.477f, 39.642f, 3, &num3);
- break;
- case 17:
- setStruct(1435.608f, 4483.951f, 49.2513f, 3, &num3);
- break;
- case 18:
- setStruct(218.214f, 4439.288f, 66.9056f, 3, &num3);
- break;
- case 19:
- setStruct(16.9496f, 3632.35f, 39.2848f, 3, &num3);
- break;
- case 20:
- setStruct(2.0464f, 3293.74f, 40.2594f, 3, &num3);
- break;
- case 21:
- setStruct(-1195.701f, 2639.13f, 15.1653f, 3, &num3);
- break;
- case 22:
- setStruct(-1663.641f, 2477.778f, 30.9941f, 3, &num3);
- break;
- case 23:
- setStruct(-2505.643f, 3677.825f, 12.1719f, 3, &num3);
- break;
- case 24:
- setStruct(-2179.209f, 4264.236f, 47.9904f, 3, &num3);
- break;
- case 25:
- setStruct(-758.9616f, 5612.78f, 29.4536f, 3, &num3);
- break;
- case 26:
- setStruct(-276.8032f, 6327.188f, 31.4262f, 3, &num3);
- break;
- case 27:
- setStruct(1483.839f, 6366.199f, 22.6875f, 3, &num3);
- break;
- case 28:
- setStruct(949.013f, 3551.753f, 32.9687f, 3, &num3);
- break;
- case 29:
- setStruct(180.9372f, 3051.781f, 42.1131f, 3, &num3);
- break;
- case 30:
- setStruct(-462.9046f, 6115.419f, 28.8805f, 3, &num3);
- break;
- case 31:
- setStruct(-256.3564f, 6056.516f, 30.9808f, 3, &num3);
- break;
- }
- struct _s = &num3;
- return buildStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8));
- }
- void sub_1DB2()
- {
- if (PED::IS_PED_INJURED(l_128) == 0)
- {
- if (VEHICLE::IS_VEHICLE_DRIVEABLE(l_129, 0) != 0)
- {
- if (PED::IS_PED_IN_VEHICLE(l_128, l_129, 0) != 0)
- {
- var num3 = ENTITY::GET_ENTITY_SPEED(l_129);
- var num1 = ENTITY::IS_ENTITY_AT_ENTITY(l_128, l_127, 15f, 15f, 5f, 0, 1, 0);
- if ((num1 & (num3 <= 1f)) != 0)
- {
- sub_2295(l_127);
- l_98 = GAMEPLAY::GET_GAME_TIMER();
- l_99 = l_98 - l_97;
- if (l_99 >= l_101)
- {
- if (sub_10B44() != 0)
- {
- if (NETWORK::NETWORK_HAS_CONTROL_OF_ENTITY(l_128) != 0)
- {
- AI::TASK_CLEAR_LOOK_AT(l_128);
- }
- }
- else
- {
- AI::TASK_CLEAR_LOOK_AT(l_128);
- }
- l_101 = GAMEPLAY::GET_RANDOM_INT_IN_RANGE(0, 10000);
- if (l_101 > 2500)
- {
- AI::CLEAR_PED_TASKS(l_127);
- AI::CLEAR_SEQUENCE_TASK(&l_132);
- AI::OPEN_SEQUENCE_TASK(&l_132);
- AI::TASK_ENTER_VEHICLE(0, l_129, -1, 0, 1f, 0x800001, 0);
- AI::TASK_STAND_STILL(0, -1);
- AI::CLOSE_SEQUENCE_TASK(l_132);
- AI::TASK_PERFORM_SEQUENCE(l_127, l_132);
- AI::CLEAR_SEQUENCE_TASK(&l_132);
- sub_F6C6("other GIVES MONEY");
- l_326 = 5;
- }
- else
- {
- sub_2250();
- sub_1FA3();
- if (((PED::IS_PED_INJURED(l_128) == 0) && (VEHICLE::IS_VEHICLE_DRIVEABLE(l_129, 0) != 0)) && (PED::IS_PED_IN_VEHICLE(l_128, l_129, 0) != 0))
- {
- AI::CLEAR_SEQUENCE_TASK(&l_132);
- AI::OPEN_SEQUENCE_TASK(&l_132);
- AI::TASK_STAND_STILL(0, GAMEPLAY::GET_RANDOM_INT_IN_RANGE(500, 2000));
- AI::TASK_VEHICLE_DRIVE_WANDER(0, l_129, 10f, 0xC00AB);
- AI::CLOSE_SEQUENCE_TASK(l_132);
- AI::TASK_PERFORM_SEQUENCE(l_128, l_132);
- AI::CLEAR_SEQUENCE_TASK(&l_132);
- l_97 = GAMEPLAY::GET_GAME_TIMER();
- }
- sub_F6C6("prostitute REFUSED MONEY 2");
- if (sub_10B44() != 0)
- {
- if (NETWORK::NETWORK_HAS_CONTROL_OF_ENTITY(l_128) != 0)
- {
- AI::TASK_CLEAR_LOOK_AT(l_128);
- }
- }
- else
- {
- AI::TASK_CLEAR_LOOK_AT(l_128);
- }
- l_326 = 6;
- }
- }
- }
- else
- {
- if (sub_10B44() != 0)
- {
- if (NETWORK::NETWORK_HAS_CONTROL_OF_ENTITY(l_128) != 0)
- {
- AI::TASK_CLEAR_LOOK_AT(l_128);
- }
- }
- else
- {
- AI::TASK_CLEAR_LOOK_AT(l_128);
- }
- sub_2CEB();
- }
- }
- else
- {
- sub_F6C6("EXIT - OTHER OUT OF THE VEHICLE");
- if (sub_10B44() != 0)
- {
- if (NETWORK::NETWORK_HAS_CONTROL_OF_ENTITY(l_128) != 0)
- {
- AI::TASK_CLEAR_LOOK_AT(l_128);
- }
- }
- else
- {
- AI::TASK_CLEAR_LOOK_AT(l_128);
- }
- sub_2CEB();
- }
- }
- else
- {
- sub_F6C6("EXIT - OTHER VEHICLE DEAD");
- sub_2CEB();
- }
- }
- else
- {
- sub_F6C6("EXIT - OTHER ped INJURED");
- sub_2CEB();
- }
- }
- void sub_1FA3()
- {
- bool flag1 = ENTITY::DOES_ENTITY_EXIST(l_127) == 0;
- if (!(flag1 | PED::IS_PED_INJURED(l_127)))
- {
- if (PED::IS_PED_IN_ANY_VEHICLE(l_127, 1) != 0)
- {
- AI::TASK_WANDER_STANDARD(l_127, 0x471C4000, 0);
- }
- else if (sub_F6B7(l_85, 0x400000) != 0)
- {
- var num3;
- AI::OPEN_SEQUENCE_TASK(&num3);
- if (sub_F6B7(l_108, 0x80000) != 0)
- {
- AI::TASK_PLAY_ANIM(0, sub_21FD(l_324), sub_212A(7), 8f, -1.5f, -1, 0, 0, 0, 0, 0);
- }
- sub_2049(1);
- AI::CLOSE_SEQUENCE_TASK(num3);
- AI::TASK_PERFORM_SEQUENCE(l_127, num3);
- AI::CLEAR_SEQUENCE_TASK(&num3);
- sub_F4AD(&l_85, 16384);
- sub_E7E(&l_144);
- }
- }
- }
- void sub_2049(var A_0)
- {
- var num1 = AI::0x9BE9C691(l_127);
- var num10 = num1 | AI::IS_PED_ACTIVE_IN_SCENARIO(l_127);
- var num11 = num10 | PED::IS_PED_USING_SCENARIO(l_127, sub_2110(0));
- if ((num11 | PED::IS_PED_USING_SCENARIO(l_127, sub_2110(1))) == 0)
- {
- var num3;
- struct _s = ENTITY::GET_ENTITY_COORDS(l_127, 1);
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, &num3);
- struct _s = &num3;
- bool flag1 = AI::0x0FB138A5(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), sub_2110(0), 20f, 1) == 0;
- if (flag1)
- {
- struct _s = &num3;
- }
- if (flag1 & (AI::0x0FB138A5(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), sub_2110(1), 20f, 1) == 0))
- {
- if (A_0 != null)
- {
- AI::TASK_WANDER_STANDARD(0, 0x471C4000, 0);
- }
- else
- {
- AI::TASK_WANDER_STANDARD(l_127, 0x471C4000, 0);
- }
- }
- else if (A_0 == 0)
- {
- struct _s = &num3;
- AI::TASK_USE_NEAREST_SCENARIO_TO_COORD(l_127, rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 20f, 0);
- }
- else
- {
- struct _s = &num3;
- AI::TASK_USE_NEAREST_SCENARIO_TO_COORD(0, rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 20f, 0);
- }
- }
- }
- var sub_2110(var A_0)
- {
- if (A_0 == 0)
- {
- return "WORLD_HUMAN_PROSTITUTE_LOW_CLASS";
- }
- return "WORLD_HUMAN_PROSTITUTE_HIGH_CLASS";
- }
- var sub_212A(var A_0)
- {
- switch ((A_0))
- {
- case 0:
- return "idle_intro";
- case 1:
- return "idle_a";
- case 2:
- return "idle_b";
- case 3:
- return "idle_c";
- case 4:
- return "idle_wait";
- case 5:
- return "idle_reject";
- case 8:
- return "idle_reject_loop_a";
- case 9:
- return "idle_reject_loop_b";
- case 10:
- return "idle_reject_loop_c";
- case 11:
- return "idle_outro";
- case 6:
- return "reject_2_idle";
- case 7:
- return "reject_outro";
- }
- return "";
- }
- var sub_21FD(var A_0)
- {
- var num3;
- switch ((A_0))
- {
- case 0:
- num3 = "mini@hookers_spcrackhead";
- break;
- case 1:
- num3 = "mini@hookers_spcokehead";
- break;
- case 3:
- case 4:
- num3 = "mini@hookers_spfrench";
- break;
- default:
- num3 = "mini@hookers_spvanilla";
- break;
- }
- return num3;
- }
- void sub_2250()
- {
- if ((PED::IS_PED_INJURED(l_127) == 0) && (AUDIO::IS_ANY_SPEECH_PLAYING(l_127) == 0))
- {
- if (sub_B25() == 2)
- {
- AUDIO::0x5C57B85D(l_127, "HOOKER_DECLINED_TREVOR", "SPEECH_PARAMS_FORCE_SHOUTED_CLEAR");
- }
- else
- {
- AUDIO::0x5C57B85D(l_127, "HOOKER_DECLINED", "SPEECH_PARAMS_FORCE_SHOUTED_CLEAR");
- }
- }
- }
- void sub_2295(var A_0)
- {
- if ((PED::IS_PED_INJURED(A_0) == 0) && (sub_22B9(A_0) != 0))
- {
- PED::SET_PED_RESET_FLAG(A_0, 109, 1);
- }
- }
- var sub_22B9(var A_0)
- {
- if (PED::IS_PED_INJURED(A_0) == 0)
- {
- var num1 = ENTITY::IS_ENTITY_PLAYING_ANIM(A_0, sub_21FD(l_324), sub_212A(1), 3);
- var num7 = num1 | ENTITY::IS_ENTITY_PLAYING_ANIM(A_0, sub_21FD(l_324), sub_212A(2), 3);
- if ((num7 | ENTITY::IS_ENTITY_PLAYING_ANIM(A_0, sub_21FD(l_324), sub_212A(3), 3)) != 0)
- {
- return 1;
- }
- }
- return 0;
- }
- void sub_2318()
- {
- if (PED::IS_PED_INJURED(l_128) == 0)
- {
- if (VEHICLE::IS_VEHICLE_DRIVEABLE(l_129, 0) != 0)
- {
- if (PED::IS_PED_IN_VEHICLE(l_128, l_129, 0) != 0)
- {
- if ((AI::GET_SCRIPT_TASK_STATUS(l_127, 0xE763797) == 1) && (AI::GET_SEQUENCE_PROGRESS(l_127) > 1))
- {
- if (ENTITY::IS_ENTITY_AT_ENTITY(l_127, l_128, 20f, 20f, 10f, 0, 1, 0) != 0)
- {
- if (ENTITY::GET_ENTITY_SPEED(l_129) <= 1f)
- {
- sub_23E4(0);
- l_97 = GAMEPLAY::GET_GAME_TIMER();
- l_101 = GAMEPLAY::GET_RANDOM_INT_IN_RANGE(4000, 8000);
- sub_F6C6("prostitute proposition other in VEHICLE VEHICLE");
- l_326 = 4;
- }
- }
- else
- {
- sub_F6C6("EXIT - OTHER IN VEHICLE OUT OF RANGE");
- sub_2CEB();
- }
- }
- }
- else
- {
- sub_F6C6("EXIT - OTHER OUT OF THE VEHICLE");
- sub_2CEB();
- }
- }
- else
- {
- sub_F6C6("EXIT - OTHER VEHICLE DEAD");
- sub_2CEB();
- }
- }
- else
- {
- sub_F6C6("EXIT - OTHER ped INJURED");
- sub_2CEB();
- }
- }
- void sub_23E4(var A_0)
- {
- if (A_0 != null)
- {
- AUDIO::0x2BC93264(l_127, "PROSTITUTE_GROUP", 0);
- sub_27A1("PROSTITUTES_SOLICIT_SCENE");
- }
- sub_248F();
- if (sub_F6B7(l_85, 0x400000) != 0)
- {
- var num3;
- var num4 = GAMEPLAY::GET_RANDOM_INT_IN_RANGE(1, 4);
- AI::OPEN_SEQUENCE_TASK(&num3);
- AI::TASK_PLAY_ANIM(0, sub_21FD(l_324), sub_212A(0), 2f, -2f, -1, 0, 0, 0, 0, 0);
- AI::TASK_PLAY_ANIM(0, sub_21FD(l_324), sub_212A(num4), 2f, -2f, -1, 0, 0, 0, 0, 0);
- AI::TASK_PLAY_ANIM(0, sub_21FD(l_324), sub_212A(4), 2f, -2f, -1, 1, 0, 0, 0, 0);
- AI::CLOSE_SEQUENCE_TASK(num3);
- AI::TASK_PERFORM_SEQUENCE(l_127, num3);
- AI::CLEAR_SEQUENCE_TASK(&num3);
- }
- }
- void sub_248F()
- {
- if ((PED::IS_PED_INJURED(l_127) == 0) && (AUDIO::IS_ANY_SPEECH_PLAYING(l_127) == 0))
- {
- switch (sub_B25())
- {
- case 0:
- if (sub_254C(l_127) != 0)
- {
- AUDIO::0x5C57B85D(l_127, "SOLICIT_MICHAEL_RETURN", "SPEECH_PARAMS_FORCE_SHOUTED_CLEAR");
- break;
- }
- AUDIO::0x5C57B85D(l_127, "SOLICIT_MICHAEL", "SPEECH_PARAMS_FORCE_SHOUTED_CLEAR");
- break;
- case 1:
- if (sub_254C(l_127) != 0)
- {
- AUDIO::0x5C57B85D(l_127, "SOLICIT_FRANKLIN_RETURN", "SPEECH_PARAMS_FORCE_SHOUTED_CLEAR");
- break;
- }
- AUDIO::0x5C57B85D(l_127, "SOLICIT_FRANKLIN", "SPEECH_PARAMS_FORCE_SHOUTED_CLEAR");
- break;
- case 2:
- if (sub_254C(l_127) != 0)
- {
- AUDIO::0x5C57B85D(l_127, "SOLICIT_TREVOR_RETURN", "SPEECH_PARAMS_FORCE_SHOUTED_CLEAR");
- break;
- }
- AUDIO::0x5C57B85D(l_127, "SOLICIT_TREVOR", "SPEECH_PARAMS_FORCE_SHOUTED_CLEAR");
- break;
- }
- }
- }
- var sub_254C(var A_0)
- {
- return sub_2562(sub_25E4(A_0));
- }
- var sub_2562(var A_0)
- {
- if (sub_2579(A_0) > 0)
- {
- return 1;
- }
- return 0;
- }
- var sub_2579(var A_0)
- {
- var num3 = 0;
- if (A_0 == -1)
- {
- return 0;
- }
- if (sub_B25() == 0)
- {
- num3 = getElem(0, getElemPtr(A_0, ((&g_86838) + 7661) + 1, 44), 4);
- }
- else if (sub_B25() == 1)
- {
- num3 = getElem(1, getElemPtr(A_0, ((&g_86838) + 7661) + 1, 44), 4);
- }
- else if (sub_B25() == 2)
- {
- num3 = getElem(2, getElemPtr(A_0, ((&g_86838) + 7661) + 1, 44), 4);
- }
- return num3;
- }
- var sub_25E4(var A_0)
- {
- if (ENTITY::IS_ENTITY_DEAD(A_0) == 0)
- {
- for (var i = 0; i < 8; i++)
- {
- if (sub_2579(i) > 0)
- {
- var num1 = sub_2702(A_0, i);
- var num8 = num1 & sub_2663(A_0, i);
- if ((num8 & sub_263E(A_0, i)) != 0)
- {
- return i;
- }
- }
- }
- }
- return -1;
- }
- var sub_263E(var A_0, var A_1)
- {
- if (PED::IS_PED_MODEL(A_0, rPtr(getElemPtr(A_1, ((&g_86838) + 7661) + 1, 44) + 40)) != 0)
- {
- return 1;
- }
- return 0;
- }
- var sub_2663(var A_0, var A_1)
- {
- for (var i = 0; i < 2; i++)
- {
- if (sub_2690(A_0, A_1, i) == 0)
- {
- return 0;
- }
- }
- return 1;
- }
- var sub_2690(var A_0, var A_1, var A_2)
- {
- var num3 = sub_26D9(A_2);
- return (PED::GET_PED_TEXTURE_VARIATION(A_0, num3) == sub_26B1(A_1, A_2));
- }
- var sub_26B1(var A_0, var A_1)
- {
- if (sub_2562(A_0) != 0)
- {
- return getElem(A_1, getElemPtr(A_0, ((&g_86838) + 7661) + 1, 44) + 28, 4);
- }
- return -1;
- }
- var sub_26D9(var A_0)
- {
- var num3;
- switch (A_0)
- {
- case 0:
- num3 = 0;
- break;
- case 1:
- num3 = 2;
- break;
- }
- return num3;
- }
- var sub_2702(var A_0, var A_1)
- {
- for (var i = 0; i < 2; i++)
- {
- if (sub_272F(A_0, A_1, i) == 0)
- {
- return 0;
- }
- }
- return 1;
- }
- var sub_272F(var A_0, var A_1, var A_2)
- {
- var num3 = sub_2778(A_2);
- return (PED::GET_PED_DRAWABLE_VARIATION(A_0, num3) == sub_2750(A_1, A_2));
- }
- var sub_2750(var A_0, var A_1)
- {
- if (sub_2562(A_0) != 0)
- {
- return getElem(A_1, getElemPtr(A_0, ((&g_86838) + 7661) + 1, 44) + 16, 4);
- }
- return -1;
- }
- var sub_2778(var A_0)
- {
- var num3;
- switch (A_0)
- {
- case 0:
- num3 = 0;
- break;
- case 1:
- num3 = 2;
- break;
- }
- return num3;
- }
- void sub_27A1(var A_0)
- {
- if (AUDIO::IS_AUDIO_SCENE_ACTIVE(A_0) == 0)
- {
- AUDIO::START_AUDIO_SCENE(A_0);
- }
- }
- void sub_27BA()
- {
- if (PED::IS_PED_INJURED(l_128) == 0)
- {
- if (VEHICLE::IS_VEHICLE_DRIVEABLE(l_129, 0) != 0)
- {
- if (PED::IS_PED_IN_VEHICLE(l_128, l_129, 0) != 0)
- {
- var num3 = ENTITY::GET_ENTITY_SPEED(l_129);
- bool flag1 = AI::GET_SCRIPT_TASK_STATUS(l_128, 0xEFC8537E) == 7;
- if (flag1 | (num3 <= 1f))
- {
- var num4;
- var num7;
- var num10;
- var num13;
- var num16;
- var num19;
- GAMEPLAY::GET_MODEL_DIMENSIONS(ENTITY::GET_ENTITY_MODEL(l_129), &num7, &num4);
- struct _s = &num4;
- struct _s = &num7;
- struct _s = vsub(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8));
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, &num10);
- struct _s = &num10;
- struct _s = ftov(2f);
- struct _s = vdiv(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8));
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, &num10);
- struct _s = ENTITY::GET_OFFSET_FROM_ENTITY_IN_WORLD_COORDS(l_129, 0.2f, 0.2f, 0f);
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, &num13);
- struct _s = ENTITY::GET_OFFSET_FROM_ENTITY_IN_WORLD_COORDS(l_129, 0.2f, 0.2f, 0f);
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, &num16);
- struct _s = ENTITY::GET_ENTITY_COORDS(l_127, 1);
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, &num19);
- struct _s = &num19;
- struct _s = &num16;
- struct _s = &num19;
- struct _s = &num13;
- if (SYSTEM::VDIST(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8)) < SYSTEM::VDIST(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8)))
- {
- struct _s = &num16;
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, &num13);
- }
- AI::OPEN_SEQUENCE_TASK(&l_132);
- var i25 = rPtr((&num13) + 1);
- AI::TASK_FOLLOW_NAV_MESH_TO_COORD(0, num13, i25, rPtr((&num13) + 2), 1f, -1, 0.5f, 8192, 0x471C4000);
- AI::TASK_TURN_PED_TO_FACE_ENTITY(0, l_128, 0);
- AI::TASK_STAND_STILL(0, -1);
- AI::CLOSE_SEQUENCE_TASK(l_132);
- AI::TASK_PERFORM_SEQUENCE(l_127, l_132);
- AI::CLEAR_SEQUENCE_TASK(&l_132);
- sub_F6C6("prostitute ASKING OTHER FOR MONEY BY VEHICLE");
- l_326 = 3;
- }
- else
- {
- sub_F6C6("WAITING FOR CUTSTOMER FINSIH TASK OR STOP");
- }
- }
- else
- {
- sub_F6C6("EXIT - OTHER OUT OF VEHICLE");
- sub_2CEB();
- }
- }
- else
- {
- sub_F6C6("EXIT - OTHER VEHICLE DEAD");
- sub_2CEB();
- }
- }
- else
- {
- sub_F6C6("EXIT - OTHER ped INJURED");
- sub_2CEB();
- }
- }
- void sub_290D()
- {
- if (PED::IS_PED_INJURED(l_128) == 0)
- {
- if (VEHICLE::IS_VEHICLE_DRIVEABLE(l_129, 0) != 0)
- {
- if (PED::IS_PED_IN_VEHICLE(l_128, l_129, 0) != 0)
- {
- if (sub_2A44(&l_129) != 0)
- {
- struct _s = ENTITY::GET_ENTITY_COORDS(l_128, 1);
- if (sub_2A02(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 0x41F00000) == 0)
- {
- var num3;
- struct _s = ENTITY::GET_ENTITY_COORDS(l_127, 1);
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, &num3);
- struct _s = &num3;
- if (PATHFIND::GET_CLOSEST_VEHICLE_NODE(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), &num3, 8, 0x40400000, 0) != 0)
- {
- PED::SET_DRIVER_ABILITY(l_128, 1f);
- PED::0x6D55B3B3(l_128, 0.2f);
- PED::SET_DRIVER_AGGRESSIVENESS(l_128, 0.05f);
- struct _s = &num3;
- AI::TASK_VEHICLE_PARK(l_128, l_129, rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 0f, 3, 360f, 1);
- AI::TASK_LOOK_AT_ENTITY(l_128, l_127, -1, 2048, 4);
- sub_F6C6("OTHER TOLD TO PULL OVER");
- l_326 = 2;
- }
- }
- }
- else
- {
- sub_F6C6("EXIT - Vehicle is not suitable");
- sub_2CDE(15);
- }
- }
- else
- {
- sub_F6C6("EXIT - OTHER OUT OF THE VEHICLE");
- sub_2CDE(15);
- }
- }
- else
- {
- sub_F6C6("EXIT - OTHER VEHICLE DEAD");
- sub_2CDE(15);
- }
- }
- else
- {
- sub_F6C6("EXIT - OTHER ped INJURED");
- sub_2CDE(15);
- }
- }
- var sub_2A02(var A_0, var A_1, var A_2, var A_3)
- {
- struct _s = &A_0;
- struct _s = vsub(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), A_3, A_3, A_3);
- struct _s = &A_0;
- struct _s = vadd(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), A_3, A_3, A_3);
- var num1 = VEHICLE::IS_COP_VEHICLE_IN_AREA_3D(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8));
- if (num1 == 0)
- {
- struct _s = &A_0;
- struct _s = vsub(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), A_3, A_3, A_3);
- struct _s = &A_0;
- struct _s = vadd(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), A_3, A_3, A_3);
- }
- return (num1 | PED::IS_COP_PED_IN_AREA_3D(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8)));
- }
- var sub_2A44(var A_0)
- {
- if (VEHICLE::IS_VEHICLE_DRIVEABLE(rPtr(A_0), 0) != 0)
- {
- var num1 = sub_2BE8(ENTITY::GET_ENTITY_MODEL(rPtr(A_0)), 0);
- if (((num1 & sub_2B5D(rPtr(A_0))) != 0) && (VEHICLE::GET_VEHICLE_MAX_NUMBER_OF_PASSENGERS(rPtr(A_0)) > 0))
- {
- bool flag3;
- bool flag1 = VEHICLE::GET_VEHICLE_NUMBER_OF_PASSENGERS(rPtr(A_0)) == 0;
- bool flag2 = flag1 & VEHICLE::IS_VEHICLE_SEAT_FREE(rPtr(A_0), 0);
- if (flag2)
- {
- flag3 = VEHICLE::IS_VEHICLE_DOOR_DAMAGED(rPtr(A_0), 1) == 0;
- }
- bool flag4 = flag2 & (flag3 & (VEHICLE::IS_VEHICLE_DOOR_DAMAGED(rPtr(A_0), 0) == 0));
- if (flag4 | (VEHICLE::GET_PED_IN_VEHICLE_SEAT(rPtr(A_0), 0) == l_127))
- {
- if (sub_16AB(rPtr(A_0)) != 0)
- {
- if (sub_F6B7(l_85, 32768) == 0)
- {
- sub_F4AD(&l_85, 32768);
- if (sub_F6B7(l_85, 8) == 0)
- {
- STREAMING::REQUEST_CLIP_SET(sub_2B51());
- sub_F4AD(&l_85, 8);
- }
- }
- }
- else
- {
- if (sub_F6B7(l_85, 32768) != 0)
- {
- sub_5B4(&l_85, 32768);
- }
- if ((sub_F6B7(l_85, 8) != 0) && (STREAMING::HAS_CLIP_SET_LOADED(sub_2B51()) != 0))
- {
- STREAMING::REMOVE_CLIP_SET(sub_2B51());
- sub_5B4(&l_85, 8);
- }
- }
- return 1;
- }
- }
- }
- return 0;
- }
- var sub_2B51()
- {
- return "clipset@veh@low@ps@female@base";
- }
- var sub_2B5D(var A_0)
- {
- if (VEHICLE::IS_VEHICLE_DRIVEABLE(A_0, 0) != 0)
- {
- switch (VEHICLE::GET_VEHICLE_LAYOUT_HASH(A_0))
- {
- case 0x84D77E93:
- case 0xD158A20D:
- case 0x205A6F50:
- case 0x4163EC9:
- case 0x589D7B2F:
- case 0x8DB2A5D9:
- case 0xAC3C0E50:
- case 0xF69542B7:
- case 0xEF4E5E35:
- case 0x65FA4F90:
- case 0x19E59D55:
- case 0x6C40A6DC:
- case 0x36CE3DC4:
- case 0x3854C58D:
- case 0x5128863:
- case 0x73950148:
- case 0x6F727ECC:
- return 1;
- }
- }
- return 0;
- }
- var sub_2BE8(var A_0, var A_1)
- {
- var num1 = VEHICLE::IS_THIS_MODEL_A_BOAT(A_0);
- var num8 = num1 | VEHICLE::IS_THIS_MODEL_A_PLANE(A_0);
- var num9 = num8 | VEHICLE::IS_THIS_MODEL_A_HELI(A_0);
- var num10 = num9 | VEHICLE::IS_THIS_MODEL_A_TRAIN(A_0);
- if ((num10 | VEHICLE::IS_THIS_MODEL_A_BIKE(A_0)) != 0)
- {
- return 0;
- }
- if (A_1 == 0)
- {
- bool flag1 = A_0 == 0x79FBB0C5;
- bool flag2 = flag1 | (A_0 == 0x9F05F101);
- bool flag3 = flag2 | (A_0 == 0x71FA16EA);
- bool flag4 = flag3 | (A_0 == 0x8A63C7B9);
- bool flag5 = flag4 | (A_0 == 0x432EA949);
- bool flag6 = flag5 | (A_0 == 0x9DC66994);
- bool flag7 = flag6 | (A_0 == 0x44623884);
- if (flag7 | (A_0 == 0xDFF0594C))
- {
- return 0;
- }
- }
- bool flag8 = A_0 == 0xB9CB3B69;
- bool flag9 = flag8 | (A_0 == 0x239E390);
- bool flag10 = flag9 | (A_0 == 0x3EAB5555);
- if (flag10 | (A_0 == 0xB2A716A3))
- {
- return 0;
- }
- return 1;
- }
- void sub_2CDE(var A_0)
- {
- l_326 = A_0;
- }
- void sub_2CEB()
- {
- if (sub_10B44() != 0)
- {
- if (NETWORK::NETWORK_HAS_CONTROL_OF_ENTITY(l_127) != 0)
- {
- AI::CLEAR_PED_TASKS(l_127);
- AI::TASK_CLEAR_LOOK_AT(l_127);
- }
- }
- else
- {
- AI::CLEAR_PED_TASKS(l_127);
- AI::TASK_CLEAR_LOOK_AT(l_127);
- }
- l_128 = 0;
- l_129 = 0;
- AI::TASK_PLAY_ANIM(l_127, sub_21FD(l_324), sub_212A(4), 2f, -2f, -1, 1, GAMEPLAY::GET_RANDOM_FLOAT_IN_RANGE(0f, 0.9f), 0, 0, 0);
- sub_2CDE(0);
- l_327 = 0;
- l_325 = 1;
- }
- void sub_2D58()
- {
- if (sub_F6B7(l_85, 32) == 0)
- {
- l_325 = 1;
- }
- bool flag1 = l_326 > 1;
- if ((flag1 & (l_326 != 12)) && (sub_F6B7(l_85, 0x2000000) == 0))
- {
- if ((sub_10B44() != 0) && (g_1617061 != 0))
- {
- sub_F46B(0);
- sub_F4AD(&l_85, 0x2000000);
- }
- if (PLAYER::GET_PLAYER_WANTED_LEVEL(PLAYER::PLAYER_ID()) > 0)
- {
- var num1 = sub_F6B7(l_85, 0x100000);
- if ((num1 | sub_F6B7(l_85, 8192)) != 0)
- {
- sub_F46B(0);
- sub_F4AD(&l_85, 0x2000000);
- }
- }
- }
- switch (l_326)
- {
- case 0:
- {
- var num6 = sub_F6B7(l_85, 16384);
- if ((num6 | sub_F6B7(l_85, 0x800000)) == 0)
- {
- bool flag2 = l_327 != 0;
- if (flag2 & (sub_F422("PROS_NO_MONEY") == 0))
- {
- sub_2049(0);
- if (PED::IS_PED_MODEL(PLAYER::PLAYER_PED_ID(), sub_C5C(2)) != 0)
- {
- sub_F388(&l_153, 0, PLAYER::PLAYER_PED_ID(), "TREVOR", 0, 1);
- }
- else if (PED::IS_PED_MODEL(PLAYER::PLAYER_PED_ID(), sub_C5C(0)) != 0)
- {
- sub_F388(&l_153, 0, PLAYER::PLAYER_PED_ID(), "MICHAEL", 0, 1);
- }
- else if (PED::IS_PED_MODEL(PLAYER::PLAYER_PED_ID(), sub_C5C(1)) != 0)
- {
- sub_F388(&l_153, 0, PLAYER::PLAYER_PED_ID(), "FRANKLIN", 0, 1);
- }
- l_326 = 1;
- }
- else
- {
- sub_F374();
- l_327 = 2;
- }
- break;
- }
- if (sub_652(&l_144) == 0)
- {
- sub_F453(&l_144);
- }
- if (sub_F435(&l_144, 25f) != 0)
- {
- sub_5B4(&l_85, 16384);
- sub_5B4(&l_85, 0x800000);
- }
- break;
- }
- case 1:
- sub_F1B3();
- break;
- case 2:
- sub_EF49();
- break;
- case 3:
- sub_EEEA();
- break;
- case 4:
- sub_E846();
- break;
- case 5:
- sub_E545();
- break;
- case 6:
- sub_E522();
- break;
- case 7:
- sub_D7AD();
- sub_D3CA();
- break;
- case 8:
- sub_D1FE();
- PLAYER::SPECIAL_ABILITY_DEACTIVATE(PLAYER::PLAYER_ID());
- sub_6DD5();
- sub_6D66();
- sub_6D15();
- sub_6CC8();
- if (sub_10B44() != 0)
- {
- sub_6C14();
- }
- break;
- case 9:
- sub_6B3F();
- break;
- case 10:
- sub_6A2A();
- break;
- case 11:
- PLAYER::SPECIAL_ABILITY_DEACTIVATE(PLAYER::PLAYER_ID());
- sub_38FB();
- sub_6D66();
- sub_6D15();
- sub_6CC8();
- sub_37B9();
- if (sub_10B44() != 0)
- {
- sub_6C14();
- }
- break;
- case 12:
- sub_F655();
- break;
- case 13:
- sub_308D();
- break;
- case 14:
- sub_303B();
- break;
- case 15:
- sub_2FE9();
- break;
- }
- }
- void sub_2FE9()
- {
- if ((sub_F6B7(l_85, 16) != 0) && (PLAYER::IS_PLAYER_PLAYING(PLAYER::PLAYER_ID()) != 0))
- {
- PLAYER::SET_PLAYER_CAN_DO_DRIVE_BY(PLAYER::PLAYER_ID(), 1);
- sub_5B4(&l_85, 16);
- }
- if (sub_F6B7(l_85, 2) != 0)
- {
- sub_3033(1);
- sub_F6C6("RESETTING INTERFACE FLAG TO FALSE - PROSTITUTE SCRIPT TERMINATING");
- }
- sub_10666();
- }
- void sub_3033(var A_0)
- {
- }
- void sub_303B()
- {
- if ((AUDIO::IS_ANY_SPEECH_PLAYING(PLAYER::PLAYER_PED_ID()) == 0) && (l_105 == 0))
- {
- if (sub_F6B7(l_85, 0x8000000) != 0)
- {
- PED::SET_PED_FLEE_ATTRIBUTES(l_127, 32768, 0);
- PED::SET_PED_FLEE_ATTRIBUTES(l_127, 0x30010, 1);
- }
- AUDIO::0x5C57B85D(l_127, "HOOKER_LEAVES_ANGRY", "SPEECH_PARAMS_FORCE_SHOUTED_CLEAR");
- sub_2CDE(15);
- }
- }
- void sub_308D()
- {
- switch (l_334)
- {
- case 0:
- {
- bool flag1 = AUDIO::IS_ANY_SPEECH_PLAYING(l_127) == 0;
- if (flag1 | (sub_3785(&l_138) > 4f))
- {
- sub_3628(l_127);
- if (sub_2579(sub_25E4(l_127)) == 1)
- {
- l_334 = 2;
- }
- else
- {
- sub_3612(&l_138);
- sub_35FC("PROS_RESPONSE");
- l_334 = 1;
- }
- }
- break;
- }
- case 1:
- {
- sub_3558();
- var num1 = AUDIO::IS_ANY_SPEECH_PLAYING(l_127);
- if ((num1 | sub_3536()) != 0)
- {
- PLAYER::SET_PLAYER_CONTROL(PLAYER::PLAYER_ID(), 0, 256);
- sub_F4AD(&l_85, 2048);
- }
- else
- {
- if (sub_652(&l_138) == 0)
- {
- sub_E7E(&l_138);
- }
- bool flag2 = sub_3785(&l_138) > 15f;
- if (flag2 | (l_337 != 0))
- {
- UI::CLEAR_HELP(1);
- sub_3494();
- l_334 = 2;
- }
- }
- break;
- }
- case 2:
- if (sub_3536() == 0)
- {
- l_334 = 3;
- }
- break;
- case 3:
- sub_31E2(0);
- sub_3188();
- sub_2CDE(15);
- break;
- }
- }
- var sub_3188()
- {
- if (sub_31D2() != 0)
- {
- return 0;
- }
- if (rPtr((&g_80916) + 8) != 0)
- {
- if (rPtr((&g_80916) + 10) > 0)
- {
- return 0;
- }
- }
- else if (rPtr((&g_80916) + 10) > 1)
- {
- return 0;
- }
- wPtr(rPtr((&g_80916) + 10) + 1, (&g_80916) + 10);
- return 1;
- }
- var sub_31D2()
- {
- return GAMEPLAY::IS_BIT_SET(g_60090, 0);
- }
- void sub_31E2(var A_0)
- {
- if (PED::IS_PED_INJURED(l_127) == 0)
- {
- if (CAM::IS_SCREEN_FADED_OUT() != 0)
- {
- PED::DELETE_PED(&l_127);
- }
- else
- {
- sub_320C(l_127, A_0);
- }
- }
- }
- void sub_320C(var A_0, var A_1)
- {
- if (ENTITY::IS_ENTITY_PLAYING_ANIM(PLAYER::PLAYER_PED_ID(), sub_16FB(PLAYER::PLAYER_PED_ID()), sub_344E(1), 3) != 0)
- {
- AI::TASK_PLAY_ANIM(PLAYER::PLAYER_PED_ID(), sub_16FB(PLAYER::PLAYER_PED_ID()), sub_3408(1), 4f, -8f, -1, 0, 0, 0, 0, 0);
- }
- if (PED::IS_PED_INJURED(A_0) == 0)
- {
- PED::RESET_PED_IN_VEHICLE_CONTEXT(A_0);
- if (sub_F6B7(l_85, 0x2000000) != 0)
- {
- AI::CLEAR_PED_TASKS(A_0);
- }
- if ((A_1 != null) && (GAMEPLAY::GET_RANDOM_FLOAT_IN_RANGE(0.1f, 2f) <= 0.25f))
- {
- sub_F4AD(&l_85, 0x8000000);
- }
- if (sub_F6B7(l_85, 0x8000000) != 0)
- {
- PED::SET_PED_FLEE_ATTRIBUTES(A_0, 32768, 1);
- AI::TASK_SMART_FLEE_PED(A_0, PLAYER::PLAYER_PED_ID(), 300f, -1, 1, 0);
- }
- else
- {
- var num3;
- PED::SET_PED_FLEE_ATTRIBUTES(A_0, 0x30010, 1);
- AI::CLEAR_SEQUENCE_TASK(&num3);
- AI::OPEN_SEQUENCE_TASK(&num3);
- AI::TASK_SET_BLOCKING_OF_NON_TEMPORARY_EVENTS(0, 1);
- if (PED::IS_PED_IN_ANY_VEHICLE(A_0, 0) != 0)
- {
- if (VEHICLE::IS_VEHICLE_STOPPED(PED::GET_VEHICLE_PED_IS_IN(A_0, 0)) == 0)
- {
- sub_33D6(A_0, 1);
- }
- else
- {
- if (ENTITY::IS_ENTITY_PLAYING_ANIM(A_0, sub_16FB(A_0), sub_344E(0), 3) != 0)
- {
- if (l_105 > 0)
- {
- AI::TASK_PLAY_ANIM(0, sub_16FB(A_0), sub_3408(0), 4f, -4f, -1, 0, 0, 0, 0, 0);
- }
- else
- {
- AI::TASK_PLAY_ANIM(0, sub_16FB(A_0), sub_3390(0), 4f, -4f, -1, 0, 0, 0, 0, 0);
- }
- }
- sub_33D6(A_0, 1);
- }
- }
- AI::TASK_SET_BLOCKING_OF_NON_TEMPORARY_EVENTS(0, 0);
- AI::TASK_WANDER_STANDARD(0, 0x471C4000, 0);
- AI::CLOSE_SEQUENCE_TASK(num3);
- AI::TASK_PERFORM_SEQUENCE(A_0, num3);
- AI::CLEAR_SEQUENCE_TASK(&num3);
- }
- PED::SET_PED_KEEP_TASK(A_0, 1);
- }
- }
- var sub_3390(var A_0)
- {
- if (sub_F6B7(l_85, 32768) == 0)
- {
- if (A_0 != null)
- {
- return sub_132F(4);
- }
- return sub_132F(5);
- }
- if (A_0 != null)
- {
- return sub_14ED(4);
- }
- return sub_14ED(5);
- }
- void sub_33D6(var A_0, var A_1)
- {
- if (VEHICLE::0xAB0E79EB(A_0, PED::GET_VEHICLE_PED_IS_IN(A_0, 0), 0, 0, 0) == 0)
- {
- AI::TASK_LEAVE_ANY_VEHICLE(0, 0, 0x1000000);
- }
- else
- {
- AI::TASK_LEAVE_ANY_VEHICLE(0, 0, A_1);
- }
- }
- var sub_3408(var A_0)
- {
- if (sub_F6B7(l_85, 32768) == 0)
- {
- if (A_0 != null)
- {
- return sub_132F(6);
- }
- return sub_132F(7);
- }
- if (A_0 != null)
- {
- return sub_14ED(6);
- }
- return sub_14ED(7);
- }
- var sub_344E(var A_0)
- {
- if (sub_F6B7(l_85, 32768) == 0)
- {
- if (A_0 != null)
- {
- return sub_132F(2);
- }
- return sub_132F(3);
- }
- if (A_0 != null)
- {
- return sub_14ED(2);
- }
- return sub_14ED(3);
- }
- void sub_3494()
- {
- var num3 = GAMEPLAY::GET_RANDOM_INT_IN_RANGE(0, 1000);
- bool flag1 = num3 <= 333;
- bool flag2 = flag1 & (l_337 == 0);
- if (flag2 | (l_337 == 3))
- {
- AUDIO::0x5C57B85D(PLAYER::PLAYER_PED_ID(), "HOOKER_STORY_REVULSION_RESP", "SPEECH_PARAMS_FORCE_SHOUTED_CLEAR");
- }
- else
- {
- bool flag3 = num3 > 333;
- bool flag4 = flag3 & (num3 <= 666);
- bool flag5 = flag4 & (l_337 == 0);
- if (flag5 | (l_337 == 1))
- {
- AUDIO::0x5C57B85D(PLAYER::PLAYER_PED_ID(), "HOOKER_STORY_SARCASTIC_RESP", "SPEECH_PARAMS_FORCE_SHOUTED_CLEAR");
- }
- else
- {
- bool flag6 = l_337 == 0;
- if (flag6 | (l_337 == 2))
- {
- AUDIO::0x5C57B85D(PLAYER::PLAYER_PED_ID(), "HOOKER_STORY_SYMPATHETIC_RESP", "SPEECH_PARAMS_FORCE_SHOUTED_CLEAR");
- }
- }
- }
- }
- var sub_3536()
- {
- bool flag1 = g_11728 != 0;
- if (flag1 | AUDIO::IS_SCRIPTED_CONVERSATION_ONGOING())
- {
- return 1;
- }
- return 0;
- }
- void sub_3558()
- {
- if (l_337 == 0)
- {
- CAM::SET_CINEMATIC_BUTTON_ACTIVE(0);
- CONTROLS::DISABLE_CONTROL_ACTION(0, 90);
- CONTROLS::DISABLE_CONTROL_ACTION(0, 69);
- CONTROLS::DISABLE_CONTROL_ACTION(0, 73);
- CONTROLS::SET_INPUT_EXCLUSIVE(2, 176);
- CONTROLS::SET_INPUT_EXCLUSIVE(2, 174);
- CONTROLS::SET_INPUT_EXCLUSIVE(2, 175);
- if (CONTROLS::IS_CONTROL_JUST_RELEASED(2, 176) != 0)
- {
- UI::CLEAR_HELP(1);
- AUDIO::PLAY_SOUND_FRONTEND(-1, "SELECT", "HUD_FRONTEND_DEFAULT_SOUNDSET");
- l_337 = 3;
- }
- else if (CONTROLS::IS_CONTROL_JUST_RELEASED(2, 174) != 0)
- {
- UI::CLEAR_HELP(1);
- AUDIO::PLAY_SOUND_FRONTEND(-1, "SELECT", "HUD_FRONTEND_DEFAULT_SOUNDSET");
- l_337 = 1;
- }
- else if (CONTROLS::IS_CONTROL_JUST_RELEASED(2, 175) != 0)
- {
- UI::CLEAR_HELP(1);
- AUDIO::PLAY_SOUND_FRONTEND(-1, "SELECT", "HUD_FRONTEND_DEFAULT_SOUNDSET");
- l_337 = 2;
- }
- }
- }
- void sub_35FC(var A_0)
- {
- UI::0xB245FC10(A_0);
- UI::0xB59B530D(0, 1, 1, -1);
- }
- void sub_3612(var A_0)
- {
- wPtr(0f, (A_0) + 4);
- wPtr(0f, (A_0) + 8);
- wPtr(0, A_0);
- }
- void sub_3628(var A_0)
- {
- var num3 = sub_25E4(A_0);
- if (num3 > -1)
- {
- if (AUDIO::IS_ANY_SPEECH_PLAYING(A_0) != 0)
- {
- AUDIO::STOP_CURRENT_PLAYING_AMBIENT_SPEECH(A_0);
- }
- if (AUDIO::IS_ANY_SPEECH_PLAYING(A_0) == 0)
- {
- sub_36AB(A_0);
- sub_3663(num3);
- }
- }
- }
- void sub_3663(var A_0)
- {
- var num3 = sub_2579(A_0);
- if (num3 < 6)
- {
- var num4;
- strcpy("pbpro_H", &num4, 24);
- saddi((A_0) + 1, &num4, 24);
- sadd("V", &num4, 24);
- saddi(num3, &num4, 24);
- sub_662(&l_153, "pbproau", &num4, 4, 0, 0, 0);
- }
- }
- void sub_36AB(var A_0)
- {
- var num3 = sub_25E4(A_0);
- if (num3 > -1)
- {
- sub_3768(&l_153, 4);
- sub_F388(&l_153, 6, A_0, sub_36D9(num3), 0, 1);
- }
- }
- var sub_36D9(var A_0)
- {
- var num3;
- switch (A_0)
- {
- case 0:
- num3 = "Hooker1";
- break;
- case 1:
- num3 = "Hooker2";
- break;
- case 2:
- num3 = "Hooker3";
- break;
- case 3:
- num3 = "Hooker4";
- break;
- case 4:
- num3 = "Hooker5";
- break;
- case 5:
- num3 = "Hooker6";
- break;
- case 6:
- num3 = "Hooker7";
- break;
- case 7:
- num3 = "Hooker8";
- break;
- default:
- num3 = "UPRO N/A";
- break;
- }
- return num3;
- }
- void sub_3768(var A_0, var A_1)
- {
- if (rPtr(getElemPtr(A_1, A_0, 40) + 28) == 1)
- {
- wPtr(0, getElemPtr(A_1, A_0, 40) + 28);
- }
- }
- var sub_3785(var A_0)
- {
- if (sub_652(A_0) != 0)
- {
- if (sub_642(A_0) != 0)
- {
- return rPtr((A_0) + 8);
- }
- return (sub_610() - rPtr((A_0) + 4));
- }
- return 0f;
- }
- void sub_37B9()
- {
- if (sub_10B44() != 0)
- {
- var num3 = 0;
- if ((ENTITY::DOES_ENTITY_EXIST(PLAYER::PLAYER_PED_ID()) != 0) && (PED::IS_PED_IN_ANY_VEHICLE(PLAYER::PLAYER_PED_ID(), 0) != 0))
- {
- var num4 = PED::GET_VEHICLE_PED_IS_IN(PLAYER::PLAYER_PED_ID(), 0);
- if (ENTITY::DOES_ENTITY_EXIST(num4) != 0)
- {
- if (VEHICLE::GET_PED_IN_VEHICLE_SEAT(num4, -1) != PLAYER::PLAYER_PED_ID())
- {
- num3 = 1;
- }
- if (VEHICLE::GET_PED_IN_VEHICLE_SEAT(num4, 0) != l_127)
- {
- num3 = 1;
- }
- if (VEHICLE::GET_VEHICLE_NUMBER_OF_PASSENGERS(num4) > 2)
- {
- num3 = 1;
- }
- if (num3 != 0)
- {
- sub_3841(0);
- AI::CLEAR_PED_TASKS(PLAYER::PLAYER_PED_ID());
- sub_10666();
- sub_104E0();
- }
- }
- }
- }
- }
- void sub_3841(var A_0)
- {
- if (A_0 != null)
- {
- var num3;
- struct _s = ENTITY::GET_ENTITY_ROTATION(l_130, 2);
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, &num3);
- CAM::SET_GAMEPLAY_CAM_RELATIVE_HEADING(180f);
- CAM::SET_GAMEPLAY_CAM_RELATIVE_PITCH((-5.5f) - num3, 0x3F800000);
- }
- CAM::RENDER_SCRIPT_CAMS(0, 0, 3000, 1, 0);
- sub_38C4(getElemPtr(0, &l_344, 28));
- sub_38C4(getElemPtr(3, &l_344, 28));
- sub_38C4(getElemPtr(2, &l_344, 28));
- sub_38C4(getElemPtr(1, &l_344, 28));
- var num1 = sub_F422("PROS_CAM_TOG");
- if ((num1 | sub_F422("PROS_CAM_OC")) != 0)
- {
- UI::CLEAR_HELP(1);
- }
- }
- void sub_38C4(var A_0)
- {
- if (CAM::DOES_CAM_EXIST(rPtr(A_0)) != 0)
- {
- CAM::RENDER_SCRIPT_CAMS(0, 0, 3000, 1, 0);
- if (CAM::IS_CAM_ACTIVE(rPtr(A_0)) != 0)
- {
- CAM::SET_CAM_ACTIVE(rPtr(A_0), 0);
- }
- CAM::DESTROY_CAM(rPtr(A_0), 0);
- }
- }
- void sub_38FB()
- {
- if (VEHICLE::IS_VEHICLE_DRIVEABLE(l_130, 0) != 0)
- {
- VEHICLE::SET_VEHICLE_BRAKE_LIGHTS(l_130, 1);
- }
- if (l_333 != 5)
- {
- bool flag1 = sub_6A02(l_109) == 0;
- bool flag2 = flag1 & (sub_6A02(l_110) == 0);
- bool flag3 = flag2 & (sub_6A02(l_111) == 0);
- bool flag4 = flag3 & (sub_6A02(l_112) == 0);
- bool flag5 = flag4 & (sub_6A02(l_113) == 0);
- bool flag6 = flag5 & (sub_6A02(l_114) == 0);
- if (flag6 & (sub_6A02(l_115) == 0))
- {
- bool flag7 = PED::IS_PED_SITTING_IN_ANY_VEHICLE(l_127) == 0;
- if (flag7 | ENTITY::HAS_ENTITY_BEEN_DAMAGED_BY_ANY_PED(PLAYER::PLAYER_PED_ID()))
- {
- l_333 = 5;
- }
- if ((PED::IS_PED_IN_ANY_VEHICLE(PLAYER::PLAYER_PED_ID(), 0) != 0) && (VEHICLE::IS_VEHICLE_DRIVEABLE(PED::GET_VEHICLE_PED_IS_IN(PLAYER::PLAYER_PED_ID(), 0), 0) == 0))
- {
- l_333 = 5;
- }
- }
- }
- UI::HIDE_HUD_COMPONENT_THIS_FRAME(2);
- CONTROLS::DISABLE_CONTROL_ACTION(2, 19);
- CONTROLS::DISABLE_CONTROL_ACTION(2, 37);
- sub_689C();
- switch (l_333)
- {
- case 0:
- if (sub_10B44() != 0)
- {
- sub_6551(1074, -1);
- }
- sub_E7E(&l_150);
- sub_6516(sub_16EE(), sub_F6B7(l_85, 32768));
- l_333 = 1;
- sub_F6C6("Moving to PROSTITUTE_SERVICE_LOOPING");
- break;
- case 1:
- CONTROLS::DISABLE_CONTROL_ACTION(0, 46);
- sub_6281();
- sub_5DB8();
- sub_3C87();
- sub_3C77();
- if ((sub_5D9(&l_150) > 1f) && (sub_3C63() != 0))
- {
- sub_5B4(&l_85, 512);
- l_336 = 0;
- sub_3C4C("PROSTITUTES_SOLICIT_SCENE");
- sub_3C4C("PROSTITUTES_SEX_SCENE");
- sub_3C4C("PROSTITUTES_BJ_SCENE");
- sub_3C4C("PROSTITUTES_BJ_SPEECH_SCENE");
- if (l_105 >= 3)
- {
- sub_3C20();
- l_333 = 5;
- }
- else
- {
- sub_3BF4();
- l_333 = 3;
- }
- }
- break;
- case 2:
- CONTROLS::DISABLE_CONTROL_ACTION(0, 46);
- sub_6281();
- sub_3C77();
- if ((sub_5D9(&l_150) > 1f) && (sub_3C63() != 0))
- {
- sub_5B4(&l_85, 512);
- l_336 = 0;
- sub_3C4C("PROSTITUTES_SOLICIT_SCENE");
- sub_3C4C("PROSTITUTES_SEX_SCENE");
- sub_3C4C("PROSTITUTES_BJ_SCENE");
- sub_3C4C("PROSTITUTES_BJ_SPEECH_SCENE");
- l_105 = 3;
- if (l_105 >= 3)
- {
- sub_3C20();
- l_333 = 5;
- sub_3612(&l_135);
- }
- }
- break;
- case 3:
- if (AUDIO::IS_ANY_SPEECH_PLAYING(l_127) == 0)
- {
- sub_3C4C("PROSTITUTES_SOLICIT_SCENE");
- sub_3C4C("PROSTITUTES_BJ_SPEECH_SCENE");
- l_332 = 0;
- l_333 = 0;
- sub_3BE2();
- l_326 = 8;
- }
- break;
- case 5:
- if (AUDIO::IS_ANY_SPEECH_PLAYING(l_127) == 0)
- {
- if (l_105 <= 0)
- {
- sub_F6C6("PROSTITUTE CANCEL PROS NO LONGER IN VEHICLE");
- sub_F46B(1);
- break;
- }
- if (sub_3BC0(l_127) != 0)
- {
- sub_3B5E();
- }
- else
- {
- sub_F46B(0);
- }
- }
- break;
- }
- }
- void sub_3B5E()
- {
- if ((PED::IS_PED_INJURED(l_127) == 0) && (AUDIO::IS_ANY_SPEECH_PLAYING(PLAYER::PLAYER_PED_ID()) == 0))
- {
- if (l_105 == 0)
- {
- AUDIO::0x5C57B85D(PLAYER::PLAYER_PED_ID(), "HOOKER_DECLINE_SERVICE", "SPEECH_PARAMS_FORCE_SHOUTED_CLEAR");
- }
- else if (sub_3BC0(l_127) != 0)
- {
- sub_E7E(&l_138);
- PLAYER::SET_PLAYER_CONTROL(PLAYER::PLAYER_ID(), 0, 256);
- sub_F4AD(&l_85, 2048);
- l_326 = 13;
- }
- }
- }
- var sub_3BC0(var A_0)
- {
- var num3 = sub_25E4(A_0);
- if (num3 == -1)
- {
- return 0;
- }
- return (sub_2579(num3) < 6);
- }
- void sub_3BE2()
- {
- wPtr(1, ((&g_2390986) + 549) + 10);
- }
- void sub_3BF4()
- {
- if ((PED::IS_PED_INJURED(l_127) == 0) && (AUDIO::IS_ANY_SPEECH_PLAYING(l_127) == 0))
- {
- AUDIO::0x5C57B85D(l_127, "SEX_FINISHED", "SPEECH_PARAMS_FORCE_SHOUTED_CLEAR");
- }
- }
- void sub_3C20()
- {
- if ((PED::IS_PED_INJURED(l_127) == 0) && (AUDIO::IS_ANY_SPEECH_PLAYING(l_127) == 0))
- {
- AUDIO::0x5C57B85D(l_127, "HOOKER_HAD_ENOUGH", "SPEECH_PARAMS_FORCE_SHOUTED_CLEAR");
- }
- }
- void sub_3C4C(var A_0)
- {
- if (AUDIO::IS_AUDIO_SCENE_ACTIVE(A_0) != 0)
- {
- AUDIO::STOP_AUDIO_SCENE(A_0);
- }
- }
- var sub_3C63()
- {
- if (l_336 == 6)
- {
- return 1;
- }
- return 0;
- }
- void sub_3C77()
- {
- CAM::0x5AC6DAC9();
- CAM::0x837F8581();
- }
- void sub_3C87()
- {
- var num3;
- if (GAMEPLAY::IS_STRING_NULL_OR_EMPTY(l_96) != 0)
- {
- return;
- }
- if (STREAMING::HAS_ANIM_DICT_LOADED(l_96) == 0)
- {
- return;
- }
- if (ENTITY::IS_ENTITY_DEAD(PLAYER::PLAYER_PED_ID()) == 0)
- {
- ENTITY::SET_ENTITY_INVINCIBLE(PLAYER::PLAYER_PED_ID(), 0);
- }
- var num4 = sub_16EE();
- var num5 = sub_F6B7(l_85, 32768);
- sub_5A29(&l_116);
- CONTROLS::DISABLE_CONTROL_ACTION(2, 19);
- CONTROLS::DISABLE_CONTROL_ACTION(2, 37);
- sub_5A07(23, 1);
- switch (l_336)
- {
- case 0:
- sub_5B4(&l_85, 256);
- sub_56F6(&l_116);
- sub_56B0(l_127, 0);
- if (sub_10B44() == 0)
- {
- sub_563F(num4, num5);
- }
- sub_55D6(num4, num5);
- l_336 = 1;
- return;
- case 1:
- sub_55C1(l_109);
- if ((sub_6A02(l_110) == 0) || (sub_F6B7(l_86, 4) != 0))
- {
- goto Label_01AF;
- }
- if (sub_10B44() != 0)
- {
- num3 = 0.986f;
- break;
- }
- num3 = 0.925f;
- break;
- case 2:
- sub_55C1(l_111);
- if ((sub_6A02(l_111) != 0) && (sub_F6B7(l_86, 16) == 0))
- {
- if (sub_10B44() != 0)
- {
- num3 = 0.986f;
- }
- else
- {
- num3 = 0.98f;
- }
- if (sub_5599(l_111) >= num3)
- {
- sub_F4AD(&l_86, 16);
- }
- }
- if (sub_F6B7(l_86, 16) != 0)
- {
- if (sub_10B44() == 0)
- {
- sub_5450(num4, num5);
- }
- sub_53E7(num4, num5);
- l_336 = 3;
- }
- return;
- case 3:
- sub_55C1(l_112);
- if ((sub_6A02(l_112) != 0) && (sub_F6B7(l_86, 64) == 0))
- {
- if (sub_F6B7(l_85, 0x1000000) != 0)
- {
- if (sub_10B44() == 0)
- {
- num3 = 0.975f;
- }
- else
- {
- num3 = 0.986f;
- }
- if (sub_5599(l_112) < num3)
- {
- sub_5B4(&l_85, 0x1000000);
- }
- }
- else
- {
- if (sub_10B44() != 0)
- {
- num3 = 0.986f;
- }
- else
- {
- num3 = 0.975f;
- }
- if (sub_5599(l_112) >= num3)
- {
- sub_F4AD(&l_85, 0x1000000);
- l_106++;
- }
- }
- if (l_106 >= sub_5099(sub_10B44(), sub_539D(), sub_50B0()))
- {
- sub_F4AD(&l_86, 64);
- sub_5B4(&l_85, 0x1000000);
- }
- }
- if (sub_F6B7(l_86, 64) != 0)
- {
- if (sub_10B44() == 0)
- {
- sub_5029(num4, num5);
- }
- sub_4FC0(num4, num5);
- l_336 = 4;
- }
- return;
- case 4:
- sub_55C1(l_113);
- if ((sub_6A02(l_113) != 0) && (sub_F6B7(l_86, 256) == 0))
- {
- if (sub_10B44() != 0)
- {
- num3 = 0.986f;
- }
- else
- {
- num3 = 0.925f;
- }
- if (sub_5599(l_113) >= num3)
- {
- sub_F4AD(&l_86, 256);
- }
- }
- if (sub_F6B7(l_86, 256) != 0)
- {
- if (sub_10B44() == 0)
- {
- sub_4E15(num4, num5);
- }
- sub_4D7C(num4, num5);
- l_336 = 5;
- }
- return;
- case 5:
- {
- sub_55C1(l_114);
- if (sub_6A02(l_114) == 0)
- {
- if (sub_F6B7(l_86, 1024) == 0)
- {
- sub_F4AD(&l_86, 1024);
- }
- }
- else if (sub_F6B7(l_86, 1024) == 0)
- {
- if (sub_10B44() != 0)
- {
- num3 = 0.986f;
- }
- else
- {
- num3 = 0.975f;
- }
- if (sub_5599(l_114) >= num3)
- {
- sub_F4AD(&l_86, 1024);
- }
- }
- if (sub_6A02(l_115) != 0)
- {
- if (sub_F6B7(l_86, 2048) == 0)
- {
- if (sub_10B44() == 0)
- {
- num3 = 0.975f;
- }
- else
- {
- num3 = 0.986f;
- }
- if (sub_5599(l_115) >= num3)
- {
- sub_F4AD(&l_86, 2048);
- }
- }
- }
- else if (sub_F6B7(l_86, 2048) == 0)
- {
- sub_F4AD(&l_86, 2048);
- }
- var num9 = sub_F6B7(l_86, 1024);
- if ((num9 & sub_F6B7(l_86, 2048)) != 0)
- {
- sub_56B0(l_127, 0);
- AI::TASK_PLAY_ANIM(l_127, l_96, sub_104D(l_336, 1, num4, num5), 4f, -4f, -1, 1, 0, 0, 0, 0);
- sub_56B0(PLAYER::PLAYER_PED_ID(), -1);
- AI::TASK_PLAY_ANIM(PLAYER::PLAYER_PED_ID(), l_96, sub_104D(l_336, 0, num4, num5), 4f, -4f, -1, 1, 0, 0, 0, 0);
- sub_3841(1);
- l_86 = 0;
- l_106 = 0;
- l_94 = 0;
- sub_411A();
- l_336 = 6;
- }
- return;
- }
- default:
- return;
- }
- if (sub_5599(l_110) >= num3)
- {
- sub_F4AD(&l_86, 4);
- }
- Label_01AF:
- if ((sub_6A02(l_109) != 0) && (sub_F6B7(l_86, 8) == 0))
- {
- if (sub_10B44() == 0)
- {
- num3 = 0.925f;
- }
- else
- {
- num3 = 0.986f;
- }
- if (sub_5599(l_109) >= num3)
- {
- sub_F4AD(&l_86, 8);
- }
- }
- var num1 = sub_F6B7(l_86, 4);
- if ((num1 & sub_F6B7(l_86, 8)) != 0)
- {
- if (sub_10B44() == 0)
- {
- sub_5529(num4, num5);
- }
- sub_54C0(num4, num5);
- l_336 = 2;
- }
- }
- void sub_411A()
- {
- bool flag1 = l_105 == 0;
- if (flag1 & (sub_10B44() == 0))
- {
- if (sub_C1F(PLAYER::PLAYER_PED_ID()) == 0)
- {
- sub_4D3B();
- }
- sub_4608(296, 0, 0);
- var num3 = sub_25E4(l_127);
- if (num3 > -1)
- {
- sub_4576(num3);
- }
- else
- {
- sub_43A2(l_127);
- }
- }
- l_105++;
- sub_4173();
- }
- void sub_4173()
- {
- switch (sub_C1F(PLAYER::PLAYER_PED_ID()))
- {
- case 0:
- setElem(getElem(0, ((&g_86838) + 7661) + 90, 4) + 1, 0, ((&g_86838) + 7661) + 90, 4);
- sub_4216(0, 1, 1);
- break;
- case 1:
- setElem(getElem(1, ((&g_86838) + 7661) + 90, 4) + 1, 1, ((&g_86838) + 7661) + 90, 4);
- sub_4216(1, 1, 1);
- break;
- case 2:
- setElem(getElem(2, ((&g_86838) + 7661) + 90, 4) + 1, 2, ((&g_86838) + 7661) + 90, 4);
- sub_4216(2, 1, 1);
- break;
- case 3:
- sub_4216(3, 1, 1);
- break;
- }
- }
- void sub_4216(var A_0, var A_1, var A_2)
- {
- var num4;
- switch (A_0)
- {
- case 0:
- case 1:
- case 2:
- setElem(getElem(A_0, getElemPtr(A_1, (((&g_86838) + 1729) + 539) + 1033, 16), 4) + A_2, A_0, getElemPtr(A_1, (((&g_86838) + 1729) + 539) + 1033, 16), 4);
- return;
- case 3:
- num4 = 1948;
- switch ((A_1))
- {
- case 1:
- num4 = 72;
- goto Label_0168;
- case 3:
- num4 = 74;
- goto Label_0168;
- case 2:
- num4 = 73;
- goto Label_0168;
- case 4:
- num4 = 75;
- goto Label_0168;
- case 5:
- num4 = 76;
- goto Label_0168;
- case 6:
- num4 = 77;
- goto Label_0168;
- case 7:
- num4 = 78;
- goto Label_0168;
- }
- break;
- default:
- return;
- }
- Label_0168:
- if (num4 != 1948)
- {
- var num3 = sub_4370(num4, -1, 0) + A_2;
- if (num3 > 100)
- {
- num3 = 100;
- }
- sub_4305(num4, num3, -1, 1);
- }
- }
- void sub_4305(var A_0, var A_1, var A_2, var A_3)
- {
- var num3 = getElem(sub_4330(A_2), getElemPtr(A_0, &g_2405085, 24), 4);
- if (num3 != 0)
- {
- STATS::STAT_SET_INT(num3, A_1, A_3);
- }
- }
- var sub_4330(var A_0)
- {
- var num3 = A_0;
- if (num3 == -1)
- {
- var num4 = sub_4364();
- if (num4 > -1)
- {
- g_2404826 = 0;
- num3 = num4;
- }
- else
- {
- num3 = 0;
- g_2404826 = 1;
- }
- }
- return num3;
- }
- var sub_4364()
- {
- return g_1338478;
- }
- var sub_4370(var A_0, var A_1, var A_2)
- {
- var num4;
- if (STATS::STAT_GET_INT(getElem(sub_4330(A_1), getElemPtr(A_0, &g_2405085, 24), 4), &num4, -1) != 0)
- {
- return num4;
- }
- return 0;
- }
- void sub_43A2(var A_0)
- {
- if (ENTITY::IS_ENTITY_DEAD(A_0) == 0)
- {
- var num3 = sub_454B();
- if (num3 != -1)
- {
- var num6;
- sub_4576(num3);
- PED::SET_PED_NAME_DEBUG(A_0, sub_44AE(num3));
- wPtr(ENTITY::GET_ENTITY_MODEL(A_0), getElemPtr(num3, ((&g_86838) + 7661) + 1, 44) + 40);
- var num5 = 0;
- while (true)
- {
- if (num5 >= 2)
- {
- break;
- }
- var num4 = num5;
- num6 = sub_449A(A_0, num4);
- sub_4477(num3, num4, num6);
- num5++;
- }
- num5 = 0;
- while (true)
- {
- if (num5 >= 2)
- {
- break;
- }
- var num7 = num5;
- num6 = sub_4463(A_0, num7);
- sub_4440(num3, num7, num6);
- num5++;
- }
- }
- }
- }
- void sub_4440(var A_0, var A_1, var A_2)
- {
- if (A_0 > -1)
- {
- setElem(A_2, A_1, getElemPtr(A_0, ((&g_86838) + 7661) + 1, 44) + 28, 4);
- }
- }
- var sub_4463(var A_0, var A_1)
- {
- return PED::GET_PED_TEXTURE_VARIATION(A_0, sub_26D9(A_1));
- }
- void sub_4477(var A_0, var A_1, var A_2)
- {
- if (A_0 > -1)
- {
- setElem(A_2, A_1, getElemPtr(A_0, ((&g_86838) + 7661) + 1, 44) + 16, 4);
- }
- }
- var sub_449A(var A_0, var A_1)
- {
- return PED::GET_PED_DRAWABLE_VARIATION(A_0, sub_2778(A_1));
- }
- var sub_44AE(var A_0)
- {
- return sub_44BC(A_0);
- }
- var sub_44BC(var A_0)
- {
- var num3;
- switch (A_0)
- {
- case 0:
- num3 = "UPRO BABS";
- break;
- case 1:
- num3 = "UPRO DANA";
- break;
- case 2:
- num3 = "UPRO LIZZIE";
- break;
- case 3:
- num3 = "UPRO AMANDA";
- break;
- case 4:
- num3 = "UPRO ASHLEY";
- break;
- case 5:
- num3 = "UPRO KRISTEN";
- break;
- case 6:
- num3 = "UPRO SASHA";
- break;
- case 7:
- num3 = "UPRO JACQUELINE";
- break;
- default:
- num3 = "UPRO N/A";
- break;
- }
- return num3;
- }
- var sub_454B()
- {
- for (var i = 0; i < 8; i++)
- {
- if (sub_2579(i) == 0)
- {
- return i;
- }
- }
- return -1;
- }
- void sub_4576(var A_0)
- {
- if (A_0 > -1)
- {
- if (sub_B25() == 0)
- {
- setElem(getElem(0, getElemPtr(A_0, ((&g_86838) + 7661) + 1, 44), 4) + 1, 0, getElemPtr(A_0, ((&g_86838) + 7661) + 1, 44), 4);
- }
- else if (sub_B25() == 1)
- {
- setElem(getElem(1, getElemPtr(A_0, ((&g_86838) + 7661) + 1, 44), 4) + 1, 1, getElemPtr(A_0, ((&g_86838) + 7661) + 1, 44), 4);
- }
- else if (sub_B25() == 2)
- {
- setElem(getElem(2, getElemPtr(A_0, ((&g_86838) + 7661) + 1, 44), 4) + 1, 2, getElemPtr(A_0, ((&g_86838) + 7661) + 1, 44), 4);
- }
- }
- }
- void sub_4608(var A_0, var A_1, var A_2)
- {
- bool flag1 = A_0 == 318;
- if (!(flag1 | (A_0 > 318)))
- {
- sub_4B79(891 + A_0, 1, -1, 1);
- }
- var num3 = 1;
- if (rPtr(getElemPtr(A_0, (&g_86838) + 7793, 48) + 20) == 1)
- {
- bool flag2 = rPtr(getElemPtr(A_0, (&g_86838) + 7793, 48) + 24) == 11;
- if (flag2 | (rPtr(getElemPtr(A_0, (&g_86838) + 7793, 48) + 24) == 12))
- {
- num3 = 0;
- }
- }
- else
- {
- wPtr(1, getElemPtr(A_0, (&g_86838) + 7793, 48) + 20);
- wPtr(A_1, getElemPtr(A_0, (&g_86838) + 7793, 48) + 40);
- wPtr(A_2, getElemPtr(A_0, (&g_86838) + 7793, 48) + 44);
- if (A_0 == 287)
- {
- STATS::0x4AC39C6C(0x86267624, 50, 0);
- }
- if (A_0 == 286)
- {
- STATS::0x4AC39C6C(0x52AF42B, 50, 0);
- }
- if (A_0 == 299)
- {
- STATS::0x4AC39C6C(0xE99D3D10, 50, 0);
- }
- }
- if (num3 != 0)
- {
- sub_46F0();
- }
- }
- void sub_46F0()
- {
- var num3 = 0;
- g_86617 = 0;
- g_86618 = 0;
- g_86619 = 0;
- g_86620 = 0;
- g_86621 = 0;
- g_86622 = 0;
- g_86623 = 0;
- var num4 = 0f;
- var num5 = 0f;
- var num6 = 0f;
- var num7 = 0f;
- var num8 = 0f;
- var num9 = 0f;
- var num10 = 0f;
- wPtr(0f, ((&g_86838) + 7793) + 3817);
- Label_00A9:
- if (num3 >= 318)
- {
- var num11;
- if ((g_86600 > 0) && (g_86617 == g_86600))
- {
- num4 = 55f;
- }
- if ((g_86601 > 0) && (g_86618 == g_86601))
- {
- num5 = 10f;
- }
- if ((g_86602 > 0) && (g_86619 == g_86602))
- {
- num6 = 0f;
- }
- if ((g_86603 > 0) && (g_86620 == g_86603))
- {
- num7 = 10f;
- }
- if (g_86604 > 0)
- {
- bool flag1 = g_86621 == g_86604;
- bool flag2 = flag1 | (((g_86604 * 10) / g_86621) < 41);
- bool flag3 = flag2 | (g_86621 > g_86607);
- if (flag3 | (g_86621 == g_86607))
- {
- if ((GAMEPLAY::IS_BIT_SET(rPtr(((&g_86838) + 7793) + 3820), 14) == 0) && (g_86621 == g_86604))
- {
- STATS::0x4AC39C6C(0x817B5488, g_86604, 0);
- GAMEPLAY::SET_BIT(((&g_86838) + 7793) + 3820, 14);
- }
- num8 = 5f;
- }
- }
- if ((g_86605 > 0) && (g_86622 == g_86605))
- {
- num9 = 15f;
- }
- if ((g_86606 > 0) && (g_86623 == g_86606))
- {
- num10 = 5f;
- }
- wPtr((((((num4 + num5) + num6) + num7) + num8) + num9) + num10, ((&g_86838) + 7793) + 3817);
- bool flag4 = g_86621 > g_86607;
- if (flag4 | (g_86621 == g_86607))
- {
- num11 = g_86607;
- }
- else
- {
- num11 = g_86621;
- }
- STATS::STAT_SET_INT(0xC115F6B0, g_86617, 1);
- STATS::STAT_SET_INT(0xE6FB1EBC, g_86600, 1);
- STATS::STAT_SET_INT(0x4F5B53BA, g_86618, 1);
- STATS::STAT_SET_INT(0x2053B0A0, g_86601, 1);
- STATS::STAT_SET_INT(0x5D0E88A9, g_86619, 1);
- STATS::STAT_SET_INT(0x214A068C, g_86602, 1);
- STATS::STAT_SET_INT(0xCD2D71F9, g_86620, 1);
- STATS::STAT_SET_INT(0xFEC8B0D8, g_86603, 1);
- STATS::STAT_SET_INT(0x817B5488, num11, 1);
- STATS::STAT_SET_INT(0xF32498EA, g_86607, 1);
- STATS::STAT_SET_INT(0xF82362EF, g_86623 + g_86622, 1);
- STATS::STAT_SET_INT(0x83A486E8, g_86606 + g_86605, 1);
- g_86624 = (g_86617 * 100) / g_86600;
- g_86626 = ((g_86619 + g_86618) * 100) / (g_86602 + g_86601);
- g_86625 = ((g_86620 + num11) * 100) / (g_86603 + g_86607);
- g_86627 = ((g_86622 + g_86623) * 100) / (g_86605 + g_86606);
- STATS::STAT_SET_FLOAT(0x486CDCFF, rPtr(((&g_86838) + 7793) + 3817), 1);
- STATS::STAT_SET_INT(0x6C11A0FD, g_86624, 1);
- STATS::STAT_SET_INT(0xB82247AC, g_86625, 1);
- STATS::STAT_SET_INT(0x1CA274FA, g_86626, 1);
- if ((DATAFILE::0x5DCD0796() == 0) && (g_59842 == 0))
- {
- bool flag5 = sub_4B6E() != 2;
- if (flag5 & (NETWORK::NETWORK_IS_GAME_IN_PROGRESS() == 0))
- {
- if (NETWORK::NETWORK_IS_CLOUD_AVAILABLE() != 0)
- {
- g_86615 = 0;
- }
- if (g_46771 == 0)
- {
- sub_3188();
- }
- }
- }
- }
- else
- {
- if (rPtr(getElemPtr(num3, (&g_86838) + 7793, 48) + 20) == 1)
- {
- switch (rPtr(getElemPtr(num3, (&g_86838) + 7793, 48) + 24))
- {
- case 1:
- g_86617++;
- num4 += rPtr(getElemPtr(num3, (&g_86838) + 7793, 48) + 16);
- break;
- case 3:
- g_86618++;
- num5 += rPtr(getElemPtr(num3, (&g_86838) + 7793, 48) + 16);
- break;
- case 5:
- g_86619++;
- num6 += rPtr(getElemPtr(num3, (&g_86838) + 7793, 48) + 16);
- break;
- case 7:
- g_86620++;
- num7 += rPtr(getElemPtr(num3, (&g_86838) + 7793, 48) + 16);
- break;
- case 9:
- g_86621++;
- num8 += (rPtr(getElemPtr(num3, (&g_86838) + 7793, 48) + 16) * 4f);
- break;
- case 11:
- g_86622++;
- num9 += rPtr(getElemPtr(num3, (&g_86838) + 7793, 48) + 16);
- break;
- case 13:
- g_86623++;
- num10 += rPtr(getElemPtr(num3, (&g_86838) + 7793, 48) + 16);
- break;
- }
- }
- num3++;
- goto Label_00A9;
- }
- }
- var sub_4B6E()
- {
- return g_19455;
- }
- var sub_4B79(var A_0, var A_1, var A_2, var A_3)
- {
- if (A_2 == -1)
- {
- A_2 = sub_4364();
- }
- var num3 = 0;
- bool flag1 = A_0 >= 0;
- if (flag1 & (A_0 < 192))
- {
- var num4 = STATS::0xB5BF87B2((A_0) - 0, 0, 1, A_2);
- var num5 = ((A_0) - 0) - (STATS::0xDFC25D66((A_0) - 0) * 64);
- num3 = STATS::STAT_SET_BOOL_MASKED(num4, A_1, num5, A_3);
- }
- else
- {
- bool flag2 = A_0 >= 192;
- if (flag2 & (A_0 < 384))
- {
- var num6 = STATS::0xB5BF87B2((A_0) - 192, 1, 1, A_2);
- var num7 = ((A_0) - 192) - (STATS::0xDFC25D66((A_0) - 192) * 64);
- num3 = STATS::STAT_SET_BOOL_MASKED(num6, A_1, num7, A_3);
- }
- else
- {
- bool flag3 = A_0 >= 513;
- if (flag3 & (A_0 < 705))
- {
- var num8 = STATS::0xB5BF87B2((A_0) - 513, 0, 0, 0);
- var num9 = ((A_0) - 513) - (STATS::0xDFC25D66((A_0) - 513) * 64);
- num3 = STATS::STAT_SET_BOOL_MASKED(num8, A_1, num9, A_3);
- }
- else
- {
- bool flag4 = A_0 >= 705;
- if (flag4 & (A_0 < 1281))
- {
- var num10 = STATS::0xB5BF87B2((A_0) - 705, 1, 0, 0);
- var num11 = ((A_0) - 705) - (STATS::0xDFC25D66((A_0) - 705) * 64);
- num3 = STATS::STAT_SET_BOOL_MASKED(num10, A_1, num11, A_3);
- }
- else
- {
- bool flag5 = A_0 >= 2598;
- if (flag5 & (A_0 < 2790))
- {
- var num12 = STATS::0x3F8E893B((A_0) - 2598, 0, 1, A_2);
- var num13 = ((A_0) - 2598) - (STATS::0xDFC25D66((A_0) - 2598) * 64);
- num3 = STATS::STAT_SET_BOOL_MASKED(num12, A_1, num13, A_3);
- }
- else
- {
- bool flag6 = A_0 >= 2406;
- if (flag6 & (A_0 < 2598))
- {
- var num14 = STATS::0x3F8E893B((A_0) - 2406, 0, 0, 0);
- var num15 = ((A_0) - 2406) - (STATS::0xDFC25D66((A_0) - 2406) * 64);
- num3 = STATS::STAT_SET_BOOL_MASKED(num14, A_1, num15, A_3);
- }
- }
- }
- }
- }
- }
- return num3;
- }
- void sub_4D3B()
- {
- for (var i = 0; i < 2; i++)
- {
- if (i < 1)
- {
- setElem(getElem(i + 1, &g_78226, 4), i, &g_78226, 4);
- }
- else
- {
- setElem(GAMEPLAY::GET_GAME_TIMER(), i, &g_78226, 4);
- }
- }
- }
- void sub_4D7C(var A_0, var A_1)
- {
- var num3 = 2052;
- if (sub_10B44() != 0)
- {
- num3 = 2056;
- }
- sub_4DE5(l_127, l_114, l_96, sub_104D(4, 1, A_0, A_1), 0.7f, 0.7f, num3, 0, 0.7f, 0);
- sub_4DE5(PLAYER::PLAYER_PED_ID(), l_115, l_96, sub_104D(4, 0, A_0, A_1), 0.7f, 0.7f, num3, 0, 0.7f, 0);
- }
- void sub_4DE5(var A_0, var A_1, var A_2, var A_3, var A_4, var A_5, var A_6, var A_7, var A_8, var A_9)
- {
- if (sub_10B44() != 0)
- {
- NETWORK::NETWORK_START_SYNCHRONISED_SCENE(A_1);
- }
- else
- {
- AI::TASK_SYNCHRONIZED_SCENE(A_0, A_1, A_2, A_3, A_4, A_5, A_6, A_7, A_8, A_9);
- }
- }
- void sub_4E15(var A_0, var A_1)
- {
- var num3 = 2052;
- if (sub_10B44() != 0)
- {
- num3 = 2056;
- }
- sub_4EB3(&l_114, 1, 0, 0);
- sub_4E8E(l_127, l_114, l_96, sub_104D(4, 1, A_0, A_1), 0.7f, 0.7f, num3, 0, 0.7f);
- sub_4EB3(&l_115, 0, 0, 0);
- sub_4E8E(PLAYER::PLAYER_PED_ID(), l_115, l_96, sub_104D(4, 0, A_0, A_1), 0.7f, 0.7f, num3, 0, 0.7f);
- }
- void sub_4E8E(var A_0, var A_1, var A_2, var A_3, var A_4, var A_5, var A_6, var A_7, var A_8)
- {
- if (sub_10B44() != 0)
- {
- NETWORK::NETWORK_ADD_PED_TO_SYNCHRONISED_SCENE(A_0, A_1, A_2, A_3, A_4, A_5, A_6, A_7, A_8);
- }
- }
- void sub_4EB3(var A_0, var A_1, var A_2, var A_3)
- {
- var num3;
- setStruct(0f, 0f, 0f, 3, &num3);
- struct _s = &num3;
- wPtr(sub_4F6B(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 0f, 0f, 0f, A_3, A_2, 2), A_0);
- if (A_1 == 0)
- {
- sub_4F39(rPtr(A_0), l_130, ENTITY::0xE4ECAC22(l_130, "seat_dside_f"));
- }
- else if (A_1 == 1)
- {
- sub_4F39(rPtr(A_0), l_130, ENTITY::0xE4ECAC22(l_130, "seat_pside_f"));
- }
- struct _s = &num3;
- sub_4F19(rPtr(A_0), rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 0f, 0f, 0f, 0);
- }
- void sub_4F19(var A_0, var A_1, var A_2, var A_3, var A_4, var A_5, var A_6, var A_7)
- {
- if (sub_10B44() == 0)
- {
- struct _s = &A_1;
- struct _s = &A_4;
- PED::SET_SYNCHRONIZED_SCENE_ORIGIN(A_0, rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), A_7);
- }
- }
- void sub_4F39(var A_0, var A_1, var A_2)
- {
- if (ENTITY::IS_ENTITY_DEAD(A_1) == 0)
- {
- if (sub_10B44() != 0)
- {
- NETWORK::NETWORK_ATTACH_SYNCHRONISED_SCENE_TO_ENTITY(A_0, A_1, A_2);
- }
- else
- {
- PED::ATTACH_SYNCHRONIZED_SCENE_TO_ENTITY(A_0, A_1, A_2);
- }
- }
- }
- var sub_4F6B(var A_0, var A_1, var A_2, var A_3, var A_4, var A_5, var A_6, var A_7, var A_8)
- {
- var num3;
- if (sub_10B44() != 0)
- {
- if (A_6 != null)
- {
- A_7 = 0;
- }
- struct _s = &A_0;
- struct _s = &A_3;
- num3 = NETWORK::NETWORK_CREATE_SYNCHRONISED_SCENE(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), A_8, A_6, A_7, 0x3F800000);
- }
- else
- {
- struct _s = &A_0;
- struct _s = &A_3;
- num3 = PED::CREATE_SYNCHRONIZED_SCENE(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), A_8);
- PED::0x2DE48DA1(num3, A_6);
- PED::SET_SYNCHRONIZED_SCENE_LOOPED(num3, A_7);
- }
- return num3;
- }
- void sub_4FC0(var A_0, var A_1)
- {
- var num3 = 2052;
- if (sub_10B44() != 0)
- {
- num3 = 2056;
- }
- sub_4DE5(l_127, l_113, l_96, sub_104D(3, 1, A_0, A_1), 0.7f, -0.7f, num3, 0, 0.7f, 0);
- sub_4DE5(PLAYER::PLAYER_PED_ID(), l_113, l_96, sub_104D(3, 0, A_0, A_1), 0.7f, -0.7f, num3, 0, 0.7f, 0);
- }
- void sub_5029(var A_0, var A_1)
- {
- var num3 = 2052;
- if (sub_10B44() != 0)
- {
- num3 = 2056;
- }
- sub_4EB3(&l_113, 0, 0, 1);
- sub_4E8E(l_127, l_113, l_96, sub_104D(3, 1, A_0, A_1), 0.7f, -0.7f, num3, 0, 0.7f);
- sub_4E8E(PLAYER::PLAYER_PED_ID(), l_113, l_96, sub_104D(3, 0, A_0, A_1), 0.7f, -0.7f, num3, 0, 0.7f);
- }
- var sub_5099(var A_0, var A_1, var A_2)
- {
- if (A_0 != null)
- {
- return A_1;
- }
- return A_2;
- }
- var sub_50B0()
- {
- var num4;
- var num3 = sub_50E8();
- if (num3 < 48)
- {
- num4 = 2;
- }
- else
- {
- bool flag1 = num3 >= 48;
- if (flag1 & (num3 < 85))
- {
- num4 = 3;
- }
- else
- {
- num4 = 4;
- }
- }
- return num4;
- }
- var sub_50E8()
- {
- if (sub_10B44() != 0)
- {
- return sub_4370(65, -1, 0);
- }
- return sub_5112(sub_C1F(PLAYER::PLAYER_PED_ID()), 1);
- }
- var sub_5112(var A_0, var A_1)
- {
- var num3;
- STATS::STAT_GET_INT(sub_5130(A_0, A_1), &num3, -1);
- return num3;
- }
- var sub_5130(var A_0, var A_1)
- {
- var num3;
- var num4;
- sub_5146(A_0, A_1, &num3, &num4);
- return num3;
- }
- void sub_5146(var A_0, var A_1, var A_2, var A_3)
- {
- switch (A_0)
- {
- case 0:
- switch ((A_1))
- {
- case 0:
- wPtr(0x4ECD9F81, A_2);
- return;
- case 1:
- wPtr(0x22C8AAA2, A_2);
- return;
- case 3:
- wPtr(0x73968EBD, A_2);
- return;
- case 2:
- wPtr(0x906B2799, A_2);
- return;
- case 4:
- wPtr(0x11B47270, A_2);
- return;
- case 5:
- wPtr(0x78ABE4E6, A_2);
- return;
- case 6:
- wPtr(0xB4892709, A_2);
- return;
- case 7:
- wPtr(0x2268B791, A_2);
- return;
- }
- break;
- case 1:
- switch ((A_1))
- {
- case 0:
- wPtr(0x51CCFBA3, A_2);
- return;
- case 1:
- wPtr(0x255EFFB5, A_2);
- return;
- case 3:
- wPtr(0x6C3BBB1A, A_2);
- return;
- case 2:
- wPtr(0xB82874E3, A_2);
- return;
- case 4:
- wPtr(0x7DD80AC8, A_2);
- return;
- case 5:
- wPtr(0xE98BEE3D, A_2);
- return;
- case 6:
- wPtr(0xCB261497, A_2);
- return;
- case 7:
- wPtr(0xE76D0C23, A_2);
- return;
- }
- break;
- case 2:
- switch ((A_1))
- {
- case 0:
- wPtr(0x5B06442, A_2);
- return;
- case 1:
- wPtr(0x7D8246AE, A_2);
- return;
- case 3:
- wPtr(0x7E9487B3, A_2);
- return;
- case 2:
- wPtr(0x4F19E159, A_2);
- return;
- case 4:
- wPtr(0x6BEF592F, A_2);
- return;
- case 5:
- wPtr(0x77CF9710, A_2);
- return;
- case 6:
- wPtr(0x2A3A74EA, A_2);
- return;
- case 7:
- wPtr(0xD03B7EEB, A_2);
- return;
- }
- break;
- case 3:
- switch ((A_1))
- {
- case 0:
- wPtr(64, A_3);
- return;
- case 1:
- wPtr(65, A_3);
- return;
- case 3:
- wPtr(67, A_3);
- return;
- case 2:
- wPtr(66, A_3);
- return;
- case 4:
- wPtr(68, A_3);
- return;
- case 5:
- wPtr(69, A_3);
- return;
- case 6:
- wPtr(70, A_3);
- return;
- case 7:
- wPtr(71, A_3);
- return;
- }
- break;
- }
- }
- var sub_539D()
- {
- var num3;
- if (l_328 != 0)
- {
- if (l_94 < 2)
- {
- num3 = 3;
- }
- else if (l_94 == 2)
- {
- num3 = 4;
- }
- else if (l_94 == 3)
- {
- num3 = 5;
- }
- else
- {
- num3 = 6;
- }
- }
- else if (l_94 < 3)
- {
- num3 = 2;
- }
- else
- {
- num3 = 3;
- }
- return num3;
- }
- void sub_53E7(var A_0, var A_1)
- {
- var num3 = 2052;
- if (sub_10B44() != 0)
- {
- num3 = 2056;
- }
- sub_4DE5(l_127, l_112, l_96, sub_104D(2, 1, A_0, A_1), 0.7f, -0.7f, num3, 0, 0.7f, 0);
- sub_4DE5(PLAYER::PLAYER_PED_ID(), l_112, l_96, sub_104D(2, 0, A_0, A_1), 0.7f, -0.7f, num3, 0, 0.7f, 0);
- }
- void sub_5450(var A_0, var A_1)
- {
- var num3 = 2052;
- if (sub_10B44() != 0)
- {
- num3 = 2056;
- }
- sub_4EB3(&l_112, 0, 1, 0);
- sub_4E8E(l_127, l_112, l_96, sub_104D(2, 1, A_0, A_1), 1000f, -1000f, num3, 0, 0x447A0000);
- sub_4E8E(PLAYER::PLAYER_PED_ID(), l_112, l_96, sub_104D(2, 0, A_0, A_1), 1000f, -1000f, num3, 0, 0x447A0000);
- }
- void sub_54C0(var A_0, var A_1)
- {
- var num3 = 2052;
- if (sub_10B44() != 0)
- {
- num3 = 2056;
- }
- sub_4DE5(l_127, l_111, l_96, sub_104D(1, 1, A_0, A_1), 0.7f, -0.7f, num3, 0, 0.7f, 0);
- sub_4DE5(PLAYER::PLAYER_PED_ID(), l_111, l_96, sub_104D(1, 0, A_0, A_1), 0.7f, -0.7f, num3, 0, 0.7f, 0);
- }
- void sub_5529(var A_0, var A_1)
- {
- var num3 = 2052;
- if (sub_10B44() != 0)
- {
- num3 = 2056;
- }
- sub_4EB3(&l_111, 0, 0, 1);
- sub_4E8E(l_127, l_111, l_96, sub_104D(1, 1, A_0, A_1), 0.7f, -0.7f, num3, 0, 0.7f);
- sub_4E8E(PLAYER::PLAYER_PED_ID(), l_111, l_96, sub_104D(1, 0, A_0, A_1), 0.7f, -0.7f, num3, 0, 0.7f);
- }
- var sub_5599(var A_0)
- {
- var num3;
- if (sub_10B44() != 0)
- {
- num3 = PED::GET_SYNCHRONIZED_SCENE_PHASE(NETWORK::0x16AED87B(A_0));
- }
- else
- {
- num3 = PED::GET_SYNCHRONIZED_SCENE_PHASE(A_0);
- }
- return num3;
- }
- void sub_55C1(var A_0)
- {
- if (sub_6A02(A_0) == 0)
- {
- }
- }
- void sub_55D6(var A_0, var A_1)
- {
- var num3 = 2052;
- if (sub_10B44() != 0)
- {
- num3 = 2056;
- }
- sub_4DE5(l_127, l_109, l_96, sub_104D(0, 1, A_0, A_1), 8f, -0.7f, num3, 0, 1000f, 0);
- sub_4DE5(PLAYER::PLAYER_PED_ID(), l_110, l_96, sub_104D(0, 0, A_0, A_1), 8f, -0.7f, num3, 0, 1000f, 0);
- }
- void sub_563F(var A_0, var A_1)
- {
- var num3 = 2052;
- if (sub_10B44() != 0)
- {
- num3 = 2056;
- }
- sub_4EB3(&l_109, 1, 0, 1);
- sub_4E8E(l_127, l_109, l_96, sub_104D(0, 1, A_0, A_1), 4f, -1000f, num3, 0, 0x447A0000);
- sub_4EB3(&l_110, 0, 0, 1);
- sub_4E8E(PLAYER::PLAYER_PED_ID(), l_110, l_96, sub_104D(0, 0, A_0, A_1), 4f, -1000f, num3, 0, 0x447A0000);
- }
- void sub_56B0(var A_0, var A_1)
- {
- if (PED::IS_PED_IN_VEHICLE(A_0, l_130, 0) == 0)
- {
- if (sub_10B44() == 0)
- {
- PED::SET_PED_INTO_VEHICLE(A_0, l_130, A_1);
- }
- else if (PED::IS_PED_IN_VEHICLE(A_0, l_130, 0) == 0)
- {
- AI::TASK_ENTER_VEHICLE(A_0, l_130, -1, A_1, 2f, 16, 0);
- }
- }
- }
- void sub_56F6(var A_0)
- {
- var num5;
- var num9;
- struct _s = sub_58CB(2);
- struct _s = ENTITY::0x7C6339DF(l_130, ENTITY::0xE4ECAC22(l_130, "windscreen"));
- var num3 = sub_58B1(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8));
- struct _s = sub_58CB(1);
- struct _s = ENTITY::0x7C6339DF(l_130, ENTITY::0xE4ECAC22(l_130, "windscreen"));
- var num4 = sub_58B1(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8));
- struct _s = ENTITY::GET_ENTITY_ROTATION(l_130, 2);
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, &num5);
- var num8 = ENTITY::GET_ENTITY_HEADING(l_130);
- if (num8 >= 180f)
- {
- num9 = num8 - (180f);
- }
- else
- {
- num9 = num8 + (180f);
- }
- var num10 = (-7f) - rPtr((&num5) + 1);
- var num11 = (-5f) - num5;
- var num12 = (-2.5f) + num5;
- var num13 = ((0f - (0.7f * num5)) + (0.3f * rPtr((&num5) + 1)));
- if (CAM::DOES_CAM_EXIST(getElem(2, &l_344, 28)) == 0)
- {
- struct _s = sub_58CB(2);
- sub_5860(getElemPtr(2, &l_344, 28), rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), num10, num5, num3, 50f);
- }
- if (CAM::DOES_CAM_EXIST(getElem(1, &l_344, 28)) == 0)
- {
- struct _s = sub_58CB(1);
- sub_5860(getElemPtr(1, &l_344, 28), rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), num13, -rPtr((&num5) + 1), num4, 37.3f);
- }
- if (CAM::DOES_CAM_EXIST(getElem(0, &l_344, 28)) == 0)
- {
- struct _s = sub_58CB(0);
- sub_5860(getElemPtr(0, &l_344, 28), rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), num11, -rPtr((&num5) + 1), num9, 50f);
- }
- if (CAM::DOES_CAM_EXIST(getElem(3, &l_344, 28)) == 0)
- {
- struct _s = sub_58CB(3);
- sub_5860(getElemPtr(3, &l_344, 28), rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), num12, rPtr((&num5) + 1), num8, 45f);
- }
- CAM::RENDER_SCRIPT_CAMS(1, 0, 3000, 1, 0);
- CAM::SET_CAM_ACTIVE(getElem(rPtr(A_0), &l_344, 28), 1);
- }
- void sub_5860(var A_0, var A_1, var A_2, var A_3, var A_4, var A_5, var A_6, var A_7)
- {
- struct _s = &A_4;
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, (A_0) + 4);
- setStruct(0f, 0f, 0f, 3, (A_0) + 16);
- wPtr(CAM::CREATE_CAM("DEFAULT_SCRIPTED_CAMERA", 0), A_0);
- CAM::SET_CAM_ACTIVE(rPtr(A_0), 1);
- struct _s = &A_1;
- struct _s = (A_0) + 4;
- CAM::SET_CAM_PARAMS(rPtr(A_0), rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), A_7, 0, 1, 1, 2);
- CAM::RENDER_SCRIPT_CAMS(1, 0, 3000, 1, 0);
- }
- var sub_58B1(var A_0, var A_1, var A_2, var A_3, var A_4, var A_5)
- {
- return GAMEPLAY::GET_HEADING_FROM_VECTOR_2D((A_3 - A_0), rPtr((&A_3) + 4) - rPtr((&A_0) + 4));
- }
- var sub_58CB(var A_0)
- {
- var num3;
- var num6;
- var num9;
- var num12;
- var num15;
- if (ENTITY::IS_ENTITY_DEAD(l_127) == 0)
- {
- }
- if (VEHICLE::IS_VEHICLE_DRIVEABLE(l_130, 0) == 0)
- {
- }
- GAMEPLAY::GET_MODEL_DIMENSIONS(ENTITY::GET_ENTITY_MODEL(l_130), &num6, &num9);
- struct _s = ENTITY::0x7C6339DF(l_130, ENTITY::0xE4ECAC22(l_130, "windscreen"));
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, &num12);
- struct _s = &num12;
- struct _s = ENTITY::GET_OFFSET_FROM_ENTITY_GIVEN_WORLD_COORDS(l_130, rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8));
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, &num15);
- switch (A_0)
- {
- case 0:
- struct _s = ENTITY::GET_OFFSET_FROM_ENTITY_IN_WORLD_COORDS(l_130, 0f, rPtr((&num9) + 1) + (1.4f), rPtr((&num15) + 2));
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, &num3);
- break;
- case 1:
- struct _s = ENTITY::GET_OFFSET_FROM_ENTITY_IN_WORLD_COORDS(l_130, 1.5f, rPtr((&num9) + 1) + (1.2f), rPtr((&num15) + 2) - (0.1f));
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, &num3);
- break;
- case 2:
- struct _s = ENTITY::GET_OFFSET_FROM_ENTITY_IN_WORLD_COORDS(l_130, -3.7f, 0.7f, rPtr((&num15) + 2));
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, &num3);
- break;
- case 3:
- struct _s = sub_59A3();
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, &num3);
- break;
- }
- struct _s = &num3;
- return buildStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8));
- }
- var sub_59A3()
- {
- var num3;
- var num6;
- var num9;
- var num12;
- GAMEPLAY::GET_MODEL_DIMENSIONS(ENTITY::GET_ENTITY_MODEL(l_130), &num9, &num12);
- struct _s = ENTITY::0x7C6339DF(l_130, ENTITY::0xE4ECAC22(l_130, "windscreen"));
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, &num3);
- struct _s = &num3;
- struct _s = ENTITY::GET_OFFSET_FROM_ENTITY_GIVEN_WORLD_COORDS(l_130, rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8));
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, &num6);
- wPtr(rPtr((&num6) + 2) + (0.09f), (&num6) + 2);
- wPtr(rPtr((&num9) + 1) - (1f), (&num9) + 1);
- struct _s = ENTITY::GET_OFFSET_FROM_ENTITY_IN_WORLD_COORDS(l_130, 0f, -GAMEPLAY::ABSF(rPtr((&num9) + 1)), rPtr((&num6) + 2));
- return buildStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8));
- }
- void sub_5A07(var A_0, var A_1)
- {
- if (A_1 != null)
- {
- GAMEPLAY::SET_BIT(&g_19694, A_0);
- }
- else
- {
- GAMEPLAY::CLEAR_BIT(&g_19694, A_0);
- }
- }
- void sub_5A29(var A_0)
- {
- if ((CAM::DOES_CAM_EXIST(getElem(rPtr(A_0), &l_344, 28)) != 0) && (CAM::IS_CAM_RENDERING(getElem(rPtr(A_0), &l_344, 28)) != 0))
- {
- CAM::SHAKE_CAM(getElem(rPtr(A_0), &l_344, 28), "HAND_SHAKE", 0.25f);
- if (UI::IS_PAUSE_MENU_ACTIVE() == 0)
- {
- sub_5B8B(getElemPtr(rPtr(A_0), &l_344, 28));
- }
- if (sub_5B59() != 0)
- {
- if ((sub_10B44() == 0) && (sub_F422("PROS_CAM_OC") == 0))
- {
- sub_35FC("PROS_CAM_OC");
- }
- }
- else
- {
- if ((sub_10B44() == 0) && (sub_F422("PROS_CAM_TOG") == 0))
- {
- sub_35FC("PROS_CAM_TOG");
- }
- CONTROLS::SET_INPUT_EXCLUSIVE(2, 184);
- if (CONTROLS::IS_CONTROL_JUST_PRESSED(2, 184) != 0)
- {
- sub_5AE6(A_0);
- CAM::SET_CAM_ACTIVE(getElem(rPtr(A_0), &l_344, 28), 1);
- }
- }
- }
- }
- void sub_5AE6(var A_0)
- {
- if (rPtr(A_0) < 3)
- {
- wPtr(rPtr(A_0) + 1, A_0);
- }
- else if (rPtr(A_0) == 3)
- {
- wPtr(0, A_0);
- }
- if ((rPtr(A_0) == 0) && (sub_F6B7(l_87, 16) != 0))
- {
- wPtr(rPtr(A_0) + 1, A_0);
- }
- if ((rPtr(A_0) == 1) && (sub_F6B7(l_87, 128) != 0))
- {
- wPtr(rPtr(A_0) + 1, A_0);
- }
- if ((rPtr(A_0) == 2) && (sub_F6B7(l_87, 64) != 0))
- {
- wPtr(rPtr(A_0) + 1, A_0);
- }
- }
- var sub_5B59()
- {
- var num1 = sub_F6B7(l_87, 16);
- var num6 = num1 & sub_F6B7(l_87, 64);
- if ((num6 & sub_F6B7(l_87, 128)) != 0)
- {
- return 1;
- }
- return 0;
- }
- void sub_5B8B(var A_0)
- {
- var num3;
- var num8;
- var num12;
- initArray(&num3, 4);
- CONTROLS::0x2CEDE6C5(2);
- sub_5CE3(getElemPtr(0, &num3, 4), getElemPtr(1, &num3, 4), getElemPtr(2, &num3, 4), getElemPtr(3, &num3, 4), 0);
- wPtr((-(SYSTEM::TO_FLOAT(getElem(2, &num3, 4)) / 127f) * 10f), (&num8) + 2);
- wPtr(((-rPtr((&num8) + 2) * 3f) / 10f), (&num8) + 1);
- if (CONTROLS::IS_LOOK_INVERTED() != 0)
- {
- num8 = ((SYSTEM::TO_FLOAT(getElem(3, &num3, 4)) / 127f) * 10f);
- }
- else
- {
- num8 = (-(SYSTEM::TO_FLOAT(getElem(3, &num3, 4)) / 127f) * 10f);
- }
- var num11 = (30f * SYSTEM::TIMESTEP());
- struct _s = &num8;
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, &num12);
- wPtr(rPtr((A_0) + 16) + sub_5CBC((((num12 - rPtr((A_0) + 16)) * 0.05f) * num11), -3f, 3f), (A_0) + 16);
- wPtr(rPtr(((A_0) + 16) + 4) + sub_5CBC((((rPtr((&num12) + 1) - rPtr(((A_0) + 16) + 4)) * 0.05f) * num11), -3f, 3f), ((A_0) + 16) + 4);
- wPtr(rPtr(((A_0) + 16) + 8) + sub_5CBC((((rPtr((&num12) + 2) - rPtr(((A_0) + 16) + 8)) * 0.05f) * num11), -3f, 3f), ((A_0) + 16) + 8);
- struct _s = (A_0) + 4;
- struct _s = (A_0) + 16;
- struct _s = vadd(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8));
- CAM::SET_CAM_ROT(rPtr(A_0), rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 2);
- }
- var sub_5CBC(var A_0, var A_1, var A_2)
- {
- if (A_0 > A_2)
- {
- return A_2;
- }
- if (A_0 < A_1)
- {
- return A_1;
- }
- return A_0;
- }
- void sub_5CE3(var A_0, var A_1, var A_2, var A_3, var A_4)
- {
- wPtr(SYSTEM::FLOOR((CONTROLS::GET_CONTROL_NORMAL(2, 185) * 127f)), A_0);
- wPtr(SYSTEM::FLOOR((CONTROLS::GET_CONTROL_NORMAL(2, 186) * 127f)), A_1);
- wPtr(SYSTEM::FLOOR((CONTROLS::GET_CONTROL_NORMAL(2, 187) * 127f)), A_2);
- wPtr(SYSTEM::FLOOR((CONTROLS::GET_CONTROL_NORMAL(2, 188) * 127f)), A_3);
- if (A_4 != null)
- {
- bool flag1 = itof(rPtr(A_0)) == 0f;
- if (flag1 & (itof(rPtr(A_1)) == 0f))
- {
- wPtr(SYSTEM::FLOOR((CONTROLS::GET_DISABLED_CONTROL_NORMAL(2, 185) * 127f)), A_0);
- wPtr(SYSTEM::FLOOR((CONTROLS::GET_DISABLED_CONTROL_NORMAL(2, 186) * 127f)), A_1);
- }
- bool flag2 = itof(rPtr(A_2)) == 0f;
- if (flag2 & (itof(rPtr(A_3)) == 0f))
- {
- wPtr(SYSTEM::FLOOR((CONTROLS::GET_DISABLED_CONTROL_NORMAL(2, 187) * 127f)), A_2);
- wPtr(SYSTEM::FLOOR((CONTROLS::GET_DISABLED_CONTROL_NORMAL(2, 188) * 127f)), A_3);
- }
- }
- }
- void sub_5DB8()
- {
- if (sub_61BC() == 0)
- {
- if ((sub_615E(l_127) != 0) && (sub_F6B7(l_85, 256) == 0))
- {
- AUDIO::STOP_CURRENT_PLAYING_AMBIENT_SPEECH(PLAYER::PLAYER_PED_ID());
- AUDIO::0x5C57B85D(PLAYER::PLAYER_PED_ID(), "SEX_CLIMAX", "SPEECH_PARAMS_FORCE_SHOUTED_CLEAR");
- if (l_105 == 1)
- {
- if (sub_10B44() == 0)
- {
- PLAYER::0x72429998(PLAYER::PLAYER_ID(), 15, 1);
- }
- CONTROLS::SET_PAD_SHAKE(0, 4000, 252);
- }
- else if (l_105 == 2)
- {
- if (sub_10B44() == 0)
- {
- PLAYER::0x72429998(PLAYER::PLAYER_ID(), 10, 1);
- }
- CONTROLS::SET_PAD_SHAKE(0, 4000, 210);
- }
- else
- {
- if (sub_10B44() == 0)
- {
- PLAYER::0x72429998(PLAYER::PLAYER_ID(), 5, 1);
- }
- CONTROLS::SET_PAD_SHAKE(0, 3000, 168);
- }
- sub_F4AD(&l_85, 256);
- }
- }
- else
- {
- switch (l_329)
- {
- case 0:
- if (ENTITY::0x66571CA0(l_127, 0x3438B9BD) != 0)
- {
- CONTROLS::SET_PAD_SHAKE(0, 200, 84);
- ENTITY::APPLY_FORCE_TO_ENTITY(l_130, 1, 0f, 0f, -0.05f, 0f, 0f, 0f, 0, 1, 1, 1, 1, 0);
- sub_60F5();
- }
- break;
- case 1:
- case 2:
- var num3;
- if (sub_F6B7(l_85, 32768) == 0)
- {
- if (ENTITY::0x66571CA0(l_127, 0x3438B9BD) != 0)
- {
- CONTROLS::SET_PAD_SHAKE(0, 200, 252);
- ENTITY::APPLY_FORCE_TO_ENTITY(l_130, 1, 0f, 0f, -0.25f, 0f, 0f, 0f, 0, 1, 1, 1, 1, 0);
- sub_60F5();
- }
- break;
- }
- if (sub_10B44() == 0)
- {
- num3 = l_112;
- }
- else
- {
- num3 = NETWORK::0x16AED87B(l_112);
- }
- if (PED::IS_SYNCHRONIZED_SCENE_RUNNING(num3) != 0)
- {
- bool flag27;
- bool flag25;
- bool flag23;
- bool flag21;
- bool flag19;
- bool flag17;
- bool flag15;
- bool flag13;
- bool flag11;
- bool flag9;
- bool flag7;
- bool flag5;
- bool flag3;
- var num4 = PED::GET_SYNCHRONIZED_SCENE_PHASE(num3);
- bool flag1 = num4 > 0.01f;
- bool flag2 = flag1 & (num4 < 0.019f);
- if (!flag2)
- {
- flag3 = num4 > 0.093f;
- }
- bool flag4 = flag2 | (flag3 & (num4 < 0.1f));
- if (!flag4)
- {
- flag5 = num4 > 0.165f;
- }
- bool flag6 = flag4 | (flag5 & (num4 < 0.172f));
- if (!flag6)
- {
- flag7 = num4 > 0.231f;
- }
- bool flag8 = flag6 | (flag7 & (num4 < 0.239f));
- if (!flag8)
- {
- flag9 = num4 > 0.308f;
- }
- bool flag10 = flag8 | (flag9 & (num4 < 0.317f));
- if (!flag10)
- {
- flag11 = num4 > 0.37f;
- }
- bool flag12 = flag10 | (flag11 & (num4 < 0.378f));
- if (!flag12)
- {
- flag13 = num4 > 0.437f;
- }
- bool flag14 = flag12 | (flag13 & (num4 < 0.443f));
- if (!flag14)
- {
- flag15 = num4 > 0.507f;
- }
- bool flag16 = flag14 | (flag15 & (num4 < 0.518f));
- if (!flag16)
- {
- flag17 = num4 > 0.58f;
- }
- bool flag18 = flag16 | (flag17 & (num4 < 0.587f));
- if (!flag18)
- {
- flag19 = num4 > 0.651f;
- }
- bool flag20 = flag18 | (flag19 & (num4 < 0.659f));
- if (!flag20)
- {
- flag21 = num4 > 0.72f;
- }
- bool flag22 = flag20 | (flag21 & (num4 < 0.729f));
- if (!flag22)
- {
- flag23 = num4 > 0.788f;
- }
- bool flag24 = flag22 | (flag23 & (num4 < 0.794f));
- if (!flag24)
- {
- flag25 = num4 > 0.862f;
- }
- bool flag26 = flag24 | (flag25 & (num4 < 0.87f));
- if (!flag26)
- {
- flag27 = num4 > 0.937f;
- }
- if (flag26 | (flag27 & (num4 < 0.946f)))
- {
- if (sub_101A1(512) == 0)
- {
- CONTROLS::SET_PAD_SHAKE(0, 200, 252);
- ENTITY::APPLY_FORCE_TO_ENTITY(l_130, 1, 0f, 0f, -0.25f, 0f, 0f, 0f, 0, 1, 1, 1, 1, 0);
- sub_60F5();
- sub_60D9(512);
- }
- }
- else
- {
- sub_10463(512);
- }
- }
- return;
- }
- }
- }
- void sub_60D9(var A_0)
- {
- if (sub_F6B7(l_88, A_0) == 0)
- {
- sub_F4AD(&l_88, A_0);
- }
- }
- void sub_60F5()
- {
- var num3 = ENTITY::GET_ENTITY_HEALTH(PLAYER::PLAYER_PED_ID()) + (1 + l_328);
- if (num3 > ENTITY::GET_ENTITY_MAX_HEALTH(PLAYER::PLAYER_PED_ID()))
- {
- num3 = ENTITY::GET_ENTITY_MAX_HEALTH(PLAYER::PLAYER_PED_ID());
- }
- ENTITY::SET_ENTITY_HEALTH(PLAYER::PLAYER_PED_ID(), num3);
- sub_6136();
- }
- void sub_6136()
- {
- if ((sub_10B44() != 0) && (ENTITY::DOES_ENTITY_EXIST(PLAYER::PLAYER_PED_ID()) != 0))
- {
- l_92 = ENTITY::GET_ENTITY_HEALTH(PLAYER::PLAYER_PED_ID());
- }
- }
- var sub_615E(var A_0)
- {
- var num1 = ENTITY::IS_ENTITY_PLAYING_ANIM(A_0, sub_1749(), sub_14ED(11), 3);
- var num7 = num1 | ENTITY::IS_ENTITY_PLAYING_ANIM(A_0, sub_1749(), sub_14ED(21), 3);
- var num8 = num7 | ENTITY::IS_ENTITY_PLAYING_ANIM(A_0, sub_173D(), sub_132F(11), 3);
- return (num8 | ENTITY::IS_ENTITY_PLAYING_ANIM(A_0, sub_173D(), sub_132F(21), 3));
- }
- var sub_61BC()
- {
- return ENTITY::IS_ENTITY_PLAYING_ANIM(l_127, l_96, sub_61D8(l_127, sub_16EE(), 1), 3);
- }
- var sub_61D8(var A_0, var A_1, var A_2)
- {
- var num3 = "";
- if (ENTITY::IS_ENTITY_DEAD(A_0) == 0)
- {
- var num4 = PED::GET_VEHICLE_PED_IS_IN(A_0, 1);
- if (VEHICLE::IS_VEHICLE_DRIVEABLE(num4, 0) != 0)
- {
- if (sub_16AB(num4) != 0)
- {
- if (A_1 != null)
- {
- if (A_2 != null)
- {
- num3 = sub_14ED(20);
- }
- else
- {
- num3 = sub_14ED(25);
- }
- }
- else if (A_2 != null)
- {
- num3 = sub_14ED(10);
- }
- else
- {
- num3 = sub_14ED(15);
- }
- }
- else if (A_1 != null)
- {
- if (A_2 != null)
- {
- num3 = sub_132F(20);
- }
- else
- {
- num3 = sub_132F(25);
- }
- }
- else if (A_2 != null)
- {
- num3 = sub_132F(10);
- }
- else
- {
- num3 = sub_132F(15);
- }
- }
- }
- return num3;
- }
- void sub_6281()
- {
- if (sub_61BC() != 0)
- {
- if (sub_10B44() != 0)
- {
- sub_640F();
- }
- var num1 = AUDIO::IS_ANY_SPEECH_PLAYING(l_127);
- if (((num1 | AUDIO::IS_ANY_SPEECH_PLAYING(PLAYER::PLAYER_PED_ID())) == 0) && (GAMEPLAY::GET_RANDOM_INT_IN_RANGE(0, 5000) > 2500))
- {
- sub_62CB();
- }
- }
- }
- void sub_62CB()
- {
- if (PED::IS_PED_INJURED(l_127) == 0)
- {
- bool flag1 = AUDIO::IS_ANY_SPEECH_PLAYING(l_127) == 0;
- if (flag1 & (AUDIO::IS_ANY_SPEECH_PLAYING(PLAYER::PLAYER_PED_ID()) == 0))
- {
- if (l_328 == 0)
- {
- sub_3C4C("PROSTITUTES_BJ_SPEECH_SCENE");
- }
- if (sub_652(&l_138) == 0)
- {
- sub_F453(&l_138);
- }
- else if (sub_5D9(&l_138) > GAMEPLAY::GET_RANDOM_FLOAT_IN_RANGE(2f, 5f))
- {
- if (sub_F6B7(l_85, 0x10000) == 0)
- {
- sub_F4AD(&l_85, 0x10000);
- AUDIO::0x5C57B85D(PLAYER::PLAYER_PED_ID(), "SEX_GENERIC", "SPEECH_PARAMS_FORCE_NORMAL_CLEAR");
- sub_636B(l_329);
- }
- else
- {
- sub_5B4(&l_85, 0x10000);
- sub_E7E(&l_138);
- }
- }
- }
- }
- }
- void sub_636B(var A_0)
- {
- switch (A_0)
- {
- case 0:
- sub_27A1("PROSTITUTES_BJ_SPEECH_SCENE");
- if (sub_63EE(PLAYER::PLAYER_ID()) == 0)
- {
- AUDIO::0x5C57B85D(l_127, "SEX_ORAL_FEM", "SPEECH_PARAMS_FORCE_SHOUTED_CLEAR");
- break;
- }
- AUDIO::0x5C57B85D(l_127, "SEX_ORAL", "SPEECH_PARAMS_FORCE_SHOUTED_CLEAR");
- break;
- case 1:
- case 2:
- if (sub_63EE(PLAYER::PLAYER_ID()) == 0)
- {
- AUDIO::0x5C57B85D(l_127, "SEX_GENERIC_FEM", "SPEECH_PARAMS_FORCE_SHOUTED_CLEAR");
- break;
- }
- AUDIO::0x5C57B85D(l_127, "SEX_GENERIC", "SPEECH_PARAMS_FORCE_SHOUTED_CLEAR");
- break;
- }
- }
- var sub_63EE(var A_0)
- {
- if (NETWORK::NETWORK_IS_GAME_IN_PROGRESS() == 0)
- {
- return 1;
- }
- return rPtr(getElemPtr(A_0, &g_2387077, 868) + 788);
- }
- void sub_640F()
- {
- if (PED::IS_PED_INJURED(l_127) == 0)
- {
- if (sub_64A6(0.4f) != 0)
- {
- sub_60D9(4);
- }
- if (sub_101A1(4) != 0)
- {
- if (sub_652(&l_141) == 0)
- {
- sub_F453(&l_141);
- }
- else if (sub_5D9(&l_141) > 2f)
- {
- bool flag1 = sub_101A1(16) == 0;
- if (flag1 & (sub_64A6(0.4f) == 0))
- {
- sub_60D9(16);
- l_94++;
- }
- else if ((sub_101A1(16) != 0) && (AUDIO::IS_ANY_SPEECH_PLAYING(l_127) == 0))
- {
- sub_10463(4);
- sub_10463(16);
- sub_E7E(&l_141);
- }
- }
- }
- }
- }
- var sub_64A6(var A_0)
- {
- if ((sub_64D2(PLAYER::PLAYER_ID(), 1, 1) != 0) && (NETWORK::NETWORK_GET_PLAYER_LOUDNESS(PLAYER::PLAYER_ID()) > A_0))
- {
- return 1;
- }
- return 0;
- }
- var sub_64D2(var A_0, var A_1, var A_2)
- {
- var num3 = A_0;
- if (NETWORK::NETWORK_IS_PLAYER_ACTIVE(A_0) == 0)
- {
- return 0;
- }
- if ((A_1 != null) && (PLAYER::IS_PLAYER_PLAYING(A_0) == 0))
- {
- return 0;
- }
- if ((A_2 != null) && (getElem(num3, (&g_2390986) + 3, 4) == 0))
- {
- return 0;
- }
- return 1;
- }
- void sub_6516(var A_0, var A_1)
- {
- if (sub_10B44() != 0)
- {
- sub_563F(A_0, A_1);
- sub_5529(A_0, A_1);
- sub_5450(A_0, A_1);
- sub_5029(A_0, A_1);
- sub_4E15(A_0, A_1);
- }
- }
- void sub_6551(var A_0, var A_1)
- {
- var num3 = sub_4370(A_0, sub_4330(A_1), 0) + 1;
- if (sub_67EE(A_0) == 0)
- {
- sub_4305(A_0, num3, A_1, 1);
- }
- else
- {
- sub_6591(A_0, num3, A_1, 1);
- }
- }
- void sub_6591(var A_0, var A_1, var A_2, var A_3)
- {
- var num3 = getElem(sub_4330(A_2), getElemPtr(A_0, &g_2405085, 24), 4);
- if (num3 != 0)
- {
- STATS::STAT_SET_INT(num3, A_1, A_3);
- }
- switch ((A_0))
- {
- case 773:
- setElem(A_1, sub_4330(A_2), &g_1374032, 4);
- break;
- case 774:
- setElem(A_1, sub_4330(A_2), &g_1374038, 4);
- break;
- case 775:
- setElem(A_1, sub_4330(A_2), &g_1374044, 4);
- break;
- case 776:
- setElem(A_1, sub_4330(A_2), &g_1374050, 4);
- break;
- case 763:
- setElem(A_1, sub_4330(A_2), &g_1374008, 4);
- break;
- case 764:
- setElem(A_1, sub_4330(A_2), &g_1374014, 4);
- break;
- case 765:
- setElem(A_1, sub_4330(A_2), &g_1374020, 4);
- break;
- case 766:
- setElem(A_1, sub_4330(A_2), &g_1374026, 4);
- break;
- case 753:
- setElem(A_1, sub_4330(A_2), &g_1373984, 4);
- break;
- case 754:
- setElem(A_1, sub_4330(A_2), &g_1373990, 4);
- break;
- case 755:
- setElem(A_1, sub_4330(A_2), &g_1373996, 4);
- break;
- case 756:
- setElem(A_1, sub_4330(A_2), &g_1374002, 4);
- break;
- case 743:
- setElem(A_1, sub_4330(A_2), &g_1374056, 4);
- break;
- case 744:
- setElem(A_1, sub_4330(A_2), &g_1374062, 4);
- break;
- case 745:
- setElem(A_1, sub_4330(A_2), &g_1374068, 4);
- break;
- case 746:
- setElem(A_1, sub_4330(A_2), &g_1374074, 4);
- break;
- case 1287:
- setElem(A_1, sub_4330(A_2), &g_1374080, 4);
- break;
- case 625:
- setElem(A_1, sub_4330(A_2), &g_1374086, 4);
- break;
- case 1262:
- setElem(A_1, sub_4330(A_2), &g_1374092, 4);
- break;
- case 1848:
- setElem(A_1, sub_4330(A_2), &g_2418843, 4);
- break;
- case 750:
- setElem(A_1, sub_4330(A_2), &g_1374098, 4);
- break;
- case 751:
- setElem(A_1, sub_4330(A_2), &g_1374104, 4);
- break;
- case 752:
- setElem(A_1, sub_4330(A_2), &g_1374110, 4);
- break;
- case 1220:
- setElem(A_1, sub_4330(A_2), &g_1374116, 4);
- break;
- }
- }
- var sub_67EE(var A_0)
- {
- if (g_1373965 != 0)
- {
- switch ((A_0))
- {
- case 773:
- case 774:
- case 775:
- case 776:
- case 763:
- case 764:
- case 765:
- case 766:
- case 753:
- case 754:
- case 755:
- case 756:
- case 743:
- case 744:
- case 745:
- case 746:
- case 1287:
- case 625:
- case 1262:
- case 750:
- case 751:
- case 752:
- case 1220:
- case 1848:
- return 1;
- }
- }
- return 0;
- }
- void sub_689C()
- {
- if (rPtr((&g_10433) + 1) != 1)
- {
- if (sub_69A8(0) != 0)
- {
- sub_68C4(0);
- }
- GAMEPLAY::SET_BIT(&g_1687, 2);
- }
- }
- void sub_68C4(var A_0)
- {
- if (g_10588 != 0)
- {
- sub_6934(0, 0);
- }
- bool flag1 = rPtr((&g_10433) + 1) == 10;
- if (flag1 | (rPtr((&g_10433) + 1) == 9))
- {
- GAMEPLAY::SET_BIT(&g_1687, 16);
- }
- if (AUDIO::IS_MOBILE_PHONE_CALL_ONGOING() != 0)
- {
- AUDIO::STOP_SCRIPTED_CONVERSATION(0);
- }
- g_11728 = 5;
- if (A_0 == 1)
- {
- GAMEPLAY::SET_BIT(&g_1686, 30);
- }
- else
- {
- GAMEPLAY::CLEAR_BIT(&g_1686, 30);
- }
- if (sub_A36() == 0)
- {
- wPtr(3, (&g_10433) + 1);
- }
- }
- void sub_6934(var A_0, var A_1)
- {
- if (A_0 != null)
- {
- if (sub_69A8(0) != 0)
- {
- g_10588 = 1;
- if (A_1 != null)
- {
- MOBILE::GET_MOBILE_PHONE_POSITION(&g_10370);
- }
- struct _s = getElemPtr(g_10378, &g_10379, 12);
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, &g_10361);
- struct _s = &g_10361;
- MOBILE::SET_MOBILE_PHONE_POSITION(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8));
- }
- }
- else if (g_10588 == 1)
- {
- g_10588 = 0;
- struct _s = getElemPtr(g_10378, &g_10386, 12);
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, &g_10361);
- if (A_1 != null)
- {
- struct _s = &g_10370;
- MOBILE::SET_MOBILE_PHONE_POSITION(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8));
- }
- else
- {
- struct _s = &g_10361;
- MOBILE::SET_MOBILE_PHONE_POSITION(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8));
- }
- }
- }
- var sub_69A8(var A_0)
- {
- if (A_0 == 1)
- {
- if ((rPtr((&g_10433) + 1) > 3) && (GAMEPLAY::IS_BIT_SET(g_1686, 14) != 0))
- {
- return 1;
- }
- return 0;
- }
- if (SCRIPT::0x029D3841(0xD30D3AEF) > 0)
- {
- return 1;
- }
- if (rPtr((&g_10433) + 1) > 3)
- {
- return 1;
- }
- return 0;
- }
- var sub_6A02(var A_0)
- {
- var num3;
- if (sub_10B44() != 0)
- {
- num3 = PED::IS_SYNCHRONIZED_SCENE_RUNNING(NETWORK::0x16AED87B(A_0));
- }
- else
- {
- num3 = PED::IS_SYNCHRONIZED_SCENE_RUNNING(A_0);
- }
- return num3;
- }
- void sub_6A2A()
- {
- if (CAM::IS_SCREEN_FADED_OUT() != 0)
- {
- CAM::DO_SCREEN_FADE_IN(1000);
- struct _s = sub_6AC8();
- ENTITY::SET_ENTITY_COORDS(PLAYER::PLAYER_PED_ID(), rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 1, 0, 0, 1);
- ENTITY::SET_ENTITY_HEADING(PLAYER::PLAYER_PED_ID(), sub_6A71());
- sub_10666();
- CAM::RENDER_SCRIPT_CAMS(0, 0, 3000, 1, 0);
- PED::DELETE_PED(&l_127);
- }
- }
- var sub_6A71()
- {
- if (PED::IS_PED_MODEL(PLAYER::PLAYER_PED_ID(), sub_C5C(2)) != 0)
- {
- return 299.5673f;
- }
- if (PED::IS_PED_MODEL(PLAYER::PLAYER_PED_ID(), sub_C5C(0)) != 0)
- {
- return 116.6356f;
- }
- if (PED::IS_PED_MODEL(PLAYER::PLAYER_PED_ID(), sub_C5C(1)) != 0)
- {
- return 175.0504f;
- }
- return 0f;
- }
- var sub_6AC8()
- {
- if (PED::IS_PED_MODEL(PLAYER::PLAYER_PED_ID(), sub_C5C(2)) != 0)
- {
- return buildStruct(1979.961f, 3816.018f, 31.3641f);
- }
- if (PED::IS_PED_MODEL(PLAYER::PLAYER_PED_ID(), sub_C5C(0)) != 0)
- {
- return buildStruct(-820.4975f, 176.9618f, 70.6166f);
- }
- if (PED::IS_PED_MODEL(PLAYER::PLAYER_PED_ID(), sub_C5C(1)) != 0)
- {
- return buildStruct(-14.6005f, -1444.624f, 29.6472f);
- }
- return buildStruct(0f, 0f, 0f);
- }
- void sub_6B3F()
- {
- var num1 = sub_6BF2(&l_135, 3f);
- if ((num1 & (CAM::IS_CAM_ACTIVE(l_134) == 0)) != 0)
- {
- var num3 = SYSTEM::FLOOR(((sub_6B9B() - 2f) * 1000f));
- CAM::SET_CAM_ACTIVE(l_133, 0);
- CAM::SET_CAM_ACTIVE_WITH_INTERP(l_134, l_133, num3, 1, 1);
- }
- if (sub_6BF2(&l_135, sub_6B9B()) != 0)
- {
- CAM::DO_SCREEN_FADE_OUT(1000);
- l_326 = 10;
- }
- }
- var sub_6B9B()
- {
- if (PED::IS_PED_MODEL(PLAYER::PLAYER_PED_ID(), sub_C5C(2)) != 0)
- {
- return 10f;
- }
- if (PED::IS_PED_MODEL(PLAYER::PLAYER_PED_ID(), sub_C5C(0)) != 0)
- {
- return 10f;
- }
- if (PED::IS_PED_MODEL(PLAYER::PLAYER_PED_ID(), sub_C5C(1)) != 0)
- {
- return 12f;
- }
- return 0f;
- }
- var sub_6BF2(var A_0, var A_1)
- {
- if ((sub_652(A_0) != 0) && (sub_5D9(A_0) > A_1))
- {
- return 1;
- }
- return 0;
- }
- void sub_6C14()
- {
- var num3 = 0;
- while (true)
- {
- if (num3 >= SCRIPT::GET_NUMBER_OF_EVENTS(1))
- {
- return;
- }
- switch (SCRIPT::GET_EVENT_AT_INDEX(1, num3))
- {
- case 176:
- sub_6C51(num3);
- break;
- }
- num3++;
- }
- }
- void sub_6C51(var A_0)
- {
- var num3;
- if (SCRIPT::GET_EVENT_DATA(1, A_0, &num3, 10) != 0)
- {
- sub_6C6D(&num3);
- }
- }
- void sub_6C6D(var A_0)
- {
- if ((((ENTITY::DOES_ENTITY_EXIST(rPtr(A_0)) != 0) && (ENTITY::IS_ENTITY_A_VEHICLE(rPtr(A_0)) != 0)) && ((ENTITY::DOES_ENTITY_EXIST(PLAYER::PLAYER_PED_ID()) != 0) && (ENTITY::IS_ENTITY_DEAD(PLAYER::PLAYER_PED_ID()) == 0))) && (PED::GET_VEHICLE_PED_IS_IN(PLAYER::PLAYER_PED_ID(), 0) == ENTITY::0xC69CF43D(rPtr(A_0))))
- {
- sub_3841(0);
- AI::CLEAR_PED_TASKS(PLAYER::PLAYER_PED_ID());
- sub_10666();
- sub_104E0();
- }
- }
- void sub_6CC8()
- {
- if ((sub_10B44() != 0) && (((ENTITY::DOES_ENTITY_EXIST(l_127) != 0) && (PLAYER::IS_PLAYER_PLAYING(PLAYER::PLAYER_ID()) != 0)) && ((ENTITY::GET_ENTITY_HEALTH(l_127) - l_93) < 0)))
- {
- sub_3841(0);
- AI::CLEAR_PED_TASKS(PLAYER::PLAYER_PED_ID());
- sub_10666();
- sub_104E0();
- }
- }
- void sub_6D15()
- {
- if ((sub_10B44() != 0) && (((ENTITY::DOES_ENTITY_EXIST(PLAYER::PLAYER_PED_ID()) != 0) && (PLAYER::IS_PLAYER_PLAYING(PLAYER::PLAYER_ID()) != 0)) && ((ENTITY::GET_ENTITY_HEALTH(PLAYER::PLAYER_PED_ID()) - l_92) < 0)))
- {
- sub_3841(0);
- AI::CLEAR_PED_TASKS(PLAYER::PLAYER_PED_ID());
- sub_10666();
- sub_104E0();
- }
- }
- void sub_6D66()
- {
- if ((sub_10B44() != 0) && ((ENTITY::DOES_ENTITY_EXIST(PLAYER::PLAYER_PED_ID()) != 0) && (PED::IS_PED_IN_ANY_VEHICLE(PLAYER::PLAYER_PED_ID(), 0) != 0)))
- {
- var num3 = PED::GET_VEHICLE_PED_IS_IN(PLAYER::PLAYER_PED_ID(), 0);
- if (ENTITY::DOES_ENTITY_EXIST(num3) != 0)
- {
- var num4;
- struct _s = ENTITY::GET_ENTITY_COORDS(num3, 1);
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, &num4);
- struct _s = &l_89;
- struct _s = &num4;
- if (SYSTEM::VDIST2(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8)) >= 4f)
- {
- sub_3841(0);
- AI::CLEAR_PED_TASKS(PLAYER::PLAYER_PED_ID());
- sub_10666();
- sub_104E0();
- }
- }
- }
- }
- void sub_6DD5()
- {
- if (sub_F6B7(l_85, 16) == 0)
- {
- if (PLAYER::IS_PLAYER_PLAYING(PLAYER::PLAYER_ID()) != 0)
- {
- PLAYER::SET_PLAYER_CAN_DO_DRIVE_BY(PLAYER::PLAYER_ID(), 0);
- }
- sub_F4AD(&l_85, 16);
- }
- if (PED::IS_PED_IN_ANY_VEHICLE(PLAYER::PLAYER_PED_ID(), 0) != 0)
- {
- l_130 = PED::GET_VEHICLE_PED_IS_IN(PLAYER::PLAYER_PED_ID(), 0);
- if (sub_10B44() != 0)
- {
- if (NETWORK::NETWORK_HAS_CONTROL_OF_ENTITY(l_130) != 0)
- {
- VEHICLE::SET_VEHICLE_HANDBRAKE(l_130, 1);
- VEHICLE::SET_VEHICLE_LIGHTS(l_130, 4);
- VEHICLE::SET_VEHICLE_INTERIORLIGHT(l_130, 1);
- }
- }
- else
- {
- VEHICLE::SET_VEHICLE_HANDBRAKE(l_130, 1);
- VEHICLE::SET_VEHICLE_LIGHTS(l_130, 4);
- VEHICLE::SET_VEHICLE_INTERIORLIGHT(l_130, 1);
- }
- bool flag1 = sub_D189() == 0;
- if (flag1 | (PED::IS_PED_IN_VEHICLE(l_127, l_130, 0) == 0))
- {
- sub_F46B(0);
- return;
- }
- }
- else
- {
- sub_F46B(0);
- return;
- }
- sub_689C();
- bool flag2 = VEHICLE::IS_VEHICLE_STOPPED(l_130) == 0;
- bool flag3 = flag2 & PLAYER::IS_PLAYER_CONTROL_ON(PLAYER::PLAYER_ID());
- if (flag3 & (sub_F6B7(l_85, 1024) == 0))
- {
- l_326 = 7;
- sub_D0C2(1, -1);
- AUDIO::REQUEST_SCRIPT_AUDIO_BANK("SCRIPTHUD_321_GO", 1);
- l_332 = 0;
- sub_F6C6("WAITING FOR VEHICLE TO STOP ");
- }
- else
- {
- UI::HIDE_HUD_COMPONENT_THIS_FRAME(2);
- switch (l_332)
- {
- case 0:
- case 1:
- if (((sub_10B44() != 0) && (PED::IS_PED_IN_ANY_VEHICLE(PLAYER::PLAYER_PED_ID(), 0) != 0)) && (ENTITY::DOES_ENTITY_EXIST(PED::GET_VEHICLE_PED_IS_IN(PLAYER::PLAYER_PED_ID(), 0)) != 0))
- {
- if (NETWORK::0xD7F934F4(PED::GET_VEHICLE_PED_IS_IN(PLAYER::PLAYER_PED_ID(), 0)) == 0)
- {
- NETWORK::0x31A630A4(PED::GET_VEHICLE_PED_IS_IN(PLAYER::PLAYER_PED_ID(), 0));
- return;
- }
- if (VEHICLE::GET_PED_IN_VEHICLE_SEAT(PED::GET_VEHICLE_PED_IS_IN(PLAYER::PLAYER_PED_ID(), 0), -1) != PLAYER::PLAYER_PED_ID())
- {
- break;
- }
- if (NETWORK::NETWORK_HAS_CONTROL_OF_ENTITY(PED::GET_VEHICLE_PED_IS_IN(PLAYER::PLAYER_PED_ID(), 0)) == 0)
- {
- NETWORK::NETWORK_REQUEST_CONTROL_OF_ENTITY(PED::GET_VEHICLE_PED_IS_IN(PLAYER::PLAYER_PED_ID(), 0));
- return;
- }
- if (ENTITY::IS_ENTITY_A_MISSION_ENTITY(PED::GET_VEHICLE_PED_IS_IN(PLAYER::PLAYER_PED_ID(), 0)) != 0)
- {
- break;
- }
- ENTITY::SET_ENTITY_AS_MISSION_ENTITY(PED::GET_VEHICLE_PED_IS_IN(PLAYER::PLAYER_PED_ID(), 0), 0, 0);
- }
- break;
- case 2:
- if (sub_CD9C(l_335) != 0)
- {
- sub_CD8E(&l_335);
- sub_5B4(&l_108, 2);
- }
- sub_CBD8(l_127, 0);
- if (sub_CBD8(PLAYER::PLAYER_PED_ID(), 1) != 0)
- {
- if (sub_CBC5(0) != 0)
- {
- sub_BD33();
- l_332 = 3;
- sub_F6C6("Moving to SERVICE_MENU_CHOOSE");
- }
- else
- {
- sub_BD1C("PROS_NO_MONEY", -1);
- sub_E7E(&l_144);
- l_328 = 3;
- l_332 = 4;
- }
- }
- return;
- case 3:
- if (UI::IS_PAUSE_MENU_ACTIVE() == 0)
- {
- var num3;
- var num4;
- var num5;
- var num6;
- UI::SHOW_HUD_COMPONENT_THIS_FRAME(3);
- sub_B6AE();
- sub_838D(1, -1, 1, 0, 1, 0x3E666666);
- sub_5CE3(&num3, &num4, &num5, &num6, 0);
- CONTROLS::DISABLE_CONTROL_ACTION(0, 46);
- CONTROLS::SET_INPUT_EXCLUSIVE(2, 161);
- CONTROLS::SET_INPUT_EXCLUSIVE(2, 162);
- CONTROLS::SET_INPUT_EXCLUSIVE(2, 174);
- if (CONTROLS::IS_CONTROL_JUST_PRESSED(2, 161) != 0)
- {
- AUDIO::PLAY_SOUND_FRONTEND(-1, "NAV_UP_DOWN", "HUD_FRONTEND_DEFAULT_SOUNDSET");
- sub_F6C6("DOWN pressed!");
- if (l_103 < l_104)
- {
- l_103++;
- }
- else
- {
- l_103 = 0;
- }
- }
- else if (CONTROLS::IS_CONTROL_JUST_PRESSED(2, 162) != 0)
- {
- AUDIO::PLAY_SOUND_FRONTEND(-1, "NAV_UP_DOWN", "HUD_FRONTEND_DEFAULT_SOUNDSET");
- sub_F6C6("UP pressed!");
- if (l_103 > 0)
- {
- l_103--;
- }
- else
- {
- l_103 = l_104;
- }
- }
- else if (CONTROLS::IS_CONTROL_JUST_RELEASED(2, 174) != 0)
- {
- AUDIO::PLAY_SOUND_FRONTEND(-1, "SELECT", "HUD_FRONTEND_DEFAULT_SOUNDSET");
- UI::HIDE_HUD_COMPONENT_THIS_FRAME(3);
- sub_82CE();
- ENTITY::CLEAR_ENTITY_LAST_DAMAGE_ENTITY(PLAYER::PLAYER_PED_ID());
- l_332 = 4;
- }
- sub_8188(l_103, 1, 1);
- return;
- }
- return;
- case 4:
- {
- var num7 = PED::GET_PED_MONEY(l_127);
- if (l_328 != 3)
- {
- if (STREAMING::HAS_ANIM_DICT_LOADED(l_96) != 0)
- {
- sub_D0C2(1, -1);
- sub_817A();
- if (GAMEPLAY::IS_AUSSIE_VERSION() != 0)
- {
- sub_F4AD(&l_85, 1024);
- l_328 = 3;
- sub_F6C6("AUSSIE VERSION IS TRUE!?!?!");
- }
- if (l_328 != 3)
- {
- if (sub_805E() > sub_7293(l_328))
- {
- sub_72FE(sub_7293(l_328));
- num7 += sub_7293(l_328);
- }
- sub_E8D(&l_138, (14f - 4f));
- sub_F6C6("eCurrentProstituteState = PROSTITUTE_CUSTOMER_GETTING_SERVICED ");
- sub_3BE2();
- l_326 = 11;
- }
- PED::SET_PED_MONEY(l_127, num7);
- l_97 = GAMEPLAY::GET_GAME_TIMER();
- }
- return;
- }
- sub_D0C2(1, -1);
- sub_817A();
- sub_815D(0);
- l_97 = GAMEPLAY::GET_GAME_TIMER();
- sub_3C4C("PROSTITUTES_PARKED_SCENE");
- sub_F6C6("eCurrentProstituteState = prostitute_REFUSED ");
- l_326 = 6;
- if (l_105 <= 0)
- {
- if (sub_805E() >= 20)
- {
- num7 += 20;
- sub_72FE(20);
- PED::SET_PED_MONEY(l_127, num7);
- }
- sub_F46B(1);
- return;
- }
- if (sub_3BC0(l_127) == 0)
- {
- sub_F46B(0);
- return;
- }
- sub_3B5E();
- return;
- }
- default:
- return;
- }
- sub_D079();
- sub_D055();
- sub_6136();
- if (sub_CEC1() != 0)
- {
- sub_3C4C("PROSTITUTES_DRIVE_SCENE");
- sub_27A1("PROSTITUTES_PARKED_SCENE");
- sub_CE78();
- if (sub_10B44() != 0)
- {
- sub_60D9(2);
- if (((sub_10B44() != 0) && (PED::IS_PED_IN_ANY_VEHICLE(PLAYER::PLAYER_PED_ID(), 0) != 0)) && ((NETWORK::0xD7F934F4(PED::GET_VEHICLE_PED_IS_IN(PLAYER::PLAYER_PED_ID(), 0)) != 0) && (NETWORK::NETWORK_HAS_CONTROL_OF_ENTITY(PED::GET_VEHICLE_PED_IS_IN(PLAYER::PLAYER_PED_ID(), 0)) != 0)))
- {
- VEHICLE::SET_VEHICLE_DOORS_LOCKED_FOR_ALL_PLAYERS(PED::GET_VEHICLE_PED_IS_IN(PLAYER::PLAYER_PED_ID(), 0), 1);
- VEHICLE::SET_VEHICLE_DOORS_LOCKED(PED::GET_VEHICLE_PED_IS_IN(PLAYER::PLAYER_PED_ID(), 0), 4);
- VEHICLE::0x758C5E2E(PED::GET_VEHICLE_PED_IS_IN(PLAYER::PLAYER_PED_ID(), 0), 1);
- }
- }
- PED::RESET_PED_IN_VEHICLE_CONTEXT(l_127);
- l_332 = 2;
- }
- }
- }
- var sub_7293(var A_0)
- {
- if (GAMEPLAY::IS_AUSSIE_VERSION() != 0)
- {
- if (A_0 == 0)
- {
- return 70;
- }
- if (A_0 == 1)
- {
- return 70;
- }
- if (A_0 == 2)
- {
- return 70;
- }
- return 0;
- }
- if (A_0 == 0)
- {
- return 50;
- }
- if (A_0 == 1)
- {
- return 70;
- }
- if (A_0 == 2)
- {
- return 100;
- }
- return 0;
- }
- void sub_72FE(var A_0)
- {
- if (sub_10B44() == 0)
- {
- sub_7325(sub_B25(), 1, A_0);
- }
- else
- {
- NETWORKCASH::0x78436D07(A_0, 0, 0);
- }
- }
- var sub_7325(var A_0, var A_1, var A_2)
- {
- if (rPtr(getElemPtr(A_0, (&g_86838) + 23936, 116) + 68) == 3)
- {
- return 0;
- }
- if (rPtr(getElemPtr(A_0, (&g_86838) + 23936, 116) + 68) == 4)
- {
- return 0;
- }
- return sub_736E(rPtr(getElemPtr(A_0, (&g_86838) + 23936, 116) + 68), 0, A_1, A_2, 0);
- }
- var sub_736E(var A_0, var A_1, var A_2, var A_3, var A_4)
- {
- var num4;
- sub_7FB6();
- if (A_3 < 1)
- {
- return 0;
- }
- var num3 = 1f;
- switch (A_1)
- {
- case 0:
- switch (A_0)
- {
- case 0:
- sub_7F5A(99, 1);
- sub_7F37(0xD8DDE3AC, A_3);
- goto Label_009A;
- case 1:
- sub_7F37(0x82F04461, A_3);
- goto Label_009A;
- case 2:
- sub_7F37(0x5E1032A2, A_3);
- goto Label_009A;
- }
- break;
- case 1:
- switch (A_0)
- {
- case 0:
- sub_7F5A(95, A_3);
- break;
- case 1:
- sub_7F5A(97, A_3);
- break;
- case 2:
- sub_7F5A(96, A_3);
- break;
- }
- goto Label_077F;
- default:
- goto Label_0792;
- }
- Label_009A:
- sub_7E64(0);
- switch ((A_2))
- {
- case 125:
- case 127:
- case 123:
- case 124:
- case 126:
- if (sub_7E28(5) != 0)
- {
- num3 = 0.9f;
- num4 = 5;
- }
- goto Label_0792;
- case 63:
- case 64:
- case 65:
- case 66:
- case 67:
- case 68:
- switch (A_0)
- {
- case 0:
- sub_7F37(0xB90A1501, A_3);
- goto Label_04C7;
- case 1:
- sub_7F37(0x1D36FFE4, A_3);
- goto Label_04C7;
- case 2:
- sub_7F37(0x7375F79, A_3);
- goto Label_04C7;
- }
- break;
- case 41:
- case 42:
- case 43:
- case 44:
- case 45:
- case 46:
- case 47:
- switch (A_0)
- {
- case 0:
- sub_7F37(0x79818787, A_3);
- break;
- case 1:
- sub_7F37(0xDDDA2F69, A_3);
- break;
- case 2:
- sub_7F37(0xC723E8EC, A_3);
- break;
- }
- if (sub_7E28(0) != 0)
- {
- num3 = 0f;
- num4 = 0;
- }
- goto Label_0792;
- case 21:
- switch (A_0)
- {
- case 0:
- sub_7F37(0xD156803, A_3);
- break;
- case 1:
- sub_7F37(0x6F8CE97A, A_3);
- break;
- case 2:
- sub_7F37(0x87561C19, A_3);
- break;
- }
- goto Label_0792;
- case 48:
- case 49:
- case 50:
- case 51:
- case 52:
- case 53:
- case 54:
- case 55:
- case 56:
- case 57:
- case 58:
- case 59:
- case 60:
- case 61:
- case 62:
- switch (A_0)
- {
- case 0:
- sub_7F37(0x185B8F46, A_3);
- break;
- case 1:
- sub_7F37(0xE6AE13D3, A_3);
- break;
- case 2:
- sub_7F37(0xDEBB7D4A, A_3);
- break;
- }
- goto Label_0792;
- case 25:
- switch (A_0)
- {
- case 0:
- sub_7F37(0x1A5C0A6, A_3);
- break;
- case 1:
- sub_7F37(0x192B26BC, A_3);
- break;
- case 2:
- sub_7F37(0x12D8DFD0, A_3);
- break;
- }
- goto Label_0792;
- case 69:
- case 70:
- case 71:
- case 72:
- case 73:
- case 74:
- case 75:
- case 76:
- case 77:
- case 78:
- case 79:
- switch (A_0)
- {
- case 0:
- sub_7F37(0xE56D46F6, A_3);
- break;
- case 1:
- sub_7F37(0xAD57C3A1, A_3);
- break;
- case 2:
- sub_7F37(0xD49E38CD, A_3);
- break;
- }
- goto Label_0792;
- case 80:
- case 81:
- case 82:
- case 83:
- case 84:
- case 101:
- sub_7E08(A_3);
- goto Label_06CF;
- case 97:
- case 98:
- case 99:
- case 100:
- case 102:
- case 103:
- case 104:
- case 105:
- case 106:
- case 107:
- case 108:
- case 109:
- case 110:
- case 111:
- goto Label_06CF;
- default:
- goto Label_0792;
- }
- Label_04C7:
- if (sub_7E28(1) != 0)
- {
- num3 = 0f;
- num4 = 1;
- }
- goto Label_0792;
- Label_06CF:
- switch (A_0)
- {
- case 0:
- sub_7F37(0x6BB0A613, A_3);
- goto Label_0792;
- case 1:
- sub_7F37(0x5DFBC6D0, A_3);
- goto Label_0792;
- case 2:
- sub_7F37(0x280C1BD4, A_3);
- goto Label_0792;
- default:
- goto Label_0792;
- }
- Label_077F:
- sub_7F5A(98, A_3);
- Label_0792:
- if (A_3 < 1)
- {
- return 0;
- }
- var num5 = A_0;
- A_3 = SYSTEM::FLOOR(num3 * SYSTEM::TO_FLOAT(A_3));
- var num6 = 0;
- var num7 = A_3;
- if (num3 == 0f)
- {
- sub_7CD3(num4);
- return 1;
- }
- if (num3 != 1f)
- {
- sub_7CD3(num4);
- }
- var num8 = getElem(num5, &g_43946, 4) + A_3;
- num6 = A_1;
- switch (num6)
- {
- case 1:
- {
- bool flag1 = getElem(num5, &g_43946, 4) >= 0;
- if (flag1 & (A_3 > 0))
- {
- if (num8 <= 0)
- {
- setElem(0x7FFFFFFF, num5, &g_43946, 4);
- }
- else
- {
- setElem(getElem(num5, &g_43946, 4) + A_3, num5, &g_43946, 4);
- }
- }
- switch (A_0)
- {
- case 0:
- sub_7F37(0xEC4F6A3C, A_3);
- goto Label_09D5;
- case 1:
- sub_7F37(0x652EC70D, A_3);
- goto Label_09D5;
- case 2:
- sub_7F37(0x63D3C8A1, A_3);
- goto Label_09D5;
- }
- break;
- }
- case 0:
- if ((A_4 == 0) && ((getElem(num5, &g_43946, 4) - A_3) < 0))
- {
- return 0;
- }
- num6 = getElem(num5, &g_43946, 4);
- setElem(getElem(num5, &g_43946, 4) - A_3, num5, &g_43946, 4);
- if (A_4 != null)
- {
- num7 = num6;
- }
- break;
- }
- Label_09D5:
- if (A_2 == 1)
- {
- }
- else
- {
- setElem(A_1, rPtr(getElemPtr(num5, ((&g_86838) + 19911) + 233, 276) + 4), getElemPtr(num5, ((&g_86838) + 19911) + 233, 276) + 8, 24);
- wPtr(A_2, getElemPtr(rPtr(getElemPtr(num5, ((&g_86838) + 19911) + 233, 276) + 4), getElemPtr(num5, ((&g_86838) + 19911) + 233, 276) + 8, 24) + 4);
- wPtr(A_3, getElemPtr(rPtr(getElemPtr(num5, ((&g_86838) + 19911) + 233, 276) + 4), getElemPtr(num5, ((&g_86838) + 19911) + 233, 276) + 8, 24) + 8);
- setElem(getElem(num5, ((&g_86838) + 19911) + 233, 276) + 1, num5, ((&g_86838) + 19911) + 233, 276);
- wPtr(rPtr(getElemPtr(num5, ((&g_86838) + 19911) + 233, 276) + 4) + 1, getElemPtr(num5, ((&g_86838) + 19911) + 233, 276) + 4);
- if (rPtr(getElemPtr(num5, ((&g_86838) + 19911) + 233, 276) + 4) > 10)
- {
- wPtr(0, getElemPtr(num5, ((&g_86838) + 19911) + 233, 276) + 4);
- }
- }
- sub_7C79(A_0);
- if (g_29814 == 12)
- {
- sub_79F7(0);
- }
- return 1;
- }
- void sub_79F7(var A_0)
- {
- var num3 = 0;
- var num4 = 0;
- num3 = 0;
- Label_001B:
- if (num3 >= 3)
- {
- num3 = 0;
- while (num3 < 10)
- {
- setElem(getElem(num3, (&g_86838) + 19911, 4), 0, getElemPtr(num3, &g_43954, 12), 4);
- setElem(getElem(num3, ((&g_86838) + 19911) + 11, 4), 0, getElemPtr(num3, (&g_43954) + 31, 12), 4);
- setElem(getElem(num3, ((&g_86838) + 19911) + 22, 4), 0, getElemPtr(num3, (&g_43954) + 62, 12), 4);
- setElem(getElem(num3, ((&g_86838) + 19911) + 33, 4), 0, getElemPtr(num3, (&g_43954) + 93, 12), 4);
- setElem(getElem(num3, ((&g_86838) + 19911) + 44, 4), 0, getElemPtr(num3, (&g_43954) + 124, 12), 4);
- setElem(getElem(num3, ((&g_86838) + 19911) + 55, 4), 0, getElemPtr(num3, (&g_43954) + 155, 12), 4);
- setElem(getElem(num3, ((&g_86838) + 19911) + 66, 4), 0, getElemPtr(num3, (&g_43954) + 186, 12), 4);
- setElem(getElem(num3, ((&g_86838) + 19911) + 77, 4), 0, getElemPtr(num3, (&g_43954) + 217, 12), 4);
- setElem(getElem(num3, ((&g_86838) + 19911) + 88, 4), 0, getElemPtr(num3, (&g_43954) + 248, 12), 4);
- if (A_0 == 0)
- {
- setElem(getElem(num3, (&g_86838) + 19911, 4), 1, getElemPtr(num3, &g_43954, 12), 4);
- setElem(getElem(num3, ((&g_86838) + 19911) + 11, 4), 1, getElemPtr(num3, (&g_43954) + 31, 12), 4);
- setElem(getElem(num3, ((&g_86838) + 19911) + 22, 4), 1, getElemPtr(num3, (&g_43954) + 62, 12), 4);
- setElem(getElem(num3, ((&g_86838) + 19911) + 33, 4), 1, getElemPtr(num3, (&g_43954) + 93, 12), 4);
- setElem(getElem(num3, ((&g_86838) + 19911) + 44, 4), 1, getElemPtr(num3, (&g_43954) + 124, 12), 4);
- setElem(getElem(num3, ((&g_86838) + 19911) + 55, 4), 1, getElemPtr(num3, (&g_43954) + 155, 12), 4);
- setElem(getElem(num3, ((&g_86838) + 19911) + 66, 4), 1, getElemPtr(num3, (&g_43954) + 186, 12), 4);
- setElem(getElem(num3, ((&g_86838) + 19911) + 77, 4), 1, getElemPtr(num3, (&g_43954) + 217, 12), 4);
- setElem(getElem(num3, ((&g_86838) + 19911) + 88, 4), 1, getElemPtr(num3, (&g_43954) + 248, 12), 4);
- }
- num3++;
- }
- }
- else
- {
- num4 = 0;
- while (true)
- {
- if (num4 >= 11)
- {
- break;
- }
- wPtr(getElem(num4, getElemPtr(num3, ((&g_86838) + 19911) + 233, 276) + 8, 24), getElemPtr(num4, getElemPtr(num3, ((&g_86838) + 19911) + 233, 276) + 8, 24) + 12);
- wPtr(rPtr(getElemPtr(num4, getElemPtr(num3, ((&g_86838) + 19911) + 233, 276) + 8, 24) + 4), getElemPtr(num4, getElemPtr(num3, ((&g_86838) + 19911) + 233, 276) + 8, 24) + 16);
- wPtr(rPtr(getElemPtr(num4, getElemPtr(num3, ((&g_86838) + 19911) + 233, 276) + 8, 24) + 8), getElemPtr(num4, getElemPtr(num3, ((&g_86838) + 19911) + 233, 276) + 8, 24) + 20);
- num4++;
- }
- num3++;
- goto Label_001B;
- }
- }
- void sub_7C79(var A_0)
- {
- var num3 = getElem(A_0, &g_43946, 4);
- switch (A_0)
- {
- case 0:
- STATS::STAT_SET_INT(0x324C31D, num3, 1);
- break;
- case 1:
- STATS::STAT_SET_INT(0x44BD6982, num3, 1);
- break;
- case 2:
- STATS::STAT_SET_INT(0x8D75047D, num3, 1);
- break;
- }
- }
- void sub_7CD3(var A_0)
- {
- var num3 = 0;
- if (NETWORK::NETWORK_IS_GAME_IN_PROGRESS() == 0)
- {
- if (GAMEPLAY::IS_BIT_SET(rPtr(((&g_86838) + 19911) + 471), A_0) != 0)
- {
- num3 = 1;
- GAMEPLAY::CLEAR_BIT(((&g_86838) + 19911) + 471, A_0);
- }
- }
- else if (GAMEPLAY::IS_BIT_SET(rPtr((getElemPtr(sub_7DFB(), &g_2097152, 16748) + 12348) + 40), A_0) != 0)
- {
- num3 = 1;
- GAMEPLAY::CLEAR_BIT(((&g_86838) + 19911) + 471, A_0);
- GAMEPLAY::CLEAR_BIT((getElemPtr(sub_7DFB(), &g_2097152, 16748) + 12348) + 40, A_0);
- }
- if (num3 != 0)
- {
- var num4;
- strcpy("CHAR_LIFEINVADER", &num4, 64);
- UI::0x574EE85C("COUP_RED");
- UI::0xDCE05406(sub_7D80(A_0));
- UI::0xE7E3C98B(&num4, &num4, 1, 0, "", 0);
- }
- }
- var sub_7D80(var A_0)
- {
- switch (A_0)
- {
- case 0:
- return "COUP_HAIRC";
- case 1:
- return "COUP_TATTOO";
- case 2:
- return "COUP_WARSTOCK";
- case 3:
- return "COUP_MOSPORT";
- case 4:
- return "COUP_ELITAS";
- case 5:
- return "COUP_MEDSPENS";
- case 6:
- return "COUP_SPRUNK";
- case 7:
- return "COUP_RESPRAY";
- }
- return "";
- }
- var sub_7DFB()
- {
- var num3 = 0;
- return num3;
- }
- void sub_7E08(var A_0)
- {
- sub_7F5A(93, A_0);
- sub_7F5A(29, A_0);
- sub_7F5A(30, A_0);
- }
- var sub_7E28(var A_0)
- {
- if (NETWORK::NETWORK_IS_GAME_IN_PROGRESS() == 0)
- {
- return GAMEPLAY::IS_BIT_SET(rPtr(((&g_86838) + 19911) + 471), A_0);
- }
- return GAMEPLAY::IS_BIT_SET(rPtr((getElemPtr(sub_7DFB(), &g_2097152, 16748) + 12348) + 40), A_0);
- }
- var sub_7E64(var A_0)
- {
- var num3;
- var num4 = 0;
- if (PLAYER::HAS_ACHIEVEMENT_BEEN_PASSED(27) != 0)
- {
- return 0;
- }
- if (STATS::STAT_GET_INT(0xD8DDE3AC, &num3, -1) != 0)
- {
- num4 += num3;
- }
- if (STATS::STAT_GET_INT(0x82F04461, &num3, -1) != 0)
- {
- num4 += num3;
- }
- if (STATS::STAT_GET_INT(0x5E1032A2, &num3, -1) != 0)
- {
- num4 += num3;
- }
- if (num4 < 0xBEBC200)
- {
- return 0;
- }
- sub_7EDA(27, 1);
- return 1;
- }
- var sub_7EDA(var A_0, var A_1)
- {
- if (A_0 >= 50)
- {
- return 0;
- }
- return sub_7EF5(A_0, A_1);
- }
- var sub_7EF5(var A_0, var A_1)
- {
- var num1 = PLAYER::HAS_ACHIEVEMENT_BEEN_PASSED(A_0);
- if ((num1 & (A_1 == 1)) != 0)
- {
- return 0;
- }
- bool flag1 = g_19696 != 0;
- if (flag1 & (g_59842 == 0))
- {
- return 0;
- }
- if (PLAYER::GIVE_ACHIEVEMENT_TO_PLAYER(A_0) == 0)
- {
- return 0;
- }
- return 1;
- }
- void sub_7F37(var A_0, var A_1)
- {
- var num3;
- STATS::STAT_GET_INT(A_0, &num3, -1);
- num3 += A_1;
- STATS::STAT_SET_INT(A_0, num3, 1);
- }
- void sub_7F5A(var A_0, var A_1)
- {
- if ((A_1 >= 1) && (rPtr(getElemPtr(A_0, &g_42515, 28) + 8) == 0))
- {
- if (getElem(A_0, &g_42515, 28) != 0)
- {
- var num3;
- STATS::STAT_GET_INT(rPtr(getElemPtr(A_0, &g_42515, 28) + 4), &num3, -1);
- num3++;
- STATS::STAT_SET_INT(rPtr(getElemPtr(A_0, &g_42515, 28) + 4), num3, 1);
- }
- if (NETWORK::NETWORK_IS_GAME_IN_PROGRESS() != 0)
- {
- }
- }
- }
- void sub_7FB6()
- {
- var num3;
- STATS::STAT_GET_INT(0x324C31D, &num3, -1);
- if (getElem(0, &g_43946, 4) != num3)
- {
- sub_803D("BANK_CHECK_FOR_CODE_DEPOSITS: Updating value in BANK_ACCOUNT_MICHAEL to match stats");
- setElem(num3, 0, &g_43946, 4);
- }
- STATS::STAT_GET_INT(0x44BD6982, &num3, -1);
- if (getElem(1, &g_43946, 4) != num3)
- {
- sub_803D("BANK_CHECK_FOR_CODE_DEPOSITS: Updating value in BANK_ACCOUNT_FRANKLIN to match stats");
- setElem(num3, 1, &g_43946, 4);
- }
- STATS::STAT_GET_INT(0x8D75047D, &num3, -1);
- if (getElem(2, &g_43946, 4) != num3)
- {
- sub_803D("BANK_CHECK_FOR_CODE_DEPOSITS: Updating value in BANK_ACCOUNT_TREVOR to match stats");
- setElem(num3, 2, &g_43946, 4);
- }
- }
- void sub_803D(var A_0)
- {
- sub_804B(A_0);
- }
- void sub_804B(var A_0)
- {
- if (GAMEPLAY::ARE_STRINGS_EQUAL(A_0, A_0) != 0)
- {
- }
- }
- var sub_805E()
- {
- if (sub_10B44() != 0)
- {
- return sub_80E3(PLAYER::PLAYER_ID());
- }
- return sub_8083(sub_B25());
- }
- var sub_8083(var A_0)
- {
- var num3;
- switch (A_0)
- {
- case 0:
- STATS::STAT_GET_INT(0x324C31D, &num3, -1);
- return num3;
- case 1:
- STATS::STAT_GET_INT(0x44BD6982, &num3, -1);
- return num3;
- case 2:
- STATS::STAT_GET_INT(0x8D75047D, &num3, -1);
- return num3;
- }
- sub_803D("GET_TOTAL_CASH: enum doesn't have an account");
- return 0;
- }
- var sub_80E3(var A_0)
- {
- return sub_80F5(A_0);
- }
- var sub_80F5(var A_0)
- {
- if (A_0 > -1)
- {
- if (A_0 == PLAYER::PLAYER_ID())
- {
- return NETWORKCASH::0x4F5B781C(-1);
- }
- if (sub_8138(A_0) != 0)
- {
- return rPtr((getElemPtr(A_0, &g_1574052, 1136) + 712) + 12);
- }
- return 0;
- }
- return 0;
- }
- var sub_8138(var A_0)
- {
- if (A_0 == -1)
- {
- return 0;
- }
- return GAMEPLAY::IS_BIT_SET(rPtr((&g_2390986) + 1), A_0);
- }
- void sub_815D(var A_0)
- {
- if (AUDIO::GET_PLAYER_RADIO_STATION_INDEX() != 255)
- {
- AUDIO::SET_MOBILE_RADIO_ENABLED_DURING_GAMEPLAY(A_0);
- AUDIO::SET_MOBILE_PHONE_RADIO_STATE(A_0);
- }
- }
- void sub_817A()
- {
- wPtr(0, (&g_13109) + 5);
- }
- void sub_8188(var A_0, var A_1, var A_2)
- {
- bool flag3;
- bool flag1;
- var num4;
- wPtr(A_0, (&g_13241) + 4485);
- wPtr(A_2, (&g_13241) + 4617);
- if (rPtr((&g_13241) + 4485) < rPtr((&g_13241) + 4484))
- {
- wPtr(rPtr((&g_13241) + 4485), (&g_13241) + 4484);
- goto Label_02B7;
- }
- var num1 = rPtr((&g_13241) + 4478);
- var num11 = num1 & (rPtr((&g_13241) + 4485) > rPtr((&g_13241) + 4486));
- if (num11 == 0)
- {
- flag1 = rPtr((&g_13241) + 4478) == 0;
- }
- if ((num11 | (flag1 & (rPtr((&g_13241) + 4485) >= (rPtr((&g_13241) + 4484) + rPtr((&g_13241) + 3990))))) == 0)
- {
- goto Label_02B7;
- }
- var num3 = rPtr((&g_13241) + 4484);
- while (true)
- {
- if (num3 > rPtr((&g_13241) + 4485))
- {
- break;
- }
- bool flag2 = num3 >= 0;
- if ((flag2 & (num3 < 124)) && (getElem(num3, (&g_13241) + 3857, 4) != 0))
- {
- num4++;
- }
- num3++;
- }
- Label_01B0:
- flag3 = num4 > rPtr((&g_13241) + 3990);
- if (flag3 & (rPtr((&g_13241) + 4484) < 125))
- {
- wPtr(rPtr((&g_13241) + 4484) + 1, (&g_13241) + 4484);
- num4 = 0;
- for (num3 = rPtr((&g_13241) + 4484); num3 <= rPtr((&g_13241) + 4485); num3++)
- {
- bool flag4 = num3 >= 0;
- if ((flag4 & (num3 < 124)) && (getElem(num3, (&g_13241) + 3857, 4) != 0))
- {
- num4++;
- }
- }
- goto Label_01B0;
- }
- Label_02B7:
- wPtr(0, (&g_13241) + 4477);
- wPtr(0, (&g_13241) + 4478);
- if (A_1 != null)
- {
- strcpy("", (&g_13241) + 3697, 16);
- }
- }
- void sub_82CE()
- {
- if (l_103 == l_104)
- {
- l_328 = 3;
- }
- else
- {
- l_329 = getElem(l_103, &l_320, 4);
- sub_833B();
- if (l_329 == 0)
- {
- sub_27A1("PROSTITUTES_BJ_SCENE");
- AUDIO::REQUEST_SCRIPT_AUDIO_BANK("PROSTITUTE_BLOWJOB", 0);
- l_328 = 0;
- }
- else if (l_329 == 1)
- {
- sub_27A1("PROSTITUTES_SEX_SCENE");
- l_328 = 1;
- }
- else if (l_329 == 2)
- {
- sub_27A1("PROSTITUTES_SEX_SCENE");
- l_328 = 2;
- }
- }
- }
- void sub_833B()
- {
- switch (l_329)
- {
- case 0:
- sub_837C();
- break;
- case 1:
- case 2:
- sub_836B();
- break;
- }
- }
- void sub_836B()
- {
- l_83++;
- l_84 = 1;
- }
- void sub_837C()
- {
- l_82++;
- l_84 = 1;
- }
- void sub_838D(var A_0, var A_1, var A_2, var A_3, var A_4, var A_5)
- {
- var num3;
- var num9;
- var num12;
- var num17;
- var num27;
- var num28;
- var num29;
- var num30;
- var num31;
- var num32;
- var num37;
- var num38;
- var num39;
- var num44;
- var num45;
- var num46;
- var num47;
- var num48;
- var num49;
- var num50;
- var num51;
- var num52;
- var num53;
- var num54;
- var num55;
- var num57;
- var num59;
- var num60;
- var num61;
- if (sub_B611(&num3, 0, A_1) == 0)
- {
- return;
- }
- if (sub_B574(0) == 0)
- {
- return;
- }
- GRAPHICS::0x228A2598(76, 84);
- GRAPHICS::0x76C641E4(-0.05f, -0.05f, 0f, 0f);
- var num58 = 0f;
- if (g_13241 != 0)
- {
- if (sub_B4C6(29, 1, 1, &num38, &num39) != 0)
- {
- num58 = num39;
- num58 += 0f;
- }
- else
- {
- g_13241 = 0;
- }
- }
- if (GAMEPLAY::GET_HASH_KEY((&g_13241) + 1) == GAMEPLAY::GET_HASH_KEY("HIDE"))
- {
- num59 = g_13240;
- }
- else
- {
- num59 = (((g_13240 + num58) + 0.034722f) + 0f);
- }
- GRAPHICS::GET_SCREEN_RESOLUTION(&num60, &num61);
- var num8 = 0;
- Label_0122:
- if (num8 >= 2)
- {
- if (rPtr((&g_13241) + 4478) == 0)
- {
- wPtr(num12, (&g_13241) + 4481);
- wPtr(1, (&g_13241) + 4478);
- }
- wPtr(num52, (&g_13241) + 4619);
- wPtr(GAMEPLAY::GET_GAME_TIMER(), (&g_13241) + 4621);
- UI::0x1DA7E41A(rPtr((&g_13241) + 4619));
- if (rPtr((&g_13241) + 6183) == 0)
- {
- sub_689C();
- }
- wPtr(0, (&g_13241) + 6183);
- if (A_2 != null)
- {
- UI::HIDE_HUD_COMPONENT_THIS_FRAME(10);
- }
- UI::HIDE_HUD_COMPONENT_THIS_FRAME(6);
- UI::HIDE_HUD_COMPONENT_THIS_FRAME(7);
- UI::HIDE_HUD_COMPONENT_THIS_FRAME(9);
- UI::HIDE_HUD_COMPONENT_THIS_FRAME(8);
- if (A_0 != null)
- {
- sub_A56E(1);
- }
- GRAPHICS::0x3FE33BD6();
- return;
- }
- bool flag1 = num8 == 1;
- if (flag1 & rPtr((&g_13241) + 4477))
- {
- var num4;
- var num5;
- var num6;
- var num7;
- var num18;
- var num19;
- var num20;
- if (GAMEPLAY::GET_HASH_KEY((&g_13241) + 1) == GAMEPLAY::GET_HASH_KEY("HIDE"))
- {
- num52 = g_13240;
- }
- else
- {
- if (g_13241 != 0)
- {
- GRAPHICS::DRAW_SPRITE(sub_B468(29), sub_B062(29, 1), g_13239 + ((A_5 * 0.5f)), g_13240 + (((num58 - 0f) * 0.5f)), A_5, num58 - (0f), 0f, 255, 255, 255, 255);
- }
- if (rPtr((&g_13241) + 6188) != 0)
- {
- num4 = rPtr((&g_13241) + 6184);
- num5 = rPtr((&g_13241) + 6185);
- num6 = rPtr((&g_13241) + 6186);
- num7 = rPtr((&g_13241) + 6187);
- }
- else
- {
- num4 = 0;
- num5 = 0;
- num6 = 0;
- num7 = 204;
- }
- sub_B034(g_13239, g_13240 + num58, A_5, 0.034722f, num4, num5, num6, num7);
- num52 = (((g_13240 + num58) + 0.034722f) + 0f);
- if (GAMEPLAY::GET_HASH_KEY((&g_13241) + 1) != 0)
- {
- sub_AFD1();
- UI::0x3E35563E((&g_13241) + 1);
- num18 = 0;
- num19 = 0;
- num20 = 0;
- var num21 = 0;
- num17 = 0;
- while (true)
- {
- if (num17 >= rPtr((&g_13241) + 52))
- {
- break;
- }
- if (getElem(num17, (&g_13241) + 5, 4) == 2)
- {
- UI::ADD_TEXT_COMPONENT_INTEGER(getElem(num18, (&g_13241) + 10, 4));
- num18++;
- }
- else if (getElem(num17, (&g_13241) + 5, 4) == 3)
- {
- UI::ADD_TEXT_COMPONENT_FLOAT(getElem(num19, (&g_13241) + 14, 4), getElem(num19, (&g_13241) + 18, 4));
- num19++;
- }
- else if (getElem(num17, (&g_13241) + 5, 4) == 1)
- {
- UI::0xDCE05406(getElemPtr(num20, (&g_13241) + 22, 16));
- num20++;
- }
- else if (getElem(num17, (&g_13241) + 5, 4) == 5)
- {
- UI::0x27A244D8(getElemPtr(num21, (&g_13241) + 35, 32));
- num21++;
- }
- else if (getElem(num17, (&g_13241) + 5, 4) == 6)
- {
- UI::0xDCE05406(getElemPtr(num21, (&g_13241) + 35, 32));
- num21++;
- }
- else if (getElem(num17, (&g_13241) + 5, 4) == 7)
- {
- UI::0x27A244D8(getElemPtr(num21, (&g_13241) + 35, 32));
- num21++;
- }
- num17++;
- }
- UI::0x6F8350CE(g_13239 + (0.00390625f), (g_13240 + num58) + (0.00416664f));
- }
- if ((rPtr((&g_13241) + 4480) > rPtr((&g_13241) + 3990)) && (rPtr((&g_13241) + 4483) != 0))
- {
- sub_AFD1();
- sub_AF6D(((g_13239 + A_5) - (0.00390625f)) - sub_AF8F("CM_ITEM_COUNT", rPtr((&g_13241) + 4483), rPtr((&g_13241) + 4482)), (g_13240 + num58) + (0.00416664f), "CM_ITEM_COUNT", rPtr((&g_13241) + 4483), rPtr((&g_13241) + 4482));
- }
- }
- num9 = rPtr((&g_13241) + 4484);
- num12 = 0;
- if (rPtr((&g_13241) + 6193) != 0)
- {
- num4 = rPtr((&g_13241) + 6189);
- num5 = rPtr((&g_13241) + 6190);
- num6 = rPtr((&g_13241) + 6191);
- num7 = rPtr((&g_13241) + 6192);
- }
- else
- {
- UI::GET_HUD_COLOUR(140, &num4, &num5, &num6, &num7);
- }
- while (true)
- {
- bool flag2 = num12 < rPtr((&g_13241) + 3990);
- if (!(flag2 & (num9 <= rPtr((&g_13241) + 3983))))
- {
- break;
- }
- if ((num9 >= 0) && (getElem(num9, (&g_13241) + 4244, 4) != 0))
- {
- var num1 = getElem(num9, (&g_13241) + 4118, 4);
- if ((num1 & (num9 != rPtr((&g_13241) + 4484))) != 0)
- {
- num52 += 0.00277776f;
- }
- num57 = 0.034722f;
- if (getElem(num9, (&g_13241) + 4491, 4) != 0f)
- {
- num57 = getElem(num9, (&g_13241) + 4491, 4);
- }
- sub_B034(g_13239, num52, A_5, num57, num4, num5, num6, num7);
- num52 += num57;
- num12++;
- }
- num9++;
- }
- if ((A_3 != null) && (num12 <= 1))
- {
- num57 = 0.034722f;
- sub_B034(g_13239, num52, A_5, num57, num4, num5, num6, num7);
- num52 += num57;
- num12++;
- if (rPtr((&g_13241) + 3983) <= 1)
- {
- wPtr(rPtr((&g_13241) + 3983) + 1, (&g_13241) + 3983);
- }
- num55 = 1;
- }
- if (rPtr((&g_13241) + 4480) > rPtr((&g_13241) + 3990))
- {
- var num40;
- if (rPtr((&g_13241) + 6198) != 0)
- {
- num4 = rPtr((&g_13241) + 6194);
- num5 = rPtr((&g_13241) + 6195);
- num6 = rPtr((&g_13241) + 6196);
- num7 = rPtr((&g_13241) + 6197);
- }
- else
- {
- num4 = 0;
- num5 = 0;
- num6 = 0;
- num7 = 204;
- }
- sub_B034(g_13239, num52 + (0f), A_5, 0.034722f, num4, num5, num6, num7);
- struct _s = GRAPHICS::GET_TEXTURE_RESOLUTION("CommonMenu", "shop_arrows_upANDdown");
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, &num40);
- if (rPtr((&g_13241) + 6211) != 0)
- {
- num4 = 0;
- num5 = 0;
- num6 = 0;
- num7 = 255;
- }
- else
- {
- UI::GET_HUD_COLOUR(1, &num4, &num5, &num6, &num7);
- }
- GRAPHICS::DRAW_SPRITE("CommonMenu", "shop_arrows_upANDdown", g_13239 + ((A_5 * 0.5f)), ((num52 + 0f) + (0.034722f * 0.5f)), num40 / itof(num60), rPtr((&num40) + 1) / itof(num61), 0f, num4, num5, num6, num7);
- num52 += (0f + 0.034722f);
- }
- bool flag3 = GAMEPLAY::GET_HASH_KEY((&g_13241) + 3697) != 0;
- if (flag3 & (rPtr((&g_13241) + 3741) != -1))
- {
- num52 += (0.00277776f * 2f);
- num44 = g_13239 + (0.0046875f);
- if (rPtr((&g_13241) + 3743) != 0)
- {
- sub_B4C6(rPtr((&g_13241) + 3743), 1, 1, &num38, &num39);
- num44 = (((g_13239 + num38) + (0.00078125f * 4f)) - (0.00078125f * 1f));
- }
- sub_AF0C(num44);
- UI::0x94B82066((&g_13241) + 3697);
- num18 = 0;
- num19 = 0;
- num20 = 0;
- num17 = 0;
- while (true)
- {
- if (num17 >= rPtr((&g_13241) + 3737))
- {
- break;
- }
- if (getElem(num17, (&g_13241) + 3701, 4) == 2)
- {
- UI::ADD_TEXT_COMPONENT_INTEGER(getElem(num18, (&g_13241) + 3706, 4));
- num18++;
- }
- else if (getElem(num17, (&g_13241) + 3701, 4) == 3)
- {
- UI::ADD_TEXT_COMPONENT_FLOAT(getElem(num19, (&g_13241) + 3710, 4), getElem(num19, (&g_13241) + 3714, 4));
- num19++;
- }
- else if (getElem(num17, (&g_13241) + 3701, 4) == 1)
- {
- UI::0xDCE05406(getElemPtr(num20, (&g_13241) + 3718, 24));
- num20++;
- }
- else if (getElem(num17, (&g_13241) + 3701, 4) == 5)
- {
- UI::0x27A244D8(getElemPtr(num20, (&g_13241) + 3718, 24));
- num20++;
- }
- else if (getElem(num17, (&g_13241) + 3701, 4) == 6)
- {
- UI::0xDCE05406(getElemPtr(num20, (&g_13241) + 3718, 24));
- num20++;
- }
- else if (getElem(num17, (&g_13241) + 3701, 4) == 7)
- {
- UI::0x27A244D8(getElemPtr(num20, (&g_13241) + 3718, 24));
- num20++;
- }
- num17++;
- }
- num9 = UI::0xAA318785(num44, num52 + (0.00277776f));
- UI::GET_HUD_COLOUR(1, &num4, &num5, &num6, &num7);
- sub_B034(g_13239, num52 - (0.00277776f), A_5, 0.00277776f, num4, num5, num6, num7);
- if (rPtr((&g_13241) + 6203) != 0)
- {
- num4 = rPtr((&g_13241) + 6199);
- num5 = rPtr((&g_13241) + 6200);
- num6 = rPtr((&g_13241) + 6201);
- num7 = rPtr((&g_13241) + 6202);
- }
- else
- {
- UI::GET_HUD_COLOUR(140, &num4, &num5, &num6, &num7);
- }
- sub_B034(g_13239, num52, A_5, (((UI::0x3330175B(0.35f, 0) * itof(num9)) + (0.00138888f * 13f)) + ((0.00138888f * 5f) * itof(num9 - 1))), num4, num5, num6, num7);
- sub_AF0C(num44);
- UI::0x3E35563E((&g_13241) + 3697);
- num18 = 0;
- num19 = 0;
- num20 = 0;
- num17 = 0;
- while (true)
- {
- if (num17 >= rPtr((&g_13241) + 3737))
- {
- break;
- }
- if (getElem(num17, (&g_13241) + 3701, 4) == 2)
- {
- UI::ADD_TEXT_COMPONENT_INTEGER(getElem(num18, (&g_13241) + 3706, 4));
- num18++;
- }
- else if (getElem(num17, (&g_13241) + 3701, 4) == 3)
- {
- UI::ADD_TEXT_COMPONENT_FLOAT(getElem(num19, (&g_13241) + 3710, 4), getElem(num19, (&g_13241) + 3714, 4));
- num19++;
- }
- else if (getElem(num17, (&g_13241) + 3701, 4) == 1)
- {
- UI::0xDCE05406(getElemPtr(num20, (&g_13241) + 3718, 24));
- num20++;
- }
- else if (getElem(num17, (&g_13241) + 3701, 4) == 5)
- {
- UI::0x27A244D8(getElemPtr(num20, (&g_13241) + 3718, 24));
- num20++;
- }
- else if (getElem(num17, (&g_13241) + 3701, 4) == 6)
- {
- UI::0xDCE05406(getElemPtr(num20, (&g_13241) + 3718, 24));
- num20++;
- }
- else if (getElem(num17, (&g_13241) + 3701, 4) == 7)
- {
- UI::0x27A244D8(getElemPtr(num20, (&g_13241) + 3718, 24));
- num20++;
- }
- num17++;
- }
- UI::0x6F8350CE(num44, num52 + (0.00277776f));
- if (rPtr((&g_13241) + 3743) != 0)
- {
- sub_B4C6(rPtr((&g_13241) + 3743), 1, 1, &num38, &num39);
- sub_AE64(rPtr((&g_13241) + 3743), 1, &num49, &num50, &num51);
- GRAPHICS::DRAW_SPRITE(sub_B468(rPtr((&g_13241) + 3743)), sub_B062(rPtr((&g_13241) + 3743), 1), ((g_13239 + (num38 * 0.5f)) + (0.00078125f * 2f)), ((num52 + (num39 * 0.5f)) - (0.00138888f * 4f)), num38, num39, 0f, num49, num50, num51, 255);
- }
- num52 += (((UI::0x3330175B(0.35f, 0) * itof(num9)) + (0.00138888f * 13f)) + ((0.00138888f * 5f) * itof(num9 - 1)));
- if ((rPtr((&g_13241) + 3741) > 0) && ((GAMEPLAY::GET_GAME_TIMER() - rPtr((&g_13241) + 3742)) > rPtr((&g_13241) + 3741)))
- {
- strcpy("", (&g_13241) + 3697, 16);
- wPtr(-1, (&g_13241) + 3741);
- }
- }
- sub_AA73(num60, A_1, 0, 0, 0, 0, A_4, 0);
- GRAPHICS::0x228A2598(76, 84);
- GRAPHICS::0x76C641E4(-0.05f, -0.05f, 0f, 0f);
- }
- bool flag4 = num8 == 1;
- if (!(flag4 | (rPtr((&g_13241) + 4477) == 0)))
- {
- goto Label_4762;
- }
- var num22 = 0;
- var num26 = 0;
- var num23 = 0;
- var num24 = 0;
- var num25 = 0;
- num12 = 0;
- var num13 = 0;
- var num14 = 0;
- var num15 = 0;
- var num16 = 0;
- var num62 = rPtr((&g_13241) + 3983);
- if (rPtr((&g_13241) + 4478) != 0)
- {
- num62 = rPtr((&g_13241) + 4481) - 1;
- }
- var num63 = 0f;
- var num64 = 0f;
- var num10 = 0;
- Label_14F6:
- if (num10 > num62)
- {
- if (rPtr((&g_13241) + 4477) == 0)
- {
- wPtr((num59 + num63) + ((0.00277776f * itof(num15))), (&g_13241) + 4479);
- wPtr(num14, (&g_13241) + 4482);
- wPtr(num13, (&g_13241) + 4480);
- wPtr(1, (&g_13241) + 4477);
- }
- goto Label_4762;
- }
- num57 = 0.034722f;
- if (getElem(num9, (&g_13241) + 4491, 4) != 0f)
- {
- num57 = getElem(num9, (&g_13241) + 4491, 4);
- }
- if (rPtr((&g_13241) + 4478) != 0)
- {
- num9 = getElem(num10, (&g_13241) + 5844, 4);
- }
- else
- {
- num9 = num10;
- }
- num15 = num16;
- var num35 = 0;
- bool flag5 = num9 >= rPtr((&g_13241) + 4484);
- if (flag5 & (num12 < rPtr((&g_13241) + 3990)))
- {
- num35 = 1;
- if (rPtr((&g_13241) + 4485) == num9)
- {
- num64 = num63;
- }
- if (getElem(num9, (&g_13241) + 4118, 4) != 0)
- {
- num15++;
- }
- num37 = (((num59 + num63) + (0.00277776f * itof(num15))) + 0.00277776f);
- }
- setElem(num37, num9, (&g_13241) + 4622, 4);
- var num36 = g_13239 + (0.0046875f);
- var num43 = 0;
- var num34 = (rPtr((&g_13241) + 4485) == num9);
- var num79 = num34 & (num8 == 1);
- if ((num79 & num35) != 0)
- {
- var num65 = 255;
- var num66 = 255;
- var num67 = 255;
- var num68 = 255;
- if (rPtr((&g_13241) + 6205) != 0)
- {
- UI::GET_HUD_COLOUR(rPtr((&g_13241) + 6204), &num65, &num66, &num67, &num68);
- }
- else
- {
- UI::GET_HUD_COLOUR(1, &num65, &num66, &num67, &num68);
- }
- sub_B034(g_13239, (num59 + num64) + ((0.00277776f * itof(num15))), A_5, num57, num65, num66, num67, num68);
- wPtr(num37, (&g_13241) + 4620);
- }
- if ((num55 & (num10 == num62)) != 0)
- {
- sub_A65C(num34, 1, 0, 0, 0, 0);
- UI::0x3E35563E("DFLT_MNU_OPT");
- UI::0x6F8350CE(num36, num37);
- num43 = 1;
- goto Label_453B;
- }
- var num11 = 0;
- Label_1808:
- if (num11 >= rPtr((&g_13241) + 3991))
- {
- goto Label_453B;
- }
- var num80 = GAMEPLAY::IS_BIT_SET(getElem(num9, (&g_13241) + 3857, 4), num11);
- if ((num80 | (getElem(num11, (&g_13241) + 3824, 4) == 5)) == 0)
- {
- num36 += getElem(num11, (&g_13241) + 3836, 4);
- goto Label_4528;
- }
- if (rPtr((&g_13241) + 4478) != 0)
- {
- num22 = getElem((num12 * rPtr((&g_13241) + 3991)) + num11, (&g_13241) + 5855, 4);
- num23 = getElem((num12 * rPtr((&g_13241) + 3991)) + num11, (&g_13241) + 5896, 4);
- num24 = getElem((num12 * rPtr((&g_13241) + 3991)) + num11, (&g_13241) + 5937, 4);
- num25 = getElem((num12 * rPtr((&g_13241) + 3991)) + num11, (&g_13241) + 5978, 4);
- num26 = getElem((num12 * rPtr((&g_13241) + 3991)) + num11, (&g_13241) + 6019, 4);
- }
- else
- {
- setElem(num22, (num12 * rPtr((&g_13241) + 3991)) + num11, (&g_13241) + 5855, 4);
- setElem(num23, (num12 * rPtr((&g_13241) + 3991)) + num11, (&g_13241) + 5896, 4);
- setElem(num24, (num12 * rPtr((&g_13241) + 3991)) + num11, (&g_13241) + 5937, 4);
- setElem(num25, (num12 * rPtr((&g_13241) + 3991)) + num11, (&g_13241) + 5978, 4);
- setElem(num26, (num12 * rPtr((&g_13241) + 3991)) + num11, (&g_13241) + 6019, 4);
- }
- var num69 = 0;
- var num56 = 0;
- if ((getElem(0, (&g_13241) + 4751, 4) != -1) && (((num9 * 5) + num11) == getElem(0, (&g_13241) + 4748, 4)))
- {
- num56 = 1;
- num69 = 0;
- }
- if ((getElem(1, (&g_13241) + 4751, 4) != -1) && (((num9 * 5) + num11) == getElem(1, (&g_13241) + 4748, 4)))
- {
- num56 = 1;
- num69 = 1;
- }
- if (getElem(num11, (&g_13241) + 3830, 4) != -1f)
- {
- num36 = (g_13239 + (0.0046875f)) + getElem(num11, (&g_13241) + 3830, 4);
- }
- bool flag6 = num11 < 4;
- bool flag7 = flag6 & (getElem(num11 + 1, (&g_13241) + 3830, 4) != -1f);
- if (flag7 & (num36 < getElem(num11 + 1, (&g_13241) + 3830, 4)))
- {
- num48 = getElem(num11 + 1, (&g_13241) + 3830, 4) - num36;
- }
- else
- {
- num48 = (((g_13239 + 0.225f) - 0.0046875f)) - num36;
- }
- var num81 = getElem(num11, (&g_13241) + 3843, 4);
- var num82 = num81 & rPtr((&g_13241) + 4617);
- if ((num82 & num34) != 0)
- {
- num54 = 1;
- }
- else
- {
- num54 = 0;
- }
- switch (getElem(num11, (&g_13241) + 3824, 4))
- {
- case 1:
- {
- num27 = num22;
- bool flag8 = num8 == 1;
- if (!(flag8 & num35))
- {
- goto Label_32FD;
- }
- if (rPtr((&g_13241) + 4478) != 0)
- {
- num44 = getElem((num12 * rPtr((&g_13241) + 3991)) + num11, (&g_13241) + 6060, 4);
- num45 = getElem((num12 * rPtr((&g_13241) + 3991)) + num11, (&g_13241) + 6101, 4);
- num46 = getElem((num12 * rPtr((&g_13241) + 3991)) + num11, (&g_13241) + 6142, 4);
- goto Label_2539;
- }
- num45 = 0f;
- num46 = 0f;
- num28 = 0;
- num29 = 0;
- num30 = 0;
- num31 = 0;
- num32 = 0;
- if (GAMEPLAY::GET_HASH_KEY(getElemPtr(num27, (&g_13241) + 57, 16)) == 0)
- {
- goto Label_1E83;
- }
- num53 = 0;
- num17 = 0;
- while (true)
- {
- if (num17 >= 4)
- {
- break;
- }
- if (getElem(num17, getElemPtr(num27, (&g_13241) + 1560, 20), 4) == 5)
- {
- num53 = 1;
- }
- num17++;
- }
- }
- case 2:
- {
- bool flag10 = num8 == 1;
- if (!(flag10 & num35))
- {
- goto Label_39D4;
- }
- if (rPtr((&g_13241) + 4478) != 0)
- {
- goto Label_370B;
- }
- sub_A65C(num34, getElem(num27, (&g_13241) + 1058, 4), getElem(num27, (&g_13241) + 1309, 4), num56, 0, 0);
- var num84 = rPtr((&g_13241) + 6209);
- if ((num84 & (rPtr((&g_13241) + 6210) == num9)) != 0)
- {
- sub_A616(num34);
- }
- UI::0x51E7A037("NUMBER");
- UI::ADD_TEXT_COMPONENT_INTEGER(getElem(num23, (&g_13241) + 3068, 4));
- num45 = UI::0xD12A643A(1);
- num44 = 0f;
- if (getElem(num11, (&g_13241) + 3851, 4) == 2)
- {
- num44 += (num48 - num45) + ((0.00078125f * 1f));
- }
- else if (getElem(num11, (&g_13241) + 3851, 4) == 0)
- {
- num44 += (((num48 - num36) * 0.5f) - (num45 * 0.5f));
- }
- setElem(num44, (num12 * rPtr((&g_13241) + 3991)) + num11, (&g_13241) + 6060, 4);
- setElem(num45, (num12 * rPtr((&g_13241) + 3991)) + num11, (&g_13241) + 6101, 4);
- goto Label_3771;
- }
- case 3:
- {
- bool flag11 = num8 == 1;
- if (flag11 & num35)
- {
- if (rPtr((&g_13241) + 4478) != 0)
- {
- num44 = getElem((num12 * rPtr((&g_13241) + 3991)) + num11, (&g_13241) + 6060, 4);
- num45 = getElem((num12 * rPtr((&g_13241) + 3991)) + num11, (&g_13241) + 6101, 4);
- }
- else
- {
- sub_A65C(num34, getElem(num27, (&g_13241) + 1058, 4), getElem(num27, (&g_13241) + 1309, 4), num56, 0, 0);
- var num85 = rPtr((&g_13241) + 6209);
- if ((num85 & (rPtr((&g_13241) + 6210) == num9)) != 0)
- {
- sub_A616(num34);
- }
- UI::0x51E7A037("NUMBER");
- UI::ADD_TEXT_COMPONENT_FLOAT(getElem(num24, (&g_13241) + 3319, 4), getElem(num24, (&g_13241) + 3445, 4));
- num45 = UI::0xD12A643A(1);
- num44 = 0f;
- if (getElem(num11, (&g_13241) + 3851, 4) == 2)
- {
- num44 += (num48 - num45) + ((0.00078125f * 1f));
- }
- else if (getElem(num11, (&g_13241) + 3851, 4) == 0)
- {
- num44 += (((num48 - num36) * 0.5f) - (num45 * 0.5f));
- }
- setElem(num44, (num12 * rPtr((&g_13241) + 3991)) + num11, (&g_13241) + 6060, 4);
- setElem(num45, (num12 * rPtr((&g_13241) + 3991)) + num11, (&g_13241) + 6101, 4);
- }
- if (num54 != 0)
- {
- if (sub_B4C6(26, 1, 0, &num38, &num39) != 0)
- {
- if (getElem(num11, (&g_13241) + 3851, 4) == 2)
- {
- num44 -= (num38 * 2f);
- }
- num47 = (num38 * 0.5f);
- if (sub_B4C6(26, 1, 1, &num38, &num39) != 0)
- {
- sub_AE64(26, 1, &num49, &num50, &num51);
- GRAPHICS::DRAW_SPRITE(sub_B468(26), sub_B062(26, 1), (num36 + num44) + num47, ((num37 - 0.00277776f) + (num57 * 0.5f)), num38, num39, 0f, num49, num50, num51, 255);
- }
- }
- if (sub_B4C6(27, 1, 0, &num38, &num39) != 0)
- {
- num44 += num38;
- num47 = (num38 * 0.5f);
- if (sub_B4C6(27, 1, 1, &num38, &num39) != 0)
- {
- sub_AE64(27, 1, &num49, &num50, &num51);
- GRAPHICS::DRAW_SPRITE(sub_B468(27), sub_B062(27, 1), ((num36 + num44) + num47) + (num45 + num46), ((num37 - 0.00277776f) + (num57 * 0.5f)), num38, num39, 0f, num49, num50, num51, 255);
- }
- }
- }
- sub_A65C(num34, getElem(num27, (&g_13241) + 1058, 4), getElem(num27, (&g_13241) + 1309, 4), num56, 0, 0);
- sub_A5DC(num36 + num44, num37, "NUMBER", getElem(num24, (&g_13241) + 3319, 4), getElem(num24, (&g_13241) + 3445, 4));
- }
- num43 = 1;
- num24++;
- goto Label_4411;
- }
- case 4:
- {
- bool flag12 = num8 == 1;
- if ((flag12 & num35) && (sub_B4C6(getElem(num25, (&g_13241) + 3571, 4), num34, 0, &num38, &num39) != 0))
- {
- if (rPtr((&g_13241) + 4478) != 0)
- {
- num44 = getElem((num12 * rPtr((&g_13241) + 3991)) + num11, (&g_13241) + 6060, 4);
- num46 = getElem((num12 * rPtr((&g_13241) + 3991)) + num11, (&g_13241) + 6142, 4);
- }
- else
- {
- num46 = num38;
- num44 = 0f;
- if (getElem(num11, (&g_13241) + 3851, 4) == 2)
- {
- num44 += (num48 - num46) + ((0.00078125f * 1f));
- }
- else if (getElem(num11, (&g_13241) + 3851, 4) == 0)
- {
- num44 += (((num48 - num36) * 0.5f) - (num46 * 0.5f));
- }
- setElem(num44, (num12 * rPtr((&g_13241) + 3991)) + num11, (&g_13241) + 6060, 4);
- setElem(num46, (num12 * rPtr((&g_13241) + 3991)) + num11, (&g_13241) + 6142, 4);
- }
- if (num54 != 0)
- {
- if (sub_B4C6(26, 1, 0, &num38, &num39) != 0)
- {
- if (getElem(num11, (&g_13241) + 3851, 4) == 2)
- {
- num44 -= (num38 * 2f);
- }
- num47 = (num38 * 0.5f);
- if (sub_B4C6(26, 1, 1, &num38, &num39) != 0)
- {
- sub_AE64(26, 1, &num49, &num50, &num51);
- GRAPHICS::DRAW_SPRITE(sub_B468(26), sub_B062(26, 1), (num36 + num44) + num47, ((num37 - 0.00277776f) + (num57 * 0.5f)), num38, num39, 0f, num49, num50, num51, 255);
- }
- }
- if (sub_B4C6(27, 1, 0, &num38, &num39) != 0)
- {
- num44 += num38;
- num47 = (num38 * 0.5f);
- if (sub_B4C6(27, 1, 1, &num38, &num39) != 0)
- {
- sub_AE64(27, 1, &num49, &num50, &num51);
- GRAPHICS::DRAW_SPRITE(sub_B468(27), sub_B062(27, 1), ((num36 + num44) + num47) + (num45 + num46), ((num37 - 0.00277776f) + (num57 * 0.5f)), num38, num39, 0f, num49, num50, num51, 255);
- }
- }
- }
- if (sub_B4C6(getElem(num25, (&g_13241) + 3571, 4), num34, 1, &num38, &num39) != 0)
- {
- sub_AE64(getElem(num25, (&g_13241) + 3571, 4), num34, &num49, &num50, &num51);
- GRAPHICS::DRAW_SPRITE(sub_B468(getElem(num25, (&g_13241) + 3571, 4)), sub_B062(getElem(num25, (&g_13241) + 3571, 4), num34), (num36 + num44) + ((num38 * 0.5f)), ((num37 - 0.00277776f) + (num57 * 0.5f)), num38 * sub_A57F(getElem(num25, (&g_13241) + 3571, 4)), num39 * sub_A57F(getElem(num25, (&g_13241) + 3571, 4)), 0f, num49, num50, num51, 255);
- }
- }
- num43 = 1;
- num25++;
- goto Label_4411;
- }
- case 5:
- num43 = 1;
- goto Label_4411;
- default:
- goto Label_4411;
- }
- sub_A65C(num34, getElem(num27, (&g_13241) + 1058, 4), getElem(num27, (&g_13241) + 1309, 4), num56, num69, num53);
- UI::0x51E7A037(getElemPtr(num27, (&g_13241) + 57, 16));
- Label_1E83:
- num17 = 0;
- while (true)
- {
- if (num17 >= 4)
- {
- break;
- }
- if (getElem(num17, getElemPtr(num27, (&g_13241) + 1560, 20), 4) == 1)
- {
- num28++;
- if (GAMEPLAY::GET_HASH_KEY(getElemPtr(num27, (&g_13241) + 57, 16)) != 0)
- {
- UI::0xDCE05406(getElemPtr(num27 + num28, (&g_13241) + 57, 16));
- }
- }
- else if (getElem(num17, getElemPtr(num27, (&g_13241) + 1560, 20), 4) == 5)
- {
- if (GAMEPLAY::GET_HASH_KEY(getElemPtr(num27, (&g_13241) + 57, 16)) != 0)
- {
- UI::0x27A244D8(getElemPtr(num26 + num32, &g_2398722, 64));
- }
- num32++;
- }
- else if (getElem(num17, getElemPtr(num27, (&g_13241) + 1560, 20), 4) == 6)
- {
- if (GAMEPLAY::GET_HASH_KEY(getElemPtr(num27, (&g_13241) + 57, 16)) != 0)
- {
- UI::0xDCE05406(getElemPtr(num26 + num32, &g_2398722, 64));
- }
- num32++;
- }
- else if (getElem(num17, getElemPtr(num27, (&g_13241) + 1560, 20), 4) == 7)
- {
- if (GAMEPLAY::GET_HASH_KEY(getElemPtr(num27, (&g_13241) + 57, 16)) != 0)
- {
- UI::0x27A244D8(getElemPtr(num26 + num32, &g_2398722, 64));
- }
- num32++;
- }
- else if (getElem(num17, getElemPtr(num27, (&g_13241) + 1560, 20), 4) == 2)
- {
- if (GAMEPLAY::GET_HASH_KEY(getElemPtr(num27, (&g_13241) + 57, 16)) != 0)
- {
- UI::ADD_TEXT_COMPONENT_INTEGER(getElem(num23 + num29, (&g_13241) + 3068, 4));
- }
- num29++;
- }
- else if (getElem(num17, getElemPtr(num27, (&g_13241) + 1560, 20), 4) == 3)
- {
- if (GAMEPLAY::GET_HASH_KEY(getElemPtr(num27, (&g_13241) + 57, 16)) != 0)
- {
- UI::ADD_TEXT_COMPONENT_FLOAT(getElem(num24 + num30, (&g_13241) + 3319, 4), getElem(num24 + num30, (&g_13241) + 3445, 4));
- }
- num30++;
- }
- else if (getElem(num17, getElemPtr(num27, (&g_13241) + 1560, 20), 4) == 4)
- {
- num31++;
- }
- num17++;
- }
- if (GAMEPLAY::GET_HASH_KEY(getElemPtr(num27, (&g_13241) + 57, 16)) != 0)
- {
- num45 = UI::0xD12A643A(1);
- }
- if (num31 > 0)
- {
- for (num17 = 0; num17 < num31; num17++)
- {
- if (sub_B4C6(getElem(num25 + num17, (&g_13241) + 3571, 4), num34, 0, &num38, &num39) != 0)
- {
- num46 += num38;
- if (num17 > 0)
- {
- num46 -= (0.00078125f * 4f);
- }
- if (getElem(num25 + num17, (&g_13241) + 3571, 4) == 2)
- {
- num46 -= (0.00078125f * 5f);
- }
- }
- }
- }
- num44 = 0f;
- if (getElem(num11, (&g_13241) + 3851, 4) == 2)
- {
- num44 += (num48 - (num45 + num46)) + ((0.00078125f * 1f));
- }
- else if (getElem(num11, (&g_13241) + 3851, 4) == 0)
- {
- num44 += (((num48 - num36) * 0.5f) - ((num45 + num46) * 0.5f));
- }
- setElem(num44, (num12 * rPtr((&g_13241) + 3991)) + num11, (&g_13241) + 6060, 4);
- setElem(num45, (num12 * rPtr((&g_13241) + 3991)) + num11, (&g_13241) + 6101, 4);
- setElem(num46, (num12 * rPtr((&g_13241) + 3991)) + num11, (&g_13241) + 6142, 4);
- Label_2539:
- if (num54 != 0)
- {
- if (sub_B4C6(26, 1, 0, &num38, &num39) != 0)
- {
- if (getElem(num11, (&g_13241) + 3851, 4) == 2)
- {
- num44 -= (num38 * 2f);
- }
- num47 = (num38 * 0.5f);
- if (sub_B4C6(26, 1, 1, &num38, &num39) != 0)
- {
- sub_AE64(26, 1, &num49, &num50, &num51);
- GRAPHICS::DRAW_SPRITE(sub_B468(26), sub_B062(26, 1), (num36 + num44) + num47, ((num37 - 0.00277776f) + (num57 * 0.5f)), num38, num39, 0f, num49, num50, num51, 255);
- }
- }
- if (sub_B4C6(27, 1, 0, &num38, &num39) != 0)
- {
- num44 += num38;
- num47 = (num38 * 0.5f);
- if (sub_B4C6(27, 1, 1, &num38, &num39) != 0)
- {
- sub_AE64(27, 1, &num49, &num50, &num51);
- GRAPHICS::DRAW_SPRITE(sub_B468(27), sub_B062(27, 1), ((num36 + num44) + num47) + (num45 + num46), ((num37 - 0.00277776f) + (num57 * 0.5f)), num38, num39, 0f, num49, num50, num51, 255);
- }
- }
- }
- num28 = 0;
- num29 = 0;
- num30 = 0;
- num31 = 0;
- num32 = 0;
- var num33 = 0;
- if (GAMEPLAY::GET_HASH_KEY(getElemPtr(num27, (&g_13241) + 57, 16)) != 0)
- {
- num53 = 0;
- num17 = 0;
- while (true)
- {
- if (num17 >= 4)
- {
- break;
- }
- if (getElem(num17, getElemPtr(num27, (&g_13241) + 1560, 20), 4) == 5)
- {
- num53 = 1;
- }
- num17++;
- }
- sub_A65C(num34, getElem(num27, (&g_13241) + 1058, 4), getElem(num27, (&g_13241) + 1309, 4), num56, 0, num53);
- var num83 = rPtr((&g_13241) + 6209);
- if ((num83 & (rPtr((&g_13241) + 6210) == num9)) != 0)
- {
- sub_A616(num34);
- }
- UI::0x3E35563E(getElemPtr(num27, (&g_13241) + 57, 16));
- }
- num17 = 0;
- while (true)
- {
- if (num17 >= 4)
- {
- break;
- }
- if (getElem(num17, getElemPtr(num27, (&g_13241) + 1560, 20), 4) == 1)
- {
- num28++;
- if (GAMEPLAY::GET_HASH_KEY(getElemPtr(num27, (&g_13241) + 57, 16)) != 0)
- {
- UI::0xDCE05406(getElemPtr(num27 + num28, (&g_13241) + 57, 16));
- }
- num33 = 1;
- }
- else if (getElem(num17, getElemPtr(num27, (&g_13241) + 1560, 20), 4) == 5)
- {
- if (GAMEPLAY::GET_HASH_KEY(getElemPtr(num27, (&g_13241) + 57, 16)) != 0)
- {
- UI::0x27A244D8(getElemPtr(num26 + num32, &g_2398722, 64));
- }
- num32++;
- num33 = 5;
- }
- else if (getElem(num17, getElemPtr(num27, (&g_13241) + 1560, 20), 4) == 6)
- {
- if (GAMEPLAY::GET_HASH_KEY(getElemPtr(num27, (&g_13241) + 57, 16)) != 0)
- {
- UI::0xDCE05406(getElemPtr(num26 + num32, &g_2398722, 64));
- }
- num32++;
- num33 = 6;
- }
- else if (getElem(num17, getElemPtr(num27, (&g_13241) + 1560, 20), 4) == 7)
- {
- if (GAMEPLAY::GET_HASH_KEY(getElemPtr(num27, (&g_13241) + 57, 16)) != 0)
- {
- UI::0x27A244D8(getElemPtr(num26 + num32, &g_2398722, 64));
- }
- num32++;
- num33 = 6;
- }
- else if (getElem(num17, getElemPtr(num27, (&g_13241) + 1560, 20), 4) == 2)
- {
- if (GAMEPLAY::GET_HASH_KEY(getElemPtr(num27, (&g_13241) + 57, 16)) != 0)
- {
- UI::ADD_TEXT_COMPONENT_INTEGER(getElem(num23 + num29, (&g_13241) + 3068, 4));
- }
- num29++;
- num33 = 2;
- }
- else if (getElem(num17, getElemPtr(num27, (&g_13241) + 1560, 20), 4) == 3)
- {
- if (GAMEPLAY::GET_HASH_KEY(getElemPtr(num27, (&g_13241) + 57, 16)) != 0)
- {
- UI::ADD_TEXT_COMPONENT_FLOAT(getElem(num24 + num30, (&g_13241) + 3319, 4), getElem(num24 + num30, (&g_13241) + 3445, 4));
- }
- num30++;
- num33 = 3;
- }
- else if (getElem(num17, getElemPtr(num27, (&g_13241) + 1560, 20), 4) == 4)
- {
- if ((getElem(num25 + num31, (&g_13241) + 3571, 4) == 2) && (sub_B4C6(getElem(num25 + num31, (&g_13241) + 3571, 4), num34, 0, &num38, &num39) != 0))
- {
- num44 += (num38 * 0.5f);
- if (sub_B4C6(getElem(num25 + num31, (&g_13241) + 3571, 4), num34, 1, &num38, &num39) != 0)
- {
- sub_AE64(getElem(num25 + num31, (&g_13241) + 3571, 4), num34, &num49, &num50, &num51);
- if (getElem(num11, (&g_13241) + 3851, 4) == 2)
- {
- GRAPHICS::DRAW_SPRITE(sub_B468(getElem(num25 + num31, (&g_13241) + 3571, 4)), sub_B062(getElem(num25 + num31, (&g_13241) + 3571, 4), num34), (((num36 + num44) - (0.00078125f * 8f)) + (0.00078125f * 4f)), ((num37 - 0.00277776f) + (num57 * 0.5f)), num38, num39, 0f, num49, num50, num51, 255);
- }
- else
- {
- GRAPHICS::DRAW_SPRITE(sub_B468(getElem(num25 + num31, (&g_13241) + 3571, 4)), sub_B062(getElem(num25 + num31, (&g_13241) + 3571, 4), num34), (num36 + num44) - ((0.00078125f * 8f)), ((num37 - 0.00277776f) + (num57 * 0.5f)), num38, num39, 0f, num49, num50, num51, 255);
- }
- num44 += (0.00078125f * 3f);
- }
- }
- num31++;
- num33 = 4;
- }
- num17++;
- }
- if (GAMEPLAY::GET_HASH_KEY(getElemPtr(num27, (&g_13241) + 57, 16)) != 0)
- {
- bool flag9 = num33 == 4;
- if (flag9 & (getElem(num11, (&g_13241) + 3851, 4) == 2))
- {
- UI::0x6F8350CE((num36 + num44) + ((0.00078125f * 7f)), num37);
- }
- else
- {
- UI::0x6F8350CE(num36 + num44, num37);
- }
- }
- if (num31 > 0)
- {
- num44 += (6f * 0.00078125f);
- for (num17 = 0; num17 < num31; num17++)
- {
- if ((getElem(num25 + num17, (&g_13241) + 3571, 4) != 2) && (sub_B4C6(getElem(num25 + num17, (&g_13241) + 3571, 4), num34, 0, &num38, &num39) != 0))
- {
- num44 += (num38 * 0.5f);
- if (sub_B4C6(getElem(num25 + num17, (&g_13241) + 3571, 4), num34, 1, &num38, &num39) != 0)
- {
- sub_AE64(getElem(num25 + num17, (&g_13241) + 3571, 4), num34, &num49, &num50, &num51);
- if (getElem(num25 + num17, (&g_13241) + 3571, 4) == 30)
- {
- GRAPHICS::DRAW_SPRITE(sub_B468(getElem(num25 + num17, (&g_13241) + 3571, 4)), sub_B062(getElem(num25 + num17, (&g_13241) + 3571, 4), num34), g_13239 + ((num38 * 0.5f)), (((num37 + 0.00277776f) + (num39 * 0.5f)) - (0.00078125f * 11f)), num38, num39, 0f, num49, num50, num51, 255);
- }
- else if (getElem(num11, (&g_13241) + 3851, 4) == 2)
- {
- GRAPHICS::DRAW_SPRITE(sub_B468(getElem(num25 + num17, (&g_13241) + 3571, 4)), sub_B062(getElem(num25 + num17, (&g_13241) + 3571, 4), num34), ((((num36 + num44) + num45) - (0.00078125f * 8f)) + (0.00078125f * 4f)), ((num37 - 0.00277776f) + (num57 * 0.5f)), num38, num39, 0f, num49, num50, num51, 255);
- }
- else
- {
- GRAPHICS::DRAW_SPRITE(sub_B468(getElem(num25 + num17, (&g_13241) + 3571, 4)), sub_B062(getElem(num25 + num17, (&g_13241) + 3571, 4), num34), ((num36 + num44) + num45) - ((0.00078125f * 12f)), ((num37 - 0.00277776f) + (num57 * 0.5f)), num38, num39, 0f, num49, num50, num51, 255);
- }
- }
- num44 += (12f * 0.00078125f);
- }
- }
- }
- Label_32FD:
- num43 = 1;
- num22++;
- num17 = 0;
- while (true)
- {
- if (num17 >= 4)
- {
- goto Label_4411;
- }
- if (getElem(num17, getElemPtr(num27, (&g_13241) + 1560, 20), 4) == 1)
- {
- num22++;
- }
- else if (getElem(num17, getElemPtr(num27, (&g_13241) + 1560, 20), 4) == 2)
- {
- num23++;
- }
- else if (getElem(num17, getElemPtr(num27, (&g_13241) + 1560, 20), 4) == 3)
- {
- num24++;
- }
- else if (getElem(num17, getElemPtr(num27, (&g_13241) + 1560, 20), 4) == 4)
- {
- num25++;
- }
- else if (getElem(num17, getElemPtr(num27, (&g_13241) + 1560, 20), 4) == 5)
- {
- num26++;
- }
- else if (getElem(num17, getElemPtr(num27, (&g_13241) + 1560, 20), 4) == 6)
- {
- num26++;
- }
- else if (getElem(num17, getElemPtr(num27, (&g_13241) + 1560, 20), 4) == 7)
- {
- num26++;
- }
- num17++;
- }
- Label_370B:
- num44 = getElem((num12 * rPtr((&g_13241) + 3991)) + num11, (&g_13241) + 6060, 4);
- num45 = getElem((num12 * rPtr((&g_13241) + 3991)) + num11, (&g_13241) + 6101, 4);
- Label_3771:
- if (num54 != 0)
- {
- if (sub_B4C6(26, 1, 0, &num38, &num39) != 0)
- {
- if (getElem(num11, (&g_13241) + 3851, 4) == 2)
- {
- num44 -= (num38 * 2f);
- }
- num47 = (num38 * 0.5f);
- if (sub_B4C6(26, 1, 1, &num38, &num39) != 0)
- {
- sub_AE64(26, 1, &num49, &num50, &num51);
- GRAPHICS::DRAW_SPRITE(sub_B468(26), sub_B062(26, 1), (num36 + num44) + num47, ((num37 - 0.00277776f) + (num57 * 0.5f)), num38, num39, 0f, num49, num50, num51, 255);
- }
- }
- if (sub_B4C6(27, 1, 0, &num38, &num39) != 0)
- {
- num44 += num38;
- num47 = (num38 * 0.5f);
- if (sub_B4C6(27, 1, 1, &num38, &num39) != 0)
- {
- sub_AE64(27, 1, &num49, &num50, &num51);
- GRAPHICS::DRAW_SPRITE(sub_B468(27), sub_B062(27, 1), ((num36 + num44) + num47) + (num45 + num46), ((num37 - 0.00277776f) + (num57 * 0.5f)), num38, num39, 0f, num49, num50, num51, 255);
- }
- }
- }
- sub_A65C(num34, getElem(num27, (&g_13241) + 1058, 4), getElem(num27, (&g_13241) + 1309, 4), num56, 0, 0);
- sub_A5FA(num36 + num44, num37, "NUMBER", getElem(num23, (&g_13241) + 3068, 4));
- Label_39D4:
- num43 = 1;
- num23++;
- Label_4411:
- if (getElem(num11, (&g_13241) + 3824, 4) == 5)
- {
- if (getElem(num11, (&g_13241) + 3836, 4) > 0.05f)
- {
- num36 += getElem(num11, (&g_13241) + 3836, 4);
- }
- else
- {
- num36 += 0.05f;
- }
- }
- else
- {
- num36 += getElem(num11, (&g_13241) + 3836, 4);
- if ((getElem(num11, (&g_13241) + 3843, 4) != 0) && (sub_B4C6(26, 1, 1, &num38, &num39) != 0))
- {
- num36 -= num38;
- }
- }
- Label_4528:
- num11++;
- goto Label_1808;
- Label_453B:
- if (num43 != 0)
- {
- if (num35 != 0)
- {
- setElem(num9, num12, (&g_13241) + 5844, 4);
- wPtr(num9, (&g_13241) + 4486);
- num12++;
- if (getElem(num9, (&g_13241) + 4118, 4) != 0)
- {
- num16++;
- }
- if (getElem(num9, (&g_13241) + 4491, 4) != 0f)
- {
- num63 += getElem(num9, (&g_13241) + 4491, 4);
- }
- else
- {
- num63 += 0.034722f;
- }
- }
- if (rPtr((&g_13241) + 4477) == 0)
- {
- setElem(1, num9, (&g_13241) + 4244, 4);
- if (getElem(num9, (&g_13241) + 3992, 4) != 0)
- {
- if (num34 != 0)
- {
- wPtr(0, (&g_13241) + 4483);
- }
- }
- else
- {
- num14++;
- if (num34 != 0)
- {
- wPtr(num14, (&g_13241) + 4483);
- }
- }
- num13++;
- }
- }
- num10++;
- goto Label_14F6;
- Label_4762:
- num8++;
- goto Label_0122;
- }
- void sub_A56E(var A_0)
- {
- wPtr(A_0, (&g_1356045) + 404);
- }
- var sub_A57F(var A_0)
- {
- var num2 = A_0;
- if (((((num2 != 35) && (num2 != 34)) && ((num2 != 42) && (num2 != 36))) && (((num2 != 37) && (num2 != 39)) && ((num2 != 40) && (num2 != 38)))) && (((num2 != 43) && (num2 != 44)) && (num2 != 45)))
- {
- return 1f;
- }
- return 0.85f;
- }
- void sub_A5DC(var A_0, var A_1, var A_2, var A_3, var A_4)
- {
- UI::0x3E35563E(A_2);
- UI::ADD_TEXT_COMPONENT_FLOAT(A_3, A_4);
- UI::0x6F8350CE(A_0, A_1);
- }
- void sub_A5FA(var A_0, var A_1, var A_2, var A_3)
- {
- UI::0x3E35563E(A_2);
- UI::ADD_TEXT_COMPONENT_INTEGER(A_3);
- UI::0x6F8350CE(A_0, A_1);
- }
- void sub_A616(var A_0)
- {
- var num3;
- var num4;
- var num5;
- var num6;
- if (A_0 != null)
- {
- UI::GET_HUD_COLOUR(getElem(0, (&g_13241) + 6206, 4), &num3, &num4, &num5, &num6);
- }
- else
- {
- UI::GET_HUD_COLOUR(getElem(1, (&g_13241) + 6206, 4), &num3, &num4, &num5, &num6);
- }
- UI::SET_TEXT_COLOUR(num3, num4, num5, 255);
- }
- void sub_A65C(var A_0, var A_1, var A_2, var A_3, var A_4, var A_5)
- {
- var num3;
- var num4;
- var num5;
- var num6;
- if (A_2 != null)
- {
- if (A_3 != null)
- {
- sub_A7E9(getElem(A_4, (&g_13241) + 4751, 4), &num3, &num4, &num5);
- bool flag1 = num3 < 20;
- bool flag2 = flag1 & (num4 < 20);
- if (flag2 & (num5 < 20))
- {
- if (A_0 == 0)
- {
- UI::GET_HUD_COLOUR(1, &num3, &num4, &num5, &num6);
- }
- }
- else
- {
- bool flag3 = num3 > 230;
- bool flag4 = flag3 & (num4 > 230);
- if ((flag4 & (num5 > 230)) && (A_0 != null))
- {
- num3 = 0;
- num4 = 0;
- num5 = 0;
- }
- }
- UI::SET_TEXT_COLOUR(num3, num4, num5, 255);
- }
- else if (A_1 != null)
- {
- if (A_0 != null)
- {
- UI::GET_HUD_COLOUR(14, &num3, &num4, &num5, &num6);
- UI::SET_TEXT_COLOUR(num3, num4, num5, 255);
- }
- else
- {
- UI::GET_HUD_COLOUR(12, &num3, &num4, &num5, &num6);
- UI::SET_TEXT_COLOUR(num3, num4, num5, 255);
- }
- }
- else if (A_0 != null)
- {
- UI::SET_TEXT_COLOUR(155, 155, 155, 255);
- }
- else
- {
- UI::SET_TEXT_COLOUR(155, 155, 155, 255);
- }
- }
- else if (A_1 != null)
- {
- if (A_0 != null)
- {
- UI::SET_TEXT_COLOUR(0, 0, 0, SYSTEM::FLOOR((255f * 0.8f)));
- }
- else
- {
- UI::GET_HUD_COLOUR(1, &num3, &num4, &num5, &num6);
- UI::SET_TEXT_COLOUR(num3, num4, num5, num6);
- }
- }
- else if (A_0 != null)
- {
- UI::SET_TEXT_COLOUR(155, 155, 155, 255);
- }
- else
- {
- UI::SET_TEXT_COLOUR(155, 155, 155, 255);
- }
- UI::SET_TEXT_SCALE(0f, 0.35f);
- UI::0x68CDFA60(1);
- if (A_5 != null)
- {
- UI::SET_TEXT_FONT(4);
- }
- else
- {
- UI::SET_TEXT_FONT(0);
- }
- UI::SET_TEXT_WRAP(0f, 1f);
- UI::SET_TEXT_CENTRE(0);
- UI::SET_TEXT_DROPSHADOW(0, 0, 0, 0, 0);
- UI::SET_TEXT_EDGE(0, 0, 0, 0, 0);
- }
- void sub_A7E9(var A_0, var A_1, var A_2, var A_3)
- {
- switch ((A_0))
- {
- case 0:
- wPtr(8, A_1);
- wPtr(8, A_2);
- wPtr(8, A_3);
- break;
- case 1:
- wPtr(37, A_1);
- wPtr(37, A_2);
- wPtr(39, A_3);
- break;
- case 22:
- wPtr(140, A_1);
- wPtr(146, A_2);
- wPtr(154, A_3);
- break;
- case 23:
- wPtr(91, A_1);
- wPtr(93, A_2);
- wPtr(94, A_3);
- break;
- case 6:
- wPtr(81, A_1);
- wPtr(84, A_2);
- wPtr(89, A_3);
- break;
- case 111:
- wPtr(240, A_1);
- wPtr(240, A_2);
- wPtr(240, A_3);
- break;
- case 28:
- wPtr(150, A_1);
- wPtr(8, A_2);
- wPtr(0, A_3);
- break;
- case 34:
- wPtr(38, A_1);
- wPtr(3, A_2);
- wPtr(6, A_3);
- break;
- case 88:
- wPtr(245, A_1);
- wPtr(137, A_2);
- wPtr(15, A_3);
- break;
- case 45:
- wPtr(74, A_1);
- wPtr(22, A_2);
- wPtr(7, A_3);
- break;
- case 56:
- wPtr(45, A_1);
- wPtr(58, A_2);
- wPtr(53, A_3);
- break;
- case 58:
- wPtr(71, A_1);
- wPtr(120, A_2);
- wPtr(60, A_3);
- break;
- case 54:
- wPtr(77, A_1);
- wPtr(98, A_2);
- wPtr(104, A_3);
- break;
- case 73:
- wPtr(14, A_1);
- wPtr(49, A_2);
- wPtr(109, A_3);
- break;
- case 68:
- wPtr(22, A_1);
- wPtr(34, A_2);
- wPtr(72, A_3);
- break;
- case 140:
- wPtr(0, A_1);
- wPtr(174, A_2);
- wPtr(239, A_3);
- break;
- case 131:
- wPtr(255, A_1);
- wPtr(183, A_2);
- wPtr(0, A_3);
- break;
- case 90:
- wPtr(142, A_1);
- wPtr(140, A_2);
- wPtr(70, A_3);
- break;
- case 97:
- wPtr(156, A_1);
- wPtr(141, A_2);
- wPtr(113, A_3);
- break;
- case 89:
- wPtr(145, A_1);
- wPtr(115, A_2);
- wPtr(71, A_3);
- break;
- case 105:
- wPtr(98, A_1);
- wPtr(68, A_2);
- wPtr(40, A_3);
- break;
- case 100:
- wPtr(124, A_1);
- wPtr(27, A_2);
- wPtr(68, A_3);
- break;
- case 99:
- wPtr(114, A_1);
- wPtr(42, A_2);
- wPtr(63, A_3);
- break;
- case 136:
- wPtr(246, A_1);
- wPtr(151, A_2);
- wPtr(153, A_3);
- break;
- case 49:
- wPtr(32, A_1);
- wPtr(32, A_2);
- wPtr(44, A_3);
- break;
- case 146:
- wPtr(26, A_1);
- wPtr(1, A_2);
- wPtr(23, A_3);
- break;
- default:
- wPtr(255, A_1);
- wPtr(255, A_2);
- wPtr(255, A_3);
- break;
- }
- }
- void sub_AA73(var A_0, var A_1, var A_2, var A_3, var A_4, var A_5, var A_6, var A_7)
- {
- bool flag1;
- var num3;
- if (sub_B611(&num3, 0, A_1) == 0)
- {
- return;
- }
- A_0 = A_0;
- if ((A_3 & (sub_B574(A_4) == 0)) != null)
- {
- return;
- }
- if (sub_ADF0() != 0)
- {
- return;
- }
- if ((A_7 == 0) && (sub_AD7D(PLAYER::PLAYER_ID()) != 0))
- {
- return;
- }
- if (rPtr((&g_13241) + 3744) == 0)
- {
- return;
- }
- if (rPtr((&g_13241) + 3745) != 0)
- {
- goto Label_0397;
- }
- GRAPHICS::0x215ABBE8(getElem(num3, (&g_13241) + 4409, 40), "CLEAR_ALL");
- GRAPHICS::0x02DBF2D7();
- GRAPHICS::0x215ABBE8(getElem(num3, (&g_13241) + 4409, 40), "SET_MAX_WIDTH");
- GRAPHICS::0x9A01FFDA((1f - (rPtr((&g_13241) + 3849) / 100f)));
- GRAPHICS::0x02DBF2D7();
- var num4 = 0;
- Label_0123:
- if (num4 >= rPtr((&g_13241) + 3744))
- {
- GRAPHICS::0x215ABBE8(getElem(num3, (&g_13241) + 4409, 40), "SET_BACKGROUND_COLOUR");
- GRAPHICS::0x716777CB(0);
- GRAPHICS::0x716777CB(0);
- GRAPHICS::0x716777CB(0);
- GRAPHICS::0x716777CB(80);
- GRAPHICS::0x02DBF2D7();
- GRAPHICS::0x215ABBE8(getElem(num3, (&g_13241) + 4409, 40), "DRAW_INSTRUCTIONAL_BUTTONS");
- if (rPtr((&g_13241) + 3850) != 0)
- {
- GRAPHICS::0x716777CB(1);
- }
- else
- {
- GRAPHICS::0x716777CB(0);
- }
- GRAPHICS::0x02DBF2D7();
- wPtr(1, (&g_13241) + 3745);
- goto Label_0397;
- }
- if (GAMEPLAY::GET_HASH_KEY(getElemPtr(num4, (&g_13241) + 3759, 16)) == GAMEPLAY::GET_HASH_KEY("PREV"))
- {
- goto Label_02C7;
- }
- GRAPHICS::0x215ABBE8(getElem(num3, (&g_13241) + 4409, 40), "SET_DATA_SLOT");
- GRAPHICS::0x716777CB(num4);
- GRAPHICS::0x716777CB(getElem(num4, (&g_13241) + 3746, 4));
- var num5 = num4 + 1;
- Label_01C2:
- flag1 = num5 < 12;
- if (flag1 & (GAMEPLAY::GET_HASH_KEY(getElemPtr(num5, (&g_13241) + 3759, 16)) == GAMEPLAY::GET_HASH_KEY("PREV")))
- {
- GRAPHICS::0x716777CB(getElem(num5, (&g_13241) + 3746, 4));
- num5++;
- goto Label_01C2;
- }
- if (getElem(num4, (&g_13241) + 3808, 4) == -1)
- {
- sub_AD6B(getElemPtr(num4, (&g_13241) + 3759, 16));
- }
- else
- {
- GRAPHICS::0x3AC9CB55(getElemPtr(num4, (&g_13241) + 3759, 16));
- if (A_5 != null)
- {
- UI::0x135B3CD0(A_2, 70);
- }
- else
- {
- UI::ADD_TEXT_COMPONENT_INTEGER(A_2);
- }
- GRAPHICS::0x386CE0B8();
- }
- GRAPHICS::0x02DBF2D7();
- Label_02C7:
- num4++;
- goto Label_0123;
- Label_0397:
- num4 = 0;
- while (true)
- {
- if (num4 >= rPtr((&g_13241) + 3744))
- {
- break;
- }
- if ((getElem(num4, (&g_13241) + 3808, 4) != -1) && (A_2 > 0))
- {
- GRAPHICS::0x215ABBE8(getElem(num3, (&g_13241) + 4409, 40), "OVERRIDE_RESPAWN_TEXT");
- GRAPHICS::0x716777CB(num4);
- GRAPHICS::0x3AC9CB55(getElemPtr(num4, (&g_13241) + 3759, 16));
- if (A_5 != null)
- {
- UI::0x135B3CD0(A_2, 70);
- }
- else
- {
- UI::ADD_TEXT_COMPONENT_INTEGER(A_2);
- }
- GRAPHICS::0x386CE0B8();
- GRAPHICS::0x02DBF2D7();
- }
- num4++;
- }
- GRAPHICS::0x228A2598(76, 66);
- GRAPHICS::0x76C641E4(0f, 0f, 0f, 0f);
- if (A_6 != null)
- {
- if (rPtr((&g_13241) + 6213) == 0)
- {
- UI::SET_HUD_COMPONENT_POSITION(15, 0f, -0.0375f);
- wPtr(1, (&g_13241) + 6213);
- }
- }
- else if (rPtr((&g_13241) + 6213) != 0)
- {
- UI::RESET_HUD_COMPONENT_VALUES(15);
- wPtr(0, (&g_13241) + 6213);
- }
- GRAPHICS::0x3FE33BD6();
- if (rPtr((&g_13241) + 3823) != 0)
- {
- GRAPHICS::0x228A2598(82, 66);
- GRAPHICS::0x76C641E4(0f, 0f, 0f, 0f);
- GRAPHICS::DRAW_SCALEFORM_MOVIE(getElem(num3, (&g_13241) + 4409, 40), rPtr((&g_13241) + 3821), rPtr((&g_13241) + 3822), 1f, 1f, 255, 255, 255, 255);
- GRAPHICS::0x3FE33BD6();
- }
- else
- {
- GRAPHICS::0x7B48E696(getElem(num3, (&g_13241) + 4409, 40), 255, 255, 255, 255);
- }
- }
- void sub_AD6B(var A_0)
- {
- GRAPHICS::0x3AC9CB55(A_0);
- GRAPHICS::0x386CE0B8();
- }
- var sub_AD7D(var A_0)
- {
- if (A_0 == PLAYER::PLAYER_ID())
- {
- return (sub_ADAF(-1, 0) == 8);
- }
- return (rPtr(getElemPtr(A_0, &g_1574052, 1136) + 712) == 8);
- }
- var sub_ADAF(var A_0, var A_1)
- {
- var num3;
- var num4 = A_0;
- if (num4 == -1)
- {
- num4 = sub_4364();
- }
- if (getElem(num4, &g_1344079, 4) == 1)
- {
- num3 = 8;
- }
- else
- {
- num3 = getElem(num4, &g_1338472, 4);
- }
- return num3;
- }
- var sub_ADF0()
- {
- if (rPtr((&g_10433) + 1) > 3)
- {
- return 1;
- }
- if (SCRIPT::0x029D3841(0xD30D3AEF) > 0)
- {
- var num3;
- setStruct(0f, -500f, 0f, 3, &num3);
- MOBILE::GET_MOBILE_PHONE_POSITION(&num3);
- if (g_10378 == 0)
- {
- if (rPtr((&num3) + 1) > -119f)
- {
- return 1;
- }
- return 0;
- }
- if (rPtr((&num3) + 1) > -101f)
- {
- return 1;
- }
- }
- return 0;
- }
- void sub_AE64(var A_0, var A_1, var A_2, var A_3, var A_4)
- {
- var num3;
- UI::GET_HUD_COLOUR(1, A_2, A_3, A_4, &num3);
- switch ((A_0))
- {
- case 28:
- wPtr(194, A_2);
- wPtr(80, A_3);
- wPtr(80, A_4);
- break;
- case 15:
- case 4:
- case 16:
- case 26:
- case 27:
- case 35:
- case 34:
- case 42:
- case 36:
- case 37:
- case 39:
- case 40:
- case 38:
- case 43:
- case 44:
- case 45:
- if (A_1 != null)
- {
- wPtr(0, A_2);
- wPtr(0, A_3);
- wPtr(0, A_4);
- }
- break;
- }
- }
- void sub_AF0C(var A_0)
- {
- var num3;
- var num4;
- var num5;
- var num6;
- UI::GET_HUD_COLOUR(1, &num3, &num4, &num5, &num6);
- UI::SET_TEXT_FONT(0);
- UI::SET_TEXT_SCALE(0f, 0.35f);
- UI::SET_TEXT_LEADING(2);
- UI::SET_TEXT_COLOUR(num3, num4, num5, num6);
- UI::SET_TEXT_WRAP(A_0, ((g_13239 + 0.225f) - 0.0046875f));
- UI::SET_TEXT_CENTRE(0);
- UI::SET_TEXT_DROPSHADOW(0, 0, 0, 0, 0);
- UI::SET_TEXT_EDGE(0, 0, 0, 0, 0);
- }
- void sub_AF6D(var A_0, var A_1, var A_2, var A_3, var A_4)
- {
- UI::0x3E35563E(A_2);
- UI::ADD_TEXT_COMPONENT_INTEGER(A_3);
- UI::ADD_TEXT_COMPONENT_INTEGER(A_4);
- UI::0x6F8350CE(A_0, A_1);
- }
- var sub_AF8F(var A_0, var A_1, var A_2)
- {
- if (GAMEPLAY::IS_STRING_NULL(A_0) == 0)
- {
- if (GAMEPLAY::GET_HASH_KEY(A_0) == 0)
- {
- return 0f;
- }
- }
- else
- {
- return 0f;
- }
- sub_AFD1();
- UI::0x51E7A037(A_0);
- UI::ADD_TEXT_COMPONENT_INTEGER(A_1);
- UI::ADD_TEXT_COMPONENT_INTEGER(A_2);
- return UI::0xD12A643A(1);
- }
- void sub_AFD1()
- {
- var num3;
- var num4;
- var num5;
- var num6;
- UI::GET_HUD_COLOUR(1, &num3, &num4, &num5, &num6);
- UI::SET_TEXT_FONT(0);
- UI::SET_TEXT_SCALE(0f, 0.35f);
- UI::SET_TEXT_COLOUR(num3, num4, num5, num6);
- UI::SET_TEXT_WRAP(g_13239 + (0.0046875f), ((g_13239 + 0.225f) - 0.0046875f));
- UI::SET_TEXT_CENTRE(0);
- UI::SET_TEXT_DROPSHADOW(0, 0, 0, 0, 0);
- UI::SET_TEXT_EDGE(0, 0, 0, 0, 0);
- }
- void sub_B034(var A_0, var A_1, var A_2, var A_3, var A_4, var A_5, var A_6, var A_7)
- {
- GRAPHICS::DRAW_RECT((A_0 + (A_2 * 0.5f)), (A_1 + (A_3 * 0.5f)), A_2, A_3, A_4, A_5, A_6, A_7);
- }
- var sub_B062(var A_0, var A_1)
- {
- var num3;
- initArray(&num3, 2);
- if (A_0 < 34)
- {
- if (GAMEPLAY::IS_STRING_NULL_OR_EMPTY(getElemPtr(A_0, (&g_13241) + 5299, 64)) == 0)
- {
- return sub_B45E(getElemPtr(A_0, (&g_13241) + 5299, 64));
- }
- }
- else if (GAMEPLAY::IS_STRING_NULL_OR_EMPTY(getElemPtr((A_0) - 34, (&g_2455136) + 545, 64)) == 0)
- {
- return sub_B45E(getElemPtr((A_0) - 34, (&g_2455136) + 545, 64));
- }
- num3 = A_0;
- switch (num3)
- {
- case 3:
- setElem("MP_hostCrown", 0, &num3, 4);
- setElem("MP_hostCrown", 1, &num3, 4);
- break;
- case 21:
- setElem("MP_SpecItem_Coke", 0, &num3, 4);
- setElem("MP_SpecItem_Coke", 1, &num3, 4);
- break;
- case 22:
- setElem("MP_SpecItem_Heroin", 0, &num3, 4);
- setElem("MP_SpecItem_Heroin", 1, &num3, 4);
- break;
- case 23:
- setElem("MP_SpecItem_Weed", 0, &num3, 4);
- setElem("MP_SpecItem_Weed", 1, &num3, 4);
- break;
- case 24:
- setElem("MP_SpecItem_Meth", 0, &num3, 4);
- setElem("MP_SpecItem_Meth", 1, &num3, 4);
- break;
- case 25:
- setElem("MP_SpecItem_Cash", 0, &num3, 4);
- setElem("MP_SpecItem_Cash", 1, &num3, 4);
- break;
- case 1:
- setElem("shop_NEW_Star", 0, &num3, 4);
- setElem("shop_NEW_Star", 1, &num3, 4);
- break;
- case 2:
- setElem("shop_NEW_Star", 0, &num3, 4);
- setElem("shop_NEW_Star", 1, &num3, 4);
- break;
- case 4:
- setElem("Shop_Tick_Icon", 0, &num3, 4);
- setElem("Shop_Tick_Icon", 1, &num3, 4);
- break;
- case 6:
- setElem("Shop_Box_CrossB", 0, &num3, 4);
- setElem("Shop_Box_Cross", 1, &num3, 4);
- break;
- case 7:
- setElem("Shop_Box_BlankB", 0, &num3, 4);
- setElem("Shop_Box_Blank", 1, &num3, 4);
- break;
- case 5:
- setElem("Shop_Box_TickB", 0, &num3, 4);
- setElem("Shop_Box_Tick", 1, &num3, 4);
- break;
- case 8:
- setElem("shop_NEW_Star", 0, &num3, 4);
- setElem("shop_NEW_Star", 1, &num3, 4);
- break;
- case 9:
- setElem("Shop_Clothing_Icon_B", 0, &num3, 4);
- setElem("Shop_Clothing_Icon_A", 1, &num3, 4);
- break;
- case 10:
- setElem("Shop_GunClub_Icon_B", 0, &num3, 4);
- setElem("Shop_GunClub_Icon_A", 1, &num3, 4);
- break;
- case 17:
- setElem("Shop_Ammo_Icon_B", 0, &num3, 4);
- setElem("Shop_Ammo_Icon_A", 1, &num3, 4);
- break;
- case 18:
- setElem("Shop_Armour_Icon_B", 0, &num3, 4);
- setElem("Shop_Armour_Icon_A", 1, &num3, 4);
- break;
- case 19:
- setElem("Shop_Health_Icon_B", 0, &num3, 4);
- setElem("Shop_Health_Icon_A", 1, &num3, 4);
- break;
- case 20:
- setElem("Shop_MakeUp_Icon_B", 0, &num3, 4);
- setElem("Shop_MakeUp_Icon_A", 1, &num3, 4);
- break;
- case 11:
- setElem("Shop_Tattoos_Icon_B", 0, &num3, 4);
- setElem("Shop_Tattoos_Icon_A", 1, &num3, 4);
- break;
- case 12:
- setElem("Shop_Garage_Icon_B", 0, &num3, 4);
- setElem("Shop_Garage_Icon_A", 1, &num3, 4);
- break;
- case 13:
- setElem("Shop_Garage_Bike_Icon_B", 0, &num3, 4);
- setElem("Shop_Garage_Bike_Icon_A", 1, &num3, 4);
- break;
- case 14:
- setElem("Shop_Barber_Icon_B", 0, &num3, 4);
- setElem("Shop_Barber_Icon_A", 1, &num3, 4);
- break;
- case 15:
- setElem("shop_Lock", 0, &num3, 4);
- setElem("shop_Lock", 1, &num3, 4);
- break;
- case 16:
- setElem("Shop_Tick_Icon", 0, &num3, 4);
- setElem("Shop_Tick_Icon", 1, &num3, 4);
- break;
- case 26:
- setElem("arrowleft", 0, &num3, 4);
- setElem("arrowleft", 1, &num3, 4);
- break;
- case 27:
- setElem("arrowright", 0, &num3, 4);
- setElem("arrowright", 1, &num3, 4);
- break;
- case 28:
- setElem("MP_AlertTriangle", 0, &num3, 4);
- setElem("MP_AlertTriangle", 1, &num3, 4);
- break;
- case 29:
- setElem("shop_NEW_Star", 0, &num3, 4);
- setElem("shop_NEW_Star", 1, &num3, 4);
- break;
- case 31:
- setElem("Shop_Michael_Icon_B", 0, &num3, 4);
- setElem("Shop_Michael_Icon_A", 1, &num3, 4);
- break;
- case 32:
- setElem("Shop_Franklin_Icon_B", 0, &num3, 4);
- setElem("Shop_Franklin_Icon_A", 1, &num3, 4);
- break;
- case 33:
- setElem("Shop_Trevor_Icon_B", 0, &num3, 4);
- setElem("Shop_Trevor_Icon_A", 1, &num3, 4);
- break;
- case 0:
- setElem("", 0, &num3, 4);
- setElem("", 1, &num3, 4);
- break;
- }
- if (A_1 != null)
- {
- return getElem(0, &num3, 4);
- }
- return getElem(1, &num3, 4);
- }
- var sub_B45E(var A_0)
- {
- return A_0;
- }
- var sub_B468(var A_0)
- {
- if (A_0 < 34)
- {
- if (GAMEPLAY::IS_STRING_NULL_OR_EMPTY(getElemPtr(A_0, (&g_13241) + 4754, 64)) == 0)
- {
- return sub_B45E(getElemPtr(A_0, (&g_13241) + 4754, 64));
- }
- }
- else if (GAMEPLAY::IS_STRING_NULL_OR_EMPTY(getElemPtr((A_0) - 34, &g_2455136, 64)) == 0)
- {
- return sub_B45E(getElemPtr((A_0) - 34, &g_2455136, 64));
- }
- return "CommonMenu";
- }
- var sub_B4C6(var A_0, var A_1, var A_2, var A_3, var A_4)
- {
- var num5;
- var num6;
- var num7;
- var num3 = sub_B468(A_0);
- var num4 = sub_B062(A_0, A_1);
- if (GAMEPLAY::GET_HASH_KEY(num4) == 0)
- {
- return 0;
- }
- GRAPHICS::GET_SCREEN_RESOLUTION(&num5, &num6);
- struct _s = GRAPHICS::GET_TEXTURE_RESOLUTION(num3, num4);
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, &num7);
- if (A_2 == 0)
- {
- num7 -= 2f;
- wPtr(rPtr((&num7) + 1) - (2f), (&num7) + 1);
- }
- if (A_0 == 30)
- {
- num7 = 288f;
- wPtr(106f, (&num7) + 1);
- }
- wPtr((num7 / itof(num5)) * itof(num5 / num6), A_3);
- wPtr(((rPtr((&num7) + 1) / itof(num6)) / (num7 / itof(num5))) * rPtr(A_3), A_4);
- bool flag1 = GRAPHICS::GET_IS_WIDESCREEN() == 0;
- if (flag1 & (A_0 != 30))
- {
- wPtr((rPtr(A_3) * 1.33f), A_3);
- }
- return 1;
- }
- var sub_B574(var A_0)
- {
- if (rPtr(((&g_2390986) + 1237) + 244) == 0)
- {
- var num7;
- var num1;
- bool flag1 = CAM::IS_SCREEN_FADED_IN() == 0;
- if (!flag1)
- {
- num1 = sub_CDE(8, -1);
- }
- bool flag2 = flag1 | (num1 & (sub_B605() != 65));
- bool flag3 = flag2 | UI::IS_PAUSE_MENU_ACTIVE();
- if (!flag3)
- {
- num7 = STREAMING::STOP_PLAYER_REMAIN_ARCADE();
- }
- bool flag4 = flag3 | (num7 & (A_0 == 0));
- bool flag5 = flag4 | NETWORK::0x25E2DBA9();
- bool flag6 = flag5 | g_60102;
- bool flag7 = flag6 | rPtr((&g_13241) + 6212);
- bool flag8 = flag7 | UI::0x94C834AD();
- if (flag8 | rPtr((&g_80929) + 1066))
- {
- return 0;
- }
- }
- return 1;
- }
- var sub_B605()
- {
- return g_1344034;
- }
- var sub_B611(var A_0, var A_1, var A_2)
- {
- var num3;
- if (A_2 == -1)
- {
- var num1 = NETWORK::NETWORK_IS_GAME_IN_PROGRESS();
- if ((num1 & NETWORK::NETWORK_GET_THIS_SCRIPT_IS_NETWORK_SCRIPT()) != 0)
- {
- A_2 = NETWORK::0xDB8B5D71();
- }
- }
- strcpy(SCRIPT::GET_THIS_SCRIPT_NAME(), &num3, 64);
- saddi(A_2, &num3, 64);
- var num19 = GAMEPLAY::GET_HASH_KEY(&num3);
- var num21 = -1;
- var num20 = 0;
- while (true)
- {
- if (num20 >= 6)
- {
- break;
- }
- if (getElem(num20, (&g_13241) + 4470, 4) == num19)
- {
- wPtr(num20, A_0);
- return 1;
- }
- if (getElem(num20, (&g_13241) + 4470, 4) == 0)
- {
- num21 = num20;
- }
- num20++;
- }
- if ((A_1 != null) && (num21 != -1))
- {
- setElem(num19, num21, (&g_13241) + 4470, 4);
- wPtr(num21, A_0);
- return 1;
- }
- return 0;
- }
- void sub_B6AE()
- {
- if (sub_CD9C(l_335) == 0)
- {
- l_335 = sub_BCD6();
- sub_B8BF(&l_335, 0, 0, GAMEPLAY::GET_RANDOM_INT_IN_RANGE(1, 2), 0, 0, 0);
- }
- else if (sub_F6B7(l_108, 2) == 0)
- {
- if (sub_B724(l_335) != 0)
- {
- l_335 = sub_BCD6();
- sub_B8BF(&l_335, 0, 0, GAMEPLAY::GET_RANDOM_INT_IN_RANGE(1, 2), 0, 0, 0);
- sub_F4AD(&l_108, 2);
- }
- }
- else if (sub_B724(l_335) != 0)
- {
- sub_F46B(0);
- }
- }
- var sub_B724(var A_0)
- {
- return sub_B736(sub_BCD6(), A_0);
- }
- var sub_B736(var A_0, var A_1)
- {
- bool flag1 = sub_CD9C(A_1) == 0;
- if (flag1 | (sub_CD9C(A_0) == 0))
- {
- return 1;
- }
- var num3 = sub_B89A(A_0);
- var num4 = sub_B89A(A_1);
- if (num3 > num4)
- {
- return 1;
- }
- if (num3 >= num4)
- {
- num3 = sub_B88D(A_0);
- num4 = sub_B88D(A_1);
- if (num3 > num4)
- {
- return 1;
- }
- if (num3 < num4)
- {
- return 0;
- }
- num3 = sub_B87B(A_0);
- num4 = sub_B87B(A_1);
- if (num3 > num4)
- {
- return 1;
- }
- if (num3 < num4)
- {
- return 0;
- }
- num3 = sub_B868(A_0);
- num4 = sub_B868(A_1);
- if (num3 > num4)
- {
- return 1;
- }
- if (num3 < num4)
- {
- return 0;
- }
- num3 = sub_B855(A_0);
- num4 = sub_B855(A_1);
- if (num3 > num4)
- {
- return 1;
- }
- if (num3 < num4)
- {
- return 0;
- }
- num3 = sub_B842(A_0);
- num4 = sub_B842(A_1);
- if (num3 > num4)
- {
- return 1;
- }
- }
- return 0;
- }
- var sub_B842(var A_0)
- {
- return (SYSTEM::SHIFT_RIGHT(A_0, 20) & 63);
- }
- var sub_B855(var A_0)
- {
- return (SYSTEM::SHIFT_RIGHT(A_0, 14) & 63);
- }
- var sub_B868(var A_0)
- {
- return (SYSTEM::SHIFT_RIGHT(A_0, 9) & 31);
- }
- var sub_B87B(var A_0)
- {
- return (SYSTEM::SHIFT_RIGHT(A_0, 4) & 31);
- }
- var sub_B88D(var A_0)
- {
- return (A_0 & 15);
- }
- var sub_B89A(var A_0)
- {
- return (((SYSTEM::SHIFT_RIGHT(A_0, 26) & 31) * sub_5099(GAMEPLAY::IS_BIT_SET(A_0, 31), -1, 1)) + 2011);
- }
- void sub_B8BF(var A_0, var A_1, var A_2, var A_3, var A_4, var A_5, var A_6)
- {
- var num3 = sub_B89A(rPtr(A_0));
- var num4 = sub_B88D(rPtr(A_0));
- var num5 = sub_B87B(rPtr(A_0));
- var num6 = sub_B868(rPtr(A_0));
- var num7 = sub_B855(rPtr(A_0));
- var num8 = sub_B842(rPtr(A_0));
- bool flag1 = A_6 == 0;
- bool flag2 = flag1 & (A_5 == 0);
- bool flag3 = flag2 & (A_4 == 0);
- bool flag4 = flag3 & (A_3 == 0);
- bool flag5 = flag4 & (A_2 == 0);
- if ((((((!(flag5 & (A_1 == 0)) && (A_1 >= 0)) && (A_2 >= 0)) && (A_3 >= 0)) && (A_4 >= 0)) && (A_5 >= 0)) && (A_6 >= 0))
- {
- num8 += A_1;
- while (true)
- {
- if (num8 < 60)
- {
- break;
- }
- A_2 += 1;
- num8 -= 60;
- }
- num7 += A_2;
- while (true)
- {
- if (num7 < 60)
- {
- break;
- }
- A_3 += 1;
- num7 -= 60;
- }
- num6 += A_3;
- while (true)
- {
- if (num6 < 24)
- {
- break;
- }
- A_4 += 1;
- num6 -= 24;
- }
- num5 += A_4;
- var num9 = sub_BC34(num4, num3);
- while (true)
- {
- if (num5 <= num9)
- {
- break;
- }
- A_5 += 1;
- num5 -= num9;
- if (num4 > 11)
- {
- A_6 += 1;
- num4 -= 12;
- }
- num9 = sub_BC34(num4, num3);
- }
- num4 += A_5;
- while (true)
- {
- if (num4 <= 11)
- {
- break;
- }
- A_6 += 1;
- num4 -= 12;
- }
- num3 += A_6;
- sub_BA41(A_0, num8, num7, num6, num5, num4, num3);
- }
- }
- void sub_BA41(var A_0, var A_1, var A_2, var A_3, var A_4, var A_5, var A_6)
- {
- sub_BBF8(A_0, A_1);
- sub_BBBD(A_0, A_2);
- sub_BB83(A_0, A_3);
- sub_BB32(A_0, A_4);
- sub_BAFF(A_0, A_5);
- sub_BA79(A_0, A_6);
- }
- void sub_BA79(var A_0, var A_1)
- {
- if (A_1 > 0)
- {
- bool flag1 = A_1 > 2043;
- if (!(flag1 | (A_1 < 1979)))
- {
- wPtr(rPtr(A_0) - (rPtr(A_0) & 0x7C000000), A_0);
- if (A_1 < 2011)
- {
- wPtr(rPtr(A_0) | SYSTEM::SHIFT_LEFT(2011 - A_1, 26), A_0);
- wPtr(rPtr(A_0) | 0x80000000, A_0);
- }
- else
- {
- wPtr(rPtr(A_0) | SYSTEM::SHIFT_LEFT((A_1) - 2011, 26), A_0);
- wPtr(rPtr(A_0) - (rPtr(A_0) & 0x80000000), A_0);
- }
- }
- }
- }
- void sub_BAFF(var A_0, var A_1)
- {
- bool flag1 = A_1 < 0;
- if (!(flag1 | (A_1 > 11)))
- {
- wPtr(rPtr(A_0) - (rPtr(A_0) & 15), A_0);
- wPtr(rPtr(A_0) | A_1, A_0);
- }
- }
- void sub_BB32(var A_0, var A_1)
- {
- var num3 = sub_B88D(rPtr(A_0));
- var num4 = sub_B89A(rPtr(A_0));
- bool flag1 = A_1 < 1;
- if (!(flag1 | (A_1 > sub_BC34(num3, num4))))
- {
- wPtr(rPtr(A_0) - (rPtr(A_0) & 496), A_0);
- wPtr(rPtr(A_0) | SYSTEM::SHIFT_LEFT(A_1, 4), A_0);
- }
- }
- void sub_BB83(var A_0, var A_1)
- {
- bool flag1 = A_1 < 0;
- if (!(flag1 | (A_1 > 23)))
- {
- wPtr(rPtr(A_0) - (rPtr(A_0) & 15872), A_0);
- wPtr(rPtr(A_0) | SYSTEM::SHIFT_LEFT(A_1, 9), A_0);
- }
- }
- void sub_BBBD(var A_0, var A_1)
- {
- bool flag1 = A_1 < 0;
- if (!(flag1 | (A_1 >= 60)))
- {
- wPtr(rPtr(A_0) - (rPtr(A_0) & 0xFC000), A_0);
- wPtr(rPtr(A_0) | SYSTEM::SHIFT_LEFT(A_1, 14), A_0);
- }
- }
- void sub_BBF8(var A_0, var A_1)
- {
- bool flag1 = A_1 < 0;
- if (!(flag1 | (A_1 >= 60)))
- {
- wPtr(rPtr(A_0) - (rPtr(A_0) & 0x3F00000), A_0);
- wPtr(rPtr(A_0) | SYSTEM::SHIFT_LEFT(A_1, 20), A_0);
- }
- }
- var sub_BC34(var A_0, var A_1)
- {
- if (A_1 < 0)
- {
- A_1 = 0;
- }
- switch ((A_0))
- {
- case 0:
- case 2:
- case 4:
- case 6:
- case 7:
- case 9:
- case 11:
- return 31;
- case 3:
- case 5:
- case 8:
- case 10:
- return 30;
- case 1:
- if ((A_1 % 4) == 0)
- {
- if ((A_1 % 100) != 0)
- {
- return 29;
- }
- if ((A_1 % 400) == 0)
- {
- return 29;
- }
- }
- return 28;
- }
- return 30;
- }
- var sub_BCD6()
- {
- var num3;
- sub_BBF8(&num3, TIME::GET_CLOCK_SECONDS());
- sub_BBBD(&num3, TIME::GET_CLOCK_MINUTES());
- sub_BB83(&num3, TIME::GET_CLOCK_HOURS());
- sub_BB32(&num3, TIME::GET_CLOCK_DAY_OF_MONTH());
- sub_BAFF(&num3, TIME::GET_CLOCK_MONTH());
- sub_BA79(&num3, TIME::GET_CLOCK_YEAR());
- return num3;
- }
- void sub_BD1C(var A_0, var A_1)
- {
- UI::0xB245FC10(A_0);
- UI::0xB59B530D(0, 0, 1, A_1);
- }
- void sub_BD33()
- {
- sub_CBA7(1);
- sub_815D(1);
- UI::DISPLAY_RADAR(0);
- sub_C7CA();
- sub_C720(1, 1, 0, 0, 0);
- sub_C6E1(1, 2, 1, 1, 1);
- sub_C696("PROS_OPTS");
- sub_C640(30, "PROS_SELECT", -1);
- l_104 = 0;
- var num3 = sub_7293(0);
- var num4 = sub_7293(1);
- var num5 = sub_7293(2);
- if (sub_805E() >= num3)
- {
- sub_C429(l_104, "PROS_DOLLAR", 1, 1, 0, 0);
- sub_BEC6(num3, 0);
- setElem(0, l_104, &l_320, 4);
- l_104++;
- }
- bool flag1 = sub_805E() >= num4;
- if (flag1 & sub_BE56(l_130))
- {
- sub_C429(l_104, "PROS_DOLLAR", 1, 1, 0, 0);
- sub_BEC6(num4, 0);
- setElem(1, l_104, &l_320, 4);
- l_104++;
- }
- bool flag2 = sub_805E() >= num5;
- if (flag2 & sub_BE56(l_130))
- {
- sub_C429(l_104, "PROS_DOLLAR", 1, 1, 0, 0);
- sub_BEC6(num5, 0);
- setElem(2, l_104, &l_320, 4);
- l_104++;
- }
- sub_C429(l_104, "PROS_QUIT", 0, 1, 0, 0);
- l_103 = 0;
- sub_8188(l_103, 1, 1);
- sub_BE48();
- l_332 = 3;
- }
- void sub_BE48()
- {
- wPtr(1, (&g_13109) + 5);
- }
- var sub_BE56(var A_0)
- {
- if (VEHICLE::IS_VEHICLE_DRIVEABLE(A_0, 0) != 0)
- {
- var num3 = ENTITY::GET_ENTITY_MODEL(A_0);
- bool flag1 = num3 == 0x18F25AC7;
- bool flag2 = flag1 | (num3 == 0x9F4B77BE);
- bool flag3 = flag2 | (num3 == 0x82E499FA);
- bool flag4 = flag3 | (num3 == 0x5C23AF9B);
- bool flag5 = flag4 | (num3 == 0x9AE6DDA1);
- if (flag5 | (num3 == 0xB2FE5CF9))
- {
- return 0;
- }
- }
- return 1;
- }
- void sub_BEC6(var A_0, var A_1)
- {
- if ((((rPtr((&g_13241) + 3987) < 250) && (rPtr((&g_13241) + 4489) < 4)) && (rPtr((&g_13241) + 4490) == 1)) && (rPtr((&g_13241) + 4489) < rPtr((&g_13241) + 4487)))
- {
- setElem(A_0, rPtr((&g_13241) + 3987), (&g_13241) + 3068, 4);
- wPtr(rPtr((&g_13241) + 3987) + 1, (&g_13241) + 3987);
- setElem(2, rPtr((&g_13241) + 4489), getElemPtr(rPtr((&g_13241) + 4488), (&g_13241) + 1560, 20), 4);
- wPtr(rPtr((&g_13241) + 4489) + 1, (&g_13241) + 4489);
- if (rPtr((&g_13241) + 4489) >= rPtr((&g_13241) + 4487))
- {
- var num3 = sub_C0B2();
- var num1 = getElem(rPtr((&g_13241) + 3984), (&g_13241) + 3843, 4);
- if ((num1 & (rPtr((&g_13241) + 4489) == rPtr((&g_13241) + 4487))) != 0)
- {
- var num4;
- var num5;
- sub_B4C6(26, 1, 0, &num4, &num5);
- num3 += (num4 * 2f);
- }
- if (num3 > getElem(rPtr((&g_13241) + 3984) - 1, (&g_13241) + 3836, 4))
- {
- setElem(num3, rPtr((&g_13241) + 3984) - 1, (&g_13241) + 3836, 4);
- }
- }
- if ((A_1 != null) && (rPtr((&g_13241) + 4489) >= rPtr((&g_13241) + 4487)))
- {
- var num6 = sub_C000();
- if (num6 > getElem(rPtr((&g_13241) + 3983), (&g_13241) + 4491, 4))
- {
- setElem(num6, rPtr((&g_13241) + 3983), (&g_13241) + 4491, 4);
- }
- }
- }
- }
- var sub_C000()
- {
- var num4;
- var num5;
- var num3 = 0;
- while (true)
- {
- if (num3 >= rPtr((&g_13241) + 4489))
- {
- break;
- }
- if (getElem(num3, getElemPtr(rPtr((&g_13241) + 4488), (&g_13241) + 1560, 20), 4) == 4)
- {
- num4++;
- }
- num3++;
- }
- num3 = 0;
- while (true)
- {
- var num6;
- var num7;
- if (num3 >= num4)
- {
- break;
- }
- if (((getElem((rPtr((&g_13241) + 3989) - num4) + num3, (&g_13241) + 3571, 4) != 0) && (sub_B4C6(getElem((rPtr((&g_13241) + 3989) - num4) + num3, (&g_13241) + 3571, 4), 1, 0, &num6, &num7) != 0)) && (num7 > num5))
- {
- num5 = num7;
- }
- num3++;
- }
- if (num5 > UI::0x3330175B(0.35f, 0))
- {
- return num5;
- }
- return UI::0x3330175B(0.35f, 0);
- }
- var sub_C0B2()
- {
- var num3;
- var num6;
- var num7;
- var num8;
- var num9;
- var num10 = 0;
- while (true)
- {
- if (num10 >= rPtr((&g_13241) + 4489))
- {
- break;
- }
- if (getElem(num10, getElemPtr(rPtr((&g_13241) + 4488), (&g_13241) + 1560, 20), 4) != 1)
- {
- if (getElem(num10, getElemPtr(rPtr((&g_13241) + 4488), (&g_13241) + 1560, 20), 4) == 2)
- {
- num6++;
- }
- else if (getElem(num10, getElemPtr(rPtr((&g_13241) + 4488), (&g_13241) + 1560, 20), 4) == 3)
- {
- num7++;
- }
- else if (getElem(num10, getElemPtr(rPtr((&g_13241) + 4488), (&g_13241) + 1560, 20), 4) == 4)
- {
- num8++;
- }
- else if (getElem(num10, getElemPtr(rPtr((&g_13241) + 4488), (&g_13241) + 1560, 20), 4) == 5)
- {
- num9++;
- }
- else if (getElem(num10, getElemPtr(rPtr((&g_13241) + 4488), (&g_13241) + 1560, 20), 4) == 6)
- {
- num9++;
- }
- else if (getElem(num10, getElemPtr(rPtr((&g_13241) + 4488), (&g_13241) + 1560, 20), 4) == 7)
- {
- num9++;
- }
- }
- num10++;
- }
- sub_A65C(0, 1, 0, 0, 0, (num9 > 0));
- if (GAMEPLAY::GET_HASH_KEY(getElemPtr(rPtr((&g_13241) + 4488), (&g_13241) + 57, 16)) != 0)
- {
- UI::0x51E7A037(getElemPtr(rPtr((&g_13241) + 4488), (&g_13241) + 57, 16));
- }
- num10 = 0;
- while (true)
- {
- if (num10 >= rPtr((&g_13241) + 4489))
- {
- break;
- }
- if (getElem(num10, getElemPtr(rPtr((&g_13241) + 4488), (&g_13241) + 1560, 20), 4) == 1)
- {
- var num11;
- num11++;
- if (GAMEPLAY::GET_HASH_KEY(getElemPtr(rPtr((&g_13241) + 4488), (&g_13241) + 57, 16)) != 0)
- {
- UI::0xDCE05406(getElemPtr(rPtr((&g_13241) + 4488) + num11, (&g_13241) + 57, 16));
- }
- }
- else if (getElem(num10, getElemPtr(rPtr((&g_13241) + 4488), (&g_13241) + 1560, 20), 4) == 2)
- {
- var num12;
- if (GAMEPLAY::GET_HASH_KEY(getElemPtr(rPtr((&g_13241) + 4488), (&g_13241) + 57, 16)) != 0)
- {
- UI::ADD_TEXT_COMPONENT_INTEGER(getElem((rPtr((&g_13241) + 3987) - num6) + num12, (&g_13241) + 3068, 4));
- }
- num12++;
- }
- else if (getElem(num10, getElemPtr(rPtr((&g_13241) + 4488), (&g_13241) + 1560, 20), 4) == 3)
- {
- var num13;
- if (GAMEPLAY::GET_HASH_KEY(getElemPtr(rPtr((&g_13241) + 4488), (&g_13241) + 57, 16)) != 0)
- {
- UI::ADD_TEXT_COMPONENT_FLOAT(getElem((rPtr((&g_13241) + 3988) - num7) + num13, (&g_13241) + 3319, 4), getElem((rPtr((&g_13241) + 3988) - num7) + num13, (&g_13241) + 3445, 4));
- }
- num13++;
- }
- else
- {
- var num14;
- if (getElem(num10, getElemPtr(rPtr((&g_13241) + 4488), (&g_13241) + 1560, 20), 4) == 5)
- {
- if (GAMEPLAY::GET_HASH_KEY(getElemPtr(rPtr((&g_13241) + 4488), (&g_13241) + 57, 16)) != 0)
- {
- UI::0x27A244D8(getElemPtr((rPtr((&g_13241) + 3986) - num9) + num14, &g_2398722, 64));
- }
- num14++;
- }
- else if (getElem(num10, getElemPtr(rPtr((&g_13241) + 4488), (&g_13241) + 1560, 20), 4) == 6)
- {
- if (GAMEPLAY::GET_HASH_KEY(getElemPtr(rPtr((&g_13241) + 4488), (&g_13241) + 57, 16)) != 0)
- {
- UI::0xDCE05406(getElemPtr((rPtr((&g_13241) + 3986) - num9) + num14, &g_2398722, 64));
- }
- num14++;
- }
- else if (getElem(num10, getElemPtr(rPtr((&g_13241) + 4488), (&g_13241) + 1560, 20), 4) == 7)
- {
- if (GAMEPLAY::GET_HASH_KEY(getElemPtr(rPtr((&g_13241) + 4488), (&g_13241) + 57, 16)) != 0)
- {
- UI::0x27A244D8(getElemPtr((rPtr((&g_13241) + 3986) - num9) + num14, &g_2398722, 64));
- }
- num14++;
- }
- }
- num10++;
- }
- if (GAMEPLAY::GET_HASH_KEY(getElemPtr(rPtr((&g_13241) + 4488), (&g_13241) + 57, 16)) != 0)
- {
- num3 = UI::0xD12A643A(1);
- }
- for (num10 = 0; num10 < num8; num10++)
- {
- if (getElem((rPtr((&g_13241) + 3989) - num8) + num10, (&g_13241) + 3571, 4) != 0)
- {
- var num4;
- var num5;
- sub_B4C6(getElem((rPtr((&g_13241) + 3989) - num8) + num10, (&g_13241) + 3571, 4), 1, 0, &num4, &num5);
- num3 += num4;
- }
- }
- return num3;
- }
- void sub_C429(var A_0, var A_1, var A_2, var A_3, var A_4, var A_5)
- {
- bool flag1;
- if (rPtr((&g_13241) + 3983) > A_0)
- {
- return;
- }
- if (rPtr((&g_13241) + 3983) >= 125)
- {
- return;
- }
- if (rPtr((&g_13241) + 3985) >= 250)
- {
- return;
- }
- if (rPtr((&g_13241) + 4489) < rPtr((&g_13241) + 4487))
- {
- return;
- }
- if (rPtr((&g_13241) + 3983) != A_0)
- {
- wPtr(A_0, (&g_13241) + 3983);
- wPtr(0, (&g_13241) + 3984);
- }
- var num3 = getElem(rPtr((&g_13241) + 3984), (&g_13241) + 3824, 4);
- if (num3 == 1)
- {
- goto Label_0187;
- }
- Label_00EF:
- flag1 = rPtr((&g_13241) + 3984) < 4;
- if (flag1 & (num3 != 1))
- {
- wPtr(rPtr((&g_13241) + 3984) + 1, (&g_13241) + 3984);
- num3 = getElem(rPtr((&g_13241) + 3984), (&g_13241) + 3824, 4);
- goto Label_00EF;
- }
- if (num3 != 1)
- {
- return;
- }
- Label_0187:
- strcpy(A_1, getElemPtr(rPtr((&g_13241) + 3985), (&g_13241) + 57, 16), 16);
- setElem(A_3, rPtr((&g_13241) + 3985), (&g_13241) + 1058, 4);
- setElem(A_4, rPtr((&g_13241) + 3985), (&g_13241) + 1309, 4);
- wPtr(rPtr((&g_13241) + 3985) + 1, (&g_13241) + 3985);
- if (A_2 == 0)
- {
- var num4 = sub_C604(A_1);
- if (getElem(rPtr((&g_13241) + 3984), (&g_13241) + 3843, 4) != 0)
- {
- var num5;
- var num6;
- sub_B4C6(26, 1, 0, &num5, &num6);
- num4 += (num5 * 2f);
- }
- if (num4 > getElem(rPtr((&g_13241) + 3984), (&g_13241) + 3836, 4))
- {
- setElem(num4, rPtr((&g_13241) + 3984), (&g_13241) + 3836, 4);
- }
- }
- if ((A_5 != null) && (A_2 == 0))
- {
- var num7 = sub_C5E8(A_1);
- if (num7 > getElem(A_0, (&g_13241) + 4491, 4))
- {
- setElem(num7, A_0, (&g_13241) + 4491, 4);
- }
- }
- GAMEPLAY::SET_BIT(getElemPtr(A_0, (&g_13241) + 3857, 4), rPtr((&g_13241) + 3984));
- wPtr(rPtr((&g_13241) + 3984) + 1, (&g_13241) + 3984);
- wPtr(1, (&g_13241) + 4490);
- wPtr(rPtr((&g_13241) + 3985) - 1, (&g_13241) + 4488);
- wPtr(0, (&g_13241) + 4489);
- wPtr(A_2, (&g_13241) + 4487);
- }
- var sub_C5E8(var A_0)
- {
- if (UI::DOES_TEXT_LABEL_EXIST(A_0) == 0)
- {
- }
- return UI::0x3330175B(0.35f, 0);
- }
- var sub_C604(var A_0)
- {
- if (GAMEPLAY::IS_STRING_NULL(A_0) == 0)
- {
- if (GAMEPLAY::GET_HASH_KEY(A_0) == 0)
- {
- return 0f;
- }
- }
- else
- {
- return 0f;
- }
- sub_A65C(0, 1, 0, 0, 0, 0);
- UI::0x51E7A037(A_0);
- return UI::0xD12A643A(1);
- }
- void sub_C640(var A_0, var A_1, var A_2)
- {
- if (rPtr((&g_13241) + 3744) < 12)
- {
- setElem(A_0, rPtr((&g_13241) + 3744), (&g_13241) + 3746, 4);
- strcpy(A_1, getElemPtr(rPtr((&g_13241) + 3744), (&g_13241) + 3759, 16), 16);
- setElem(A_2, rPtr((&g_13241) + 3744), (&g_13241) + 3808, 4);
- wPtr(rPtr((&g_13241) + 3744) + 1, (&g_13241) + 3744);
- }
- }
- void sub_C696(var A_0)
- {
- strcpy(A_0, (&g_13241) + 1, 16);
- wPtr(0, (&g_13241) + 52);
- wPtr(0, (&g_13241) + 53);
- wPtr(0, (&g_13241) + 54);
- wPtr(0, (&g_13241) + 55);
- wPtr(0, (&g_13241) + 56);
- var num3 = 0;
- while (true)
- {
- if (num3 >= 4)
- {
- break;
- }
- setElem(0, num3, (&g_13241) + 5, 4);
- num3++;
- }
- }
- void sub_C6E1(var A_0, var A_1, var A_2, var A_3, var A_4)
- {
- setElem(A_0, 0, (&g_13241) + 3851, 4);
- setElem(A_1, 1, (&g_13241) + 3851, 4);
- setElem(A_2, 2, (&g_13241) + 3851, 4);
- setElem(A_3, 3, (&g_13241) + 3851, 4);
- setElem(A_4, 4, (&g_13241) + 3851, 4);
- }
- void sub_C720(var A_0, var A_1, var A_2, var A_3, var A_4)
- {
- setElem(A_0, 0, (&g_13241) + 3824, 4);
- setElem(A_1, 1, (&g_13241) + 3824, 4);
- setElem(A_2, 2, (&g_13241) + 3824, 4);
- setElem(A_3, 3, (&g_13241) + 3824, 4);
- setElem(A_4, 4, (&g_13241) + 3824, 4);
- wPtr(0, (&g_13241) + 3991);
- if (A_0 != 0)
- {
- wPtr(rPtr((&g_13241) + 3991) + 1, (&g_13241) + 3991);
- }
- if (A_1 != 0)
- {
- wPtr(rPtr((&g_13241) + 3991) + 1, (&g_13241) + 3991);
- }
- if (A_2 != 0)
- {
- wPtr(rPtr((&g_13241) + 3991) + 1, (&g_13241) + 3991);
- }
- if (A_3 != 0)
- {
- wPtr(rPtr((&g_13241) + 3991) + 1, (&g_13241) + 3991);
- }
- if (A_4 != 0)
- {
- wPtr(rPtr((&g_13241) + 3991) + 1, (&g_13241) + 3991);
- }
- }
- void sub_C7CA()
- {
- var num3 = 0;
- while (true)
- {
- if (num3 >= 250)
- {
- num3 = 0;
- while (num3 < 32)
- {
- strcpy("", getElemPtr(num3, &g_2398722, 64), 64);
- num3++;
- }
- break;
- }
- strcpy("", getElemPtr(num3, (&g_13241) + 57, 16), 16);
- var num4 = 0;
- while (true)
- {
- if (num4 >= 4)
- {
- break;
- }
- setElem(0, num4, getElemPtr(num3, (&g_13241) + 1560, 20), 4);
- num4++;
- }
- num3++;
- }
- num3 = 0;
- while (true)
- {
- if (num3 >= 250)
- {
- break;
- }
- setElem(0, num3, (&g_13241) + 3068, 4);
- num3++;
- }
- num3 = 0;
- while (true)
- {
- if (num3 >= 125)
- {
- break;
- }
- setElem(0f, num3, (&g_13241) + 3319, 4);
- num3++;
- }
- num3 = 0;
- while (true)
- {
- if (num3 >= 125)
- {
- break;
- }
- setElem(0, num3, (&g_13241) + 3571, 4);
- num3++;
- }
- num3 = 0;
- while (true)
- {
- if (num3 >= 125)
- {
- break;
- }
- setElem(0, num3, (&g_13241) + 3857, 4);
- setElem(0, num3, (&g_13241) + 3992, 4);
- setElem(0, num3, (&g_13241) + 4118, 4);
- setElem(0f, num3, (&g_13241) + 4622, 4);
- setElem(0, num3, (&g_13241) + 4244, 4);
- setElem(0f, num3, (&g_13241) + 4491, 4);
- num3++;
- }
- num3 = 0;
- while (true)
- {
- if (num3 >= 5)
- {
- break;
- }
- setElem(0, num3, (&g_13241) + 3824, 4);
- setElem(0f, num3, (&g_13241) + 3836, 4);
- setElem(-1f, num3, (&g_13241) + 3830, 4);
- setElem(0, num3, (&g_13241) + 3843, 4);
- setElem(1, num3, (&g_13241) + 3851, 4);
- num3++;
- }
- num3 = 0;
- while (true)
- {
- if (num3 >= 12)
- {
- break;
- }
- strcpy("", getElemPtr(num3, (&g_13241) + 3759, 16), 16);
- setElem(-1, num3, (&g_13241) + 3808, 4);
- num3++;
- }
- num3 = 0;
- while (true)
- {
- if (num3 >= 34)
- {
- break;
- }
- strcpy("", getElemPtr(num3, (&g_13241) + 4754, 64), 64);
- strcpy("", getElemPtr(num3, (&g_13241) + 5299, 64), 64);
- num3++;
- }
- num3 = 0;
- while (true)
- {
- if (num3 >= 12)
- {
- break;
- }
- strcpy("", getElemPtr(num3, &g_2455136, 64), 64);
- strcpy("", getElemPtr(num3, (&g_2455136) + 545, 64), 64);
- num3++;
- }
- g_13241 = 0;
- wPtr(0, (&g_13241) + 3983);
- wPtr(0, (&g_13241) + 3984);
- wPtr(0, (&g_13241) + 3985);
- wPtr(0, (&g_13241) + 3987);
- wPtr(0, (&g_13241) + 3988);
- wPtr(0, (&g_13241) + 3989);
- wPtr(0, (&g_13241) + 3986);
- wPtr(0, (&g_13241) + 4617);
- wPtr(0, (&g_13241) + 4485);
- wPtr(0, (&g_13241) + 4484);
- wPtr(0, (&g_13241) + 4486);
- strcpy("", (&g_13241) + 3697, 16);
- wPtr(0, (&g_13241) + 3737);
- wPtr(0, (&g_13241) + 3738);
- wPtr(0, (&g_13241) + 3739);
- wPtr(0, (&g_13241) + 3740);
- wPtr(0, (&g_13241) + 3741);
- wPtr(0, (&g_13241) + 3742);
- num3 = 0;
- while (true)
- {
- if (num3 >= 4)
- {
- break;
- }
- setElem(0, num3, (&g_13241) + 3701, 4);
- num3++;
- }
- wPtr(0, (&g_13241) + 3743);
- strcpy("", (&g_13241) + 1, 16);
- wPtr(0f, (&g_13241) + 3842);
- wPtr(0, (&g_13241) + 52);
- wPtr(0, (&g_13241) + 53);
- wPtr(0, (&g_13241) + 54);
- wPtr(0, (&g_13241) + 55);
- wPtr(0, (&g_13241) + 56);
- num3 = 0;
- while (true)
- {
- if (num3 >= 4)
- {
- break;
- }
- setElem(0, num3, (&g_13241) + 5, 4);
- num3++;
- }
- wPtr(0, (&g_13241) + 4490);
- wPtr(0, (&g_13241) + 4489);
- wPtr(0, (&g_13241) + 4487);
- wPtr(0, (&g_13241) + 4488);
- wPtr(0, (&g_13241) + 3744);
- wPtr(0, (&g_13241) + 3745);
- wPtr(10, (&g_13241) + 3990);
- wPtr(0, (&g_13241) + 3991);
- wPtr(0f, (&g_13241) + 4619);
- wPtr(0f, (&g_13241) + 4620);
- wPtr(0, (&g_13241) + 4477);
- wPtr(0, (&g_13241) + 4478);
- wPtr(0f, (&g_13241) + 4479);
- wPtr(0, (&g_13241) + 4480);
- wPtr(0, (&g_13241) + 4482);
- wPtr(0, (&g_13241) + 4481);
- wPtr(0, (&g_13241) + 4483);
- wPtr(0, (&g_13241) + 6209);
- num3 = 0;
- while (true)
- {
- if (num3 >= 2)
- {
- break;
- }
- setElem(-1, num3, (&g_13241) + 4748, 4);
- setElem(-1, num3, (&g_13241) + 4751, 4);
- num3++;
- }
- wPtr(0f, (&g_13241) + 3849);
- wPtr(0, (&g_13241) + 3850);
- wPtr(0, (&g_13241) + 6188);
- wPtr(0, (&g_13241) + 6193);
- wPtr(0, (&g_13241) + 6198);
- wPtr(0, (&g_13241) + 6203);
- wPtr(0, (&g_13241) + 6205);
- wPtr(0, (&g_13241) + 6211);
- g_13239 = 0.05f;
- g_13240 = 0.05f;
- }
- void sub_CBA7(var A_0)
- {
- if (A_0 == 0)
- {
- g_85576 = GAMEPLAY::GET_GAME_TIMER() + 250;
- }
- g_85573 = A_0;
- }
- var sub_CBC5(var A_0)
- {
- return (sub_805E() >= sub_7293(A_0));
- }
- var sub_CBD8(var A_0, var A_1)
- {
- if (STREAMING::HAS_ANIM_DICT_LOADED(l_96) != 0)
- {
- bool flag1 = ENTITY::IS_ENTITY_PLAYING_ANIM(A_0, l_96, sub_344E(A_1), 3) == 0;
- if (flag1 & (AI::GET_SCRIPT_TASK_STATUS(A_0, 0x87B9A382) != 1))
- {
- if (sub_10B44() != 0)
- {
- if (A_0 == PLAYER::PLAYER_PED_ID())
- {
- if (sub_63EE(PLAYER::PLAYER_ID()) == 0)
- {
- var num3 = PED::GET_PED_DRAWABLE_VARIATION(PLAYER::PLAYER_PED_ID(), 6);
- switch (num3)
- {
- case 0:
- case 6:
- case 7:
- case 8:
- case 12:
- case 14:
- sub_60D9(256);
- break;
- }
- if (sub_101A1(256) != 0)
- {
- l_119 = num3;
- l_120 = PED::GET_PED_TEXTURE_VARIATION(PLAYER::PLAYER_PED_ID(), 6);
- PED::SET_PED_COMPONENT_VARIATION(PLAYER::PLAYER_PED_ID(), 6, 1, 0, 0);
- }
- }
- AI::TASK_PLAY_ANIM(A_0, l_96, sub_CD48(A_1), 2f, -8f, -1, 0, 0, 0, 0, 0);
- }
- else
- {
- AI::TASK_PLAY_ANIM(A_0, l_96, sub_CD48(A_1), 2f, -8f, -1, 0, 0, 0, 0, 0);
- }
- }
- else
- {
- AI::TASK_PLAY_ANIM(A_0, l_96, sub_CD48(A_1), 2f, -8f, -1, 0, 0, 0, 0, 0);
- }
- }
- else
- {
- if ((ENTITY::IS_ENTITY_PLAYING_ANIM(A_0, l_96, sub_CD48(A_1), 3) != 0) && (ENTITY::GET_ENTITY_ANIM_CURRENT_TIME(A_0, l_96, sub_CD48(A_1)) >= 0.95f))
- {
- AI::TASK_PLAY_ANIM(A_0, l_96, sub_344E(A_1), 8f, -2f, -1, 1, 0, 0, 0, 0);
- }
- if (ENTITY::IS_ENTITY_PLAYING_ANIM(A_0, l_96, sub_344E(A_1), 3) != 0)
- {
- return 1;
- }
- }
- }
- return 0;
- }
- var sub_CD48(var A_0)
- {
- if (sub_F6B7(l_85, 32768) == 0)
- {
- if (A_0 != null)
- {
- return sub_132F(0);
- }
- return sub_132F(1);
- }
- if (A_0 != null)
- {
- return sub_14ED(0);
- }
- return sub_14ED(1);
- }
- void sub_CD8E(var A_0)
- {
- wPtr(-15, A_0);
- }
- var sub_CD9C(var A_0)
- {
- if (A_0 == -15)
- {
- return 0;
- }
- var num3 = sub_B842(A_0);
- bool flag1 = num3 < 0;
- if (flag1 | (num3 >= 60))
- {
- return 0;
- }
- var num4 = sub_B855(A_0);
- bool flag2 = num4 < 0;
- if (flag2 | (num4 >= 60))
- {
- return 0;
- }
- var num5 = sub_B868(A_0);
- bool flag3 = num5 < 0;
- if (flag3 | (num5 > 23))
- {
- return 0;
- }
- var num6 = sub_B89A(A_0);
- bool flag4 = num6 <= 0;
- bool flag5 = flag4 | (num6 > 2043);
- if (flag5 | (num6 < 1979))
- {
- return 0;
- }
- var num7 = sub_B88D(A_0);
- bool flag6 = num7 < 0;
- if (flag6 | (num7 > 11))
- {
- return 0;
- }
- var num8 = sub_B87B(A_0);
- bool flag7 = num8 < 1;
- if (flag7 | (num8 > sub_BC34(num7, num6)))
- {
- return 0;
- }
- return 1;
- }
- void sub_CE78()
- {
- if (PED::IS_PED_INJURED(l_127) == 0)
- {
- AUDIO::STOP_CURRENT_PLAYING_AMBIENT_SPEECH(l_127);
- if (AUDIO::IS_ANY_SPEECH_PLAYING(l_127) == 0)
- {
- if (l_105 < 1)
- {
- AUDIO::0x5C57B85D(l_127, "HOOKER_OFFER_SERVICE", "SPEECH_PARAMS_FORCE_SHOUTED_CLEAR");
- }
- else
- {
- AUDIO::0x5C57B85D(l_127, "HOOKER_OFFER_AGAIN", "SPEECH_PARAMS_FORCE_SHOUTED_CLEAR");
- }
- }
- }
- }
- var sub_CEC1()
- {
- var num1 = sub_CEE5(0, -1);
- if ((num1 & AUDIO::REQUEST_SCRIPT_AUDIO_BANK("SCRIPTHUD_321_GO", 1)) != 0)
- {
- return 1;
- }
- return 0;
- }
- var sub_CEE5(var A_0, var A_1)
- {
- var num3;
- if (sub_B611(&num3, 1, A_1) == 0)
- {
- return 0;
- }
- var num4 = 1;
- strcpy(A_0, getElemPtr(num3, (&g_13241) + 4384, 16), 16);
- if (GAMEPLAY::IS_STRING_NULL_OR_EMPTY(getElemPtr(num3, (&g_13241) + 4384, 16)) == 0)
- {
- UI::REQUEST_ADDITIONAL_TEXT(getElemPtr(num3, (&g_13241) + 4384, 16), 9);
- setElem(1, num3, (&g_13241) + 4377, 4);
- if (UI::HAS_THIS_ADDITIONAL_TEXT_LOADED(getElemPtr(num3, (&g_13241) + 4384, 16), 9) == 0)
- {
- num4 = 0;
- }
- }
- GRAPHICS::REQUEST_STREAMED_TEXTURE_DICT("CommonMenu", 0);
- setElem(1, num3, (&g_13241) + 4370, 4);
- if (GRAPHICS::HAS_STREAMED_TEXTURE_DICT_LOADED("CommonMenu") == 0)
- {
- num4 = 0;
- }
- var num5 = 0;
- strcpy("instructional_buttons", getElemPtr(num3, (&g_13241) + 4409, 40) + 4, 24);
- num5 = sub_CFB3(getElemPtr(num3, (&g_13241) + 4409, 40));
- bool flag1 = num4 == 0;
- if (flag1 | (num5 == 0))
- {
- }
- return (num4 & num5);
- }
- var sub_CFB3(var A_0)
- {
- switch (rPtr((A_0) + 36))
- {
- case 0:
- if (GRAPHICS::HAS_SCALEFORM_MOVIE_LOADED(rPtr(A_0)) != 0)
- {
- wPtr(GAMEPLAY::GET_GAME_TIMER(), (A_0) + 32);
- wPtr(2, (A_0) + 36);
- break;
- }
- wPtr(GRAPHICS::REQUEST_SCALEFORM_MOVIE((A_0) + 4), A_0);
- wPtr(1, (A_0) + 36);
- if ((rPtr((A_0) + 28) != 0) && (GRAPHICS::HAS_SCALEFORM_MOVIE_LOADED(rPtr(A_0)) != 0))
- {
- wPtr(GAMEPLAY::GET_GAME_TIMER(), (A_0) + 32);
- wPtr(2, (A_0) + 36);
- }
- break;
- case 1:
- if (GRAPHICS::HAS_SCALEFORM_MOVIE_LOADED(rPtr(A_0)) != 0)
- {
- wPtr(GAMEPLAY::GET_GAME_TIMER(), (A_0) + 32);
- wPtr(2, (A_0) + 36);
- }
- break;
- case 2:
- if (GRAPHICS::HAS_SCALEFORM_MOVIE_LOADED(rPtr(A_0)) == 0)
- {
- wPtr(0, (A_0) + 36);
- }
- break;
- }
- return (rPtr((A_0) + 36) == 2);
- }
- void sub_D055()
- {
- if ((sub_10B44() != 0) && (ENTITY::DOES_ENTITY_EXIST(l_127) != 0))
- {
- l_93 = ENTITY::GET_ENTITY_HEALTH(l_127);
- }
- }
- void sub_D079()
- {
- if ((sub_10B44() != 0) && ((ENTITY::DOES_ENTITY_EXIST(PLAYER::PLAYER_PED_ID()) != 0) && (PED::IS_PED_IN_ANY_VEHICLE(PLAYER::PLAYER_PED_ID(), 0) != 0)))
- {
- var num3 = PED::GET_VEHICLE_PED_IS_IN(PLAYER::PLAYER_PED_ID(), 0);
- if (ENTITY::DOES_ENTITY_EXIST(num3) != 0)
- {
- struct _s = ENTITY::GET_ENTITY_COORDS(num3, 1);
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, &l_89);
- }
- }
- }
- void sub_D0C2(var A_0, var A_1)
- {
- var num3;
- if (sub_B611(&num3, 0, A_1) != 0)
- {
- if (rPtr((&g_13241) + 6213) != 0)
- {
- UI::RESET_HUD_COMPONENT_VALUES(15);
- wPtr(0, (&g_13241) + 6213);
- }
- UI::0x1DA7E41A(0f);
- if (getElem(num3, (&g_13241) + 4377, 4) != 0)
- {
- UI::CLEAR_ADDITIONAL_TEXT(9, 0);
- setElem(0, num3, (&g_13241) + 4377, 4);
- }
- if (getElem(num3, (&g_13241) + 4370, 4) != 0)
- {
- GRAPHICS::SET_STREAMED_TEXTURE_DICT_AS_NO_LONGER_NEEDED("CommonMenu");
- setElem(0, num3, (&g_13241) + 4370, 4);
- }
- if (A_0 != null)
- {
- sub_D160(getElemPtr(num3, (&g_13241) + 4409, 40));
- setElem(0, num3, (&g_13241) + 4470, 4);
- }
- else
- {
- setElem(0, num3, (&g_13241) + 4470, 4);
- }
- }
- }
- void sub_D160(var A_0)
- {
- if (rPtr((A_0) + 36) != 0)
- {
- if (GRAPHICS::HAS_SCALEFORM_MOVIE_LOADED(rPtr(A_0)) != 0)
- {
- GRAPHICS::SET_SCALEFORM_MOVIE_AS_NO_LONGER_NEEDED(A_0);
- }
- wPtr(0, A_0);
- wPtr(0, (A_0) + 36);
- }
- }
- var sub_D189()
- {
- if (((PLAYER::GET_PLAYER_WANTED_LEVEL(PLAYER::PLAYER_ID()) == 0) && (PLAYER::IS_PLAYER_PLAYING(PLAYER::PLAYER_ID()) != 0)) && (PED::IS_PED_IN_ANY_VEHICLE(PLAYER::PLAYER_PED_ID(), 0) != 0))
- {
- l_130 = PED::GET_VEHICLE_PED_IS_IN(PLAYER::PLAYER_PED_ID(), 0);
- if (l_130 != 0)
- {
- var num1 = VEHICLE::IS_VEHICLE_DRIVEABLE(l_130, 0);
- var num6 = num1 & (FIRE::IS_ENTITY_ON_FIRE(l_130) == 0);
- if (((num6 & (ENTITY::IS_ENTITY_UPSIDEDOWN(l_130) == 0)) != 0) && (sub_2A44(&l_130) != 0))
- {
- sub_5B4(&l_85, 1);
- return 1;
- }
- }
- }
- return 0;
- }
- void sub_D1FE()
- {
- if (l_105 == 0)
- {
- bool flag1 = sub_F6B7(l_87, 1) == 0;
- if ((flag1 & (sub_F6B7(l_87, 16) == 0)) && (sub_D286(0) != 0))
- {
- sub_F4AD(&l_87, 1);
- }
- bool flag2 = sub_F6B7(l_87, 4) == 0;
- if ((flag2 & (sub_F6B7(l_87, 64) == 0)) && (sub_D286(2) != 0))
- {
- sub_F4AD(&l_87, 4);
- }
- bool flag3 = sub_F6B7(l_87, 8) == 0;
- if ((flag3 & (sub_F6B7(l_87, 128) == 0)) && (sub_D286(1) != 0))
- {
- sub_F4AD(&l_87, 8);
- }
- }
- }
- var sub_D286(var A_0)
- {
- var num3;
- var num6;
- struct _s = sub_58CB(A_0);
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, &num3);
- struct _s = ENTITY::GET_ENTITY_COORDS(l_130, 1);
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, &num6);
- if (getElem(A_0, &l_339, 4) == 0)
- {
- struct _s = &num3;
- struct _s = &num6;
- setElem(WORLDPROBE::0x4559460A(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 0.25f, 511, l_130, 3), A_0, &l_339, 4);
- }
- else
- {
- var num9;
- var num10;
- var num13;
- var num16;
- var num2 = WORLDPROBE::0xF3C2875A(getElem(A_0, &l_339, 4), &num9, &num10, &num13, &num16);
- if (num2 == 2)
- {
- setElem(0, A_0, &l_339, 4);
- if (num9 != 0)
- {
- sub_D32A(A_0);
- return 0;
- }
- return 1;
- }
- if ((num2 != 1) && (num2 == 0))
- {
- setElem(0, A_0, &l_339, 4);
- }
- }
- return 0;
- }
- void sub_D32A(var A_0)
- {
- switch (A_0)
- {
- case 0:
- if (sub_F6B7(l_87, 16) == 0)
- {
- sub_F4AD(&l_87, 16);
- sub_5B4(&l_87, 1);
- }
- break;
- case 1:
- if (sub_F6B7(l_87, 128) == 0)
- {
- sub_F4AD(&l_87, 128);
- sub_5B4(&l_87, 8);
- }
- break;
- case 2:
- if (sub_F6B7(l_87, 64) == 0)
- {
- sub_F4AD(&l_87, 64);
- sub_5B4(&l_87, 4);
- }
- break;
- case 3:
- if (sub_F6B7(l_87, 32) == 0)
- {
- sub_F4AD(&l_87, 32);
- sub_5B4(&l_87, 2);
- }
- break;
- }
- }
- void sub_D3CA()
- {
- var num1 = sub_D6BC();
- if ((num1 & (PED::IS_PED_IN_ANY_VEHICLE(PLAYER::PLAYER_PED_ID(), 1) == 0)) != 0)
- {
- l_326 = 9;
- sub_D5E6(l_127);
- sub_D5E6(PLAYER::PLAYER_PED_ID());
- sub_D405();
- sub_E7E(&l_135);
- }
- }
- void sub_D405()
- {
- var num3;
- var num10;
- if (CAM::DOES_CAM_EXIST(l_133) == 0)
- {
- l_133 = CAM::CREATE_CAM("DEFAULT_SCRIPTED_CAMERA", 1);
- }
- if (CAM::DOES_CAM_EXIST(l_134) == 0)
- {
- l_134 = CAM::CREATE_CAM("DEFAULT_SCRIPTED_CAMERA", 1);
- }
- sub_D49A(&num3, &num10);
- struct _s = &num3;
- CAM::SET_CAM_COORD(l_133, rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8));
- struct _s = (&num3) + 3;
- CAM::SET_CAM_ROT(l_133, rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 2);
- CAM::SET_CAM_FOV(l_133, rPtr((&num3) + 6));
- struct _s = &num10;
- CAM::SET_CAM_COORD(l_134, rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8));
- struct _s = (&num10) + 3;
- CAM::SET_CAM_ROT(l_134, rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 2);
- CAM::SET_CAM_FOV(l_134, rPtr((&num10) + 6));
- CAM::SET_CAM_ACTIVE(l_133, 1);
- CAM::SET_CAM_ACTIVE(l_134, 0);
- CAM::RENDER_SCRIPT_CAMS(1, 0, 3000, 1, 0);
- }
- void sub_D49A(var A_0, var A_1)
- {
- if (PED::IS_PED_MODEL(PLAYER::PLAYER_PED_ID(), sub_C5C(2)) != 0)
- {
- setStruct(1972.248f, 3804.805f, 36.7174f, 3, A_0);
- setStruct(-19.6476f, 0f, -45.6158f, 3, (A_0) + 12);
- wPtr(50f, (A_0) + 24);
- setStruct(1970.194f, 3807.541f, 35.5247f, 3, A_1);
- setStruct(-15.8717f, 0f, 41.6556f, 3, (A_1) + 12);
- wPtr(50f, (A_1) + 24);
- }
- else if (PED::IS_PED_MODEL(PLAYER::PLAYER_PED_ID(), sub_C5C(0)) != 0)
- {
- setStruct(-823.9435f, 186.8976f, 75.5221f, 3, A_0);
- setStruct(-18.973f, 0f, -179.5878f, 3, (A_0) + 12);
- wPtr(50f, (A_0) + 24);
- setStruct(-828.0038f, 179.5113f, 75.7418f, 3, A_1);
- setStruct(14.0219f, 0f, -107.3339f, 3, (A_1) + 12);
- wPtr(50f, (A_1) + 24);
- }
- else if (PED::IS_PED_MODEL(PLAYER::PLAYER_PED_ID(), sub_C5C(1)) != 0)
- {
- setStruct(-20.162f, -1443.916f, 31.9468f, 3, A_0);
- setStruct(-12.0736f, 0f, -130.562f, 3, (A_0) + 12);
- wPtr(50f, (A_0) + 24);
- setStruct(-15.925f, -1446.92f, 31.9534f, 3, A_1);
- setStruct(-10.3101f, 0f, 34.3879f, 3, (A_1) + 12);
- wPtr(50f, (A_1) + 24);
- }
- }
- void sub_D5E6(var A_0)
- {
- if (PED::IS_PED_INJURED(A_0) == 0)
- {
- var num3;
- AI::CLEAR_SEQUENCE_TASK(&num3);
- AI::OPEN_SEQUENCE_TASK(&num3);
- if (PED::IS_PED_IN_ANY_VEHICLE(A_0, 0) != 0)
- {
- AI::TASK_LEAVE_ANY_VEHICLE(0, 0, 0x1000000);
- }
- struct _s = sub_D645();
- AI::TASK_FOLLOW_NAV_MESH_TO_COORD(0, rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 1f, -1, 0.5f, 8192, 0x471C4000);
- AI::CLOSE_SEQUENCE_TASK(num3);
- AI::TASK_PERFORM_SEQUENCE(A_0, num3);
- AI::CLEAR_SEQUENCE_TASK(&num3);
- }
- }
- var sub_D645()
- {
- if (PED::IS_PED_MODEL(PLAYER::PLAYER_PED_ID(), sub_C5C(2)) != 0)
- {
- return buildStruct(1972.16f, 3817.47f, 32.43f);
- }
- if (PED::IS_PED_MODEL(PLAYER::PLAYER_PED_ID(), sub_C5C(0)) != 0)
- {
- return buildStruct(-819.88f, 177.47f, 70.63f);
- }
- if (PED::IS_PED_MODEL(PLAYER::PLAYER_PED_ID(), sub_C5C(1)) != 0)
- {
- return buildStruct(-14.57f, -1437.56f, 30.12f);
- }
- return buildStruct(0f, 0f, 0f);
- }
- var sub_D6BC()
- {
- struct _s = ENTITY::GET_ENTITY_COORDS(PLAYER::PLAYER_PED_ID(), 1);
- struct _s = sub_D736();
- return (SYSTEM::VDIST2(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8)) < (sub_D6DF() * sub_D6DF()));
- }
- var sub_D6DF()
- {
- if (PED::IS_PED_MODEL(PLAYER::PLAYER_PED_ID(), sub_C5C(2)) != 0)
- {
- return 14f;
- }
- if (PED::IS_PED_MODEL(PLAYER::PLAYER_PED_ID(), sub_C5C(0)) != 0)
- {
- return 20.75f;
- }
- if (PED::IS_PED_MODEL(PLAYER::PLAYER_PED_ID(), sub_C5C(1)) != 0)
- {
- return 10f;
- }
- return 0f;
- }
- var sub_D736()
- {
- if (PED::IS_PED_MODEL(PLAYER::PLAYER_PED_ID(), sub_C5C(2)) != 0)
- {
- return buildStruct(1983.22f, 3820.64f, 31.37f);
- }
- if (PED::IS_PED_MODEL(PLAYER::PLAYER_PED_ID(), sub_C5C(0)) != 0)
- {
- return buildStruct(-827.04f, 172.26f, 69.48f);
- }
- if (PED::IS_PED_MODEL(PLAYER::PLAYER_PED_ID(), sub_C5C(1)) != 0)
- {
- return buildStruct(-16.98f, -1451.59f, 29.57f);
- }
- return buildStruct(0f, 0f, 0f);
- }
- void sub_D7AD()
- {
- sub_B6AE();
- sub_E0D3();
- if (sub_652(&l_138) == 0)
- {
- sub_F453(&l_138);
- }
- bool flag1 = SCRIPT::0x029D3841(0x9F4E8127) > 0;
- if (!(flag1 | (SCRIPT::0x029D3841(0xB618AEBB) > 0)))
- {
- if (sub_652(&l_147) == 0)
- {
- sub_F453(&l_147);
- }
- var num1 = sub_D189();
- if ((num1 & PED::IS_PED_IN_VEHICLE(l_127, l_130, 0)) != 0)
- {
- var num6 = VEHICLE::IS_VEHICLE_STOPPED(l_130);
- if ((num6 & VEHICLE::IS_VEHICLE_ON_ALL_WHEELS(l_130)) != 0)
- {
- var num7 = sub_DB0F();
- var num8 = num7 & (sub_D6BC() == 0);
- if ((num8 & (sub_DAC4() == 0)) != 0)
- {
- sub_D9FB();
- if (sub_5D9(&l_147) > 2.5f)
- {
- struct _s = ENTITY::GET_ENTITY_COORDS(l_130, 0);
- l_118 = PATHFIND::ADD_NAVMESH_BLOCKING_OBJECT(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 40f, 40f, 40f, ENTITY::GET_ENTITY_HEADING(l_130), 0, 7);
- PLAYER::SET_PLAYER_CONTROL(PLAYER::PLAYER_ID(), 0, 256);
- sub_F4AD(&l_85, 2048);
- l_131 = 0;
- PED::ADD_RELATIONSHIP_GROUP("ProstituteInPlay", &l_338);
- PED::SET_RELATIONSHIP_BETWEEN_GROUPS(1, l_338, 0x6F0783F5);
- PED::SET_PED_RELATIONSHIP_GROUP_HASH(l_127, l_338);
- sub_F6C6("Moving into sex state eCurrentProstituteState = PROSTITUTE_CHOOSING_SERVICE ");
- sub_5B4(&l_85, 1024);
- l_335 = -15;
- sub_3BE2();
- sub_D9CA();
- l_116 = 3;
- l_326 = 8;
- }
- }
- else
- {
- bool flag2 = AUDIO::IS_ANY_SPEECH_PLAYING(PLAYER::PLAYER_PED_ID()) == 0;
- bool flag3 = flag2 & (sub_5D9(&l_138) > 15f);
- if (flag3 & sub_D9A9())
- {
- if (sub_F6B7(l_86, 4096) == 0)
- {
- sub_BD1C("PROS_SPOT", -1);
- sub_F4AD(&l_86, 4096);
- }
- sub_D97D();
- sub_E7E(&l_138);
- }
- sub_E7E(&l_147);
- }
- }
- else
- {
- sub_E7E(&l_147);
- sub_D956();
- }
- }
- else if (sub_D6BC() == 0)
- {
- AI::CLEAR_PED_TASKS(l_127);
- sub_F46B(0);
- }
- }
- }
- void sub_D956()
- {
- l_87 = 0;
- setElem(0, 0, &l_339, 4);
- setElem(0, 1, &l_339, 4);
- setElem(0, 2, &l_339, 4);
- setElem(0, 3, &l_339, 4);
- }
- void sub_D97D()
- {
- if ((PED::IS_PED_INJURED(l_127) == 0) && (AUDIO::IS_ANY_SPEECH_PLAYING(l_127) == 0))
- {
- AUDIO::0x5C57B85D(l_127, "HOOKER_SECLUDED", "SPEECH_PARAMS_FORCE_SHOUTED_CLEAR");
- }
- }
- var sub_D9A9()
- {
- if (sub_F6B7(l_87, 256) == 0)
- {
- return 1;
- }
- return sub_F6B7(l_87, 32);
- }
- void sub_D9CA()
- {
- if (sub_10B44() != 0)
- {
- PED::SET_PED_CONFIG_FLAG(l_127, 229, 1);
- PED::SET_PED_CONFIG_FLAG(l_127, 26, 1);
- PED::SET_PED_CONFIG_FLAG(l_127, 115, 1);
- PED::SET_BLOCKING_OF_NON_TEMPORARY_EVENTS(l_127, 1);
- }
- }
- void sub_D9FB()
- {
- if ((sub_F6B7(l_85, 0x200000) == 0) && (GAMEPLAY::GET_GAME_TIMER() > l_117))
- {
- if (l_131 == 0)
- {
- var num3;
- var num6;
- var num9;
- struct _s = ENTITY::GET_ENTITY_COORDS(l_130, 1);
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, &num3);
- struct _s = &num3;
- GAMEPLAY::GET_GROUND_Z_FOR_3D_COORD(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), &num9);
- wPtr(num9 + (0.15f), (&num3) + 2);
- struct _s = ENTITY::GET_OFFSET_FROM_ENTITY_IN_WORLD_COORDS(l_130, 0f, 0f, -2f);
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, &num6);
- struct _s = &num3;
- struct _s = &num6;
- l_131 = WORLDPROBE::0x591EA833(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 2f, 511, l_130, 7);
- }
- else
- {
- var num10;
- var num11;
- var num12;
- var num15;
- var num18;
- if (WORLDPROBE::0x4301E10C(l_131, &num11, &num12, &num15, &num10, &num18) == 2)
- {
- if (num11 != 0)
- {
- bool flag1 = num10 == 0xA9BC4217;
- bool flag2 = flag1 | (num10 == 0x72C668B6);
- if (flag2 | (num10 == 0x7EDC5571))
- {
- sub_E7E(&l_147);
- }
- }
- l_117 = GAMEPLAY::GET_GAME_TIMER() + 1500;
- l_131 = 0;
- }
- }
- }
- }
- var sub_DAC4()
- {
- var num3 = PED::GET_VEHICLE_PED_IS_IN(PLAYER::PLAYER_PED_ID(), 0);
- if ((VEHICLE::IS_VEHICLE_DRIVEABLE(num3, 0) != 0) && (VEHICLE::IS_VEHICLE_SEAT_FREE(num3, 0) == 0))
- {
- var num1 = ENTITY::IS_ENTITY_IN_WATER(PLAYER::PLAYER_PED_ID());
- if ((num1 | ENTITY::IS_ENTITY_IN_WATER(PED::GET_VEHICLE_PED_IS_IN(PLAYER::PLAYER_PED_ID(), 0))) != 0)
- {
- return 1;
- }
- }
- return 0;
- }
- var sub_DB0F()
- {
- if (ENTITY::IS_ENTITY_DEAD(PLAYER::PLAYER_PED_ID()) == 0)
- {
- var num3;
- var num4;
- var num7;
- if (PED::IS_PED_IN_ANY_VEHICLE(PLAYER::PLAYER_PED_ID(), 0) != 0)
- {
- l_130 = PED::GET_VEHICLE_PED_IS_IN(PLAYER::PLAYER_PED_ID(), 0);
- }
- struct _s = ENTITY::GET_ENTITY_COORDS(PLAYER::PLAYER_PED_ID(), 1);
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, &num4);
- struct _s = &num4;
- var num1 = AI::0x0FB138A5(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), sub_2110(0), 12f, 0);
- if (num1 == 0)
- {
- struct _s = &num4;
- }
- if ((num1 | AI::0x0FB138A5(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), sub_2110(1), 12f, 0)) != 0)
- {
- return 0;
- }
- if (sub_E0C8() != 0)
- {
- return 0;
- }
- if (sub_E001(l_130, &num7) != 0)
- {
- struct _s = &num7;
- if (sub_DF1B(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8)) == 0)
- {
- struct _s = &num4;
- bool flag1 = sub_DE08(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8)) == 0;
- if (!flag1)
- {
- struct _s = &num4;
- }
- if (flag1 | sub_DCA0(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8)))
- {
- return 0;
- }
- }
- }
- struct _s = ENTITY::GET_ENTITY_COORDS(PLAYER::PLAYER_PED_ID(), 1);
- if (sub_2A02(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), (30f * 0.5f)) != 0)
- {
- return 0;
- }
- if (VEHICLE::0xAB0E79EB(l_127, l_130, 0, 0, 0) == 0)
- {
- return 0;
- }
- PED::SET_SCENARIO_PEDS_TO_BE_RETURNED_BY_NEXT_COMMAND(1);
- struct _s = &num4;
- if (PED::GET_CLOSEST_PED(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 20f, 1, 1, &num3, 0, 1, -1) != 0)
- {
- if (ENTITY::DOES_ENTITY_EXIST(num3) != 0)
- {
- if ((ENTITY::IS_ENTITY_DEAD(num3) == 0) && (ENTITY::HAS_ENTITY_CLEAR_LOS_TO_ENTITY(num3, l_130, 17) != 0))
- {
- return 0;
- }
- }
- else
- {
- sub_F6C6("NO VEHICLES FOUND");
- }
- }
- if (INTERIOR::GET_INTERIOR_FROM_ENTITY(PLAYER::PLAYER_PED_ID()) != 0)
- {
- sub_F6C6("IN AN INTERIOR");
- return 0;
- }
- if (sub_DC61() != 0)
- {
- return 0;
- }
- }
- return 1;
- }
- var sub_DC61()
- {
- sub_F4AD(&l_87, 256);
- if (sub_F6B7(l_87, 2) == 0)
- {
- if (sub_D286(3) != 0)
- {
- sub_F4AD(&l_87, 2);
- sub_5B4(&l_87, 32);
- }
- return 1;
- }
- sub_D1FE();
- return 0;
- }
- var sub_DCA0(var A_0, var A_1, var A_2)
- {
- struct _s = &A_0;
- bool flag1 = SYSTEM::VDIST(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 491.76f, -515.73f, 29.51f) <= 12f;
- if (!flag1)
- {
- struct _s = &A_0;
- }
- bool flag2 = flag1 | (SYSTEM::VDIST(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), -1453.385f, -594.2627f, 29.7966f) <= 12f);
- if (!flag2)
- {
- struct _s = &A_0;
- }
- bool flag3 = flag2 | (SYSTEM::VDIST(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), -633.6086f, -332.3337f, 33.81f) <= 25f);
- if (!flag3)
- {
- struct _s = &A_0;
- }
- bool flag4 = flag3 | (SYSTEM::VDIST(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), -1493.191f, -693.9906f, 26.0665f) <= 25f);
- if (!flag4)
- {
- struct _s = &A_0;
- }
- bool flag5 = flag4 | (SYSTEM::VDIST(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), -1512.938f, -675.6082f, 27.4202f) <= 25f);
- if (!flag5)
- {
- struct _s = &A_0;
- }
- bool flag6 = flag5 | (SYSTEM::VDIST(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), -1388.642f, -1342.266f, 3.1626f) <= 25f);
- if (!flag6)
- {
- struct _s = &A_0;
- }
- bool flag7 = flag6 | (SYSTEM::VDIST(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 50.2024f, -1392.306f, 28.4166f) <= 12f);
- if (!flag7)
- {
- struct _s = &A_0;
- }
- bool flag8 = flag7 | (SYSTEM::VDIST(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 25.9811f, -1392.289f, 28.3356f) <= 12f);
- if (!flag8)
- {
- struct _s = &A_0;
- }
- bool flag9 = flag8 | (SYSTEM::VDIST(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 10.0435f, -1391.596f, 28.3074f) <= 12f);
- if (!flag9)
- {
- struct _s = &A_0;
- }
- if (flag9 | (SYSTEM::VDIST(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), -1196.6f, -519.6772f, 31.9742f) <= 12f))
- {
- return 1;
- }
- return 0;
- }
- var sub_DE08(var A_0, var A_1, var A_2)
- {
- struct _s = &A_0;
- bool flag1 = SYSTEM::VDIST(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), -1582.782f, 5168.163f, 18.5615f) <= 15f;
- if (!flag1)
- {
- struct _s = &A_0;
- }
- bool flag2 = flag1 | (SYSTEM::VDIST(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), -1445.73f, -640.8375f, 28.7804f) <= 15f);
- if (!flag2)
- {
- struct _s = &A_0;
- }
- bool flag3 = flag2 | (SYSTEM::VDIST(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), -348.7544f, 292.5813f, 83.9843f) <= 15f);
- if (!flag3)
- {
- struct _s = &A_0;
- }
- bool flag4 = flag3 | (SYSTEM::VDIST(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), -273f, 317.8898f, 92.2549f) <= 15f);
- if (!flag4)
- {
- struct _s = &A_0;
- }
- bool flag5 = flag4 | (SYSTEM::VDIST(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), -1627.935f, -1083.443f, 3.2819f) <= 40f);
- if (!flag5)
- {
- struct _s = &A_0;
- }
- bool flag6 = flag5 | (SYSTEM::VDIST(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), -1661.098f, -1057.73f, 2.5729f) <= 40f);
- if (!flag6)
- {
- struct _s = &A_0;
- }
- if (flag6 | (SYSTEM::VDIST(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), -1518.358f, -553.8981f, 32.1463f) <= 15f))
- {
- sub_F4AD(&l_85, 0x200000);
- return 1;
- }
- sub_5B4(&l_85, 0x200000);
- return 0;
- }
- var sub_DF1B(var A_0, var A_1, var A_2)
- {
- struct _s = ENTITY::GET_ENTITY_COORDS(PLAYER::PLAYER_PED_ID(), 0);
- var num3 = PATHFIND::GET_NTH_CLOSEST_VEHICLE_NODE_ID(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 1, 1, 0x40400000, 0);
- PATHFIND::GET_VEHICLE_NODE_POSITION(num3, &A_0);
- if (PATHFIND::0xEE4B1219(num3) != 0)
- {
- if (PATHFIND::0x56737A3C(num3) == 0)
- {
- struct _s = ENTITY::GET_ENTITY_COORDS(PLAYER::PLAYER_PED_ID(), 0);
- struct _s = &A_0;
- if (SYSTEM::VDIST2(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8)) > 400f)
- {
- return 1;
- }
- }
- else
- {
- struct _s = ENTITY::GET_ENTITY_COORDS(PLAYER::PLAYER_PED_ID(), 0);
- struct _s = &A_0;
- if (SYSTEM::VDIST2(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8)) > 56.25f)
- {
- return 1;
- }
- }
- }
- else if (PATHFIND::0x56737A3C(num3) == 0)
- {
- struct _s = ENTITY::GET_ENTITY_COORDS(PLAYER::PLAYER_PED_ID(), 0);
- struct _s = &A_0;
- if (SYSTEM::VDIST2(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8)) > 400f)
- {
- return 1;
- }
- }
- else
- {
- struct _s = ENTITY::GET_ENTITY_COORDS(PLAYER::PLAYER_PED_ID(), 0);
- PATHFIND::GET_VEHICLE_NODE_POSITION(PATHFIND::GET_NTH_CLOSEST_VEHICLE_NODE_ID(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 1, 8, 0x40400000, 0), &A_0);
- struct _s = ENTITY::GET_ENTITY_COORDS(PLAYER::PLAYER_PED_ID(), 0);
- struct _s = &A_0;
- if (SYSTEM::VDIST2(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8)) > 400f)
- {
- return 1;
- }
- }
- return 0;
- }
- var sub_E001(var A_0, var A_1)
- {
- var num3;
- initArray(&num3, 4);
- struct _s = ENTITY::GET_OFFSET_FROM_ENTITY_IN_WORLD_COORDS(A_0, 2f, 0f, 0f);
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, getElemPtr(0, &num3, 12));
- struct _s = ENTITY::GET_OFFSET_FROM_ENTITY_IN_WORLD_COORDS(A_0, -2f, 0f, 0f);
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, getElemPtr(1, &num3, 12));
- struct _s = ENTITY::GET_OFFSET_FROM_ENTITY_IN_WORLD_COORDS(A_0, 0f, 2f, 0f);
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, getElemPtr(2, &num3, 12));
- struct _s = ENTITY::GET_OFFSET_FROM_ENTITY_IN_WORLD_COORDS(A_0, 0f, -2f, 0f);
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, getElemPtr(3, &num3, 12));
- struct _s = getElemPtr(0, &num3, 12);
- if (PATHFIND::GET_CLOSEST_MAJOR_VEHICLE_NODE(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), A_1, 0x40400000, 0) != 0)
- {
- return 1;
- }
- struct _s = getElemPtr(1, &num3, 12);
- if (PATHFIND::GET_CLOSEST_MAJOR_VEHICLE_NODE(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), A_1, 0x40400000, 0) != 0)
- {
- return 1;
- }
- struct _s = getElemPtr(2, &num3, 12);
- if (PATHFIND::GET_CLOSEST_MAJOR_VEHICLE_NODE(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), A_1, 0x40400000, 0) != 0)
- {
- return 1;
- }
- struct _s = getElemPtr(3, &num3, 12);
- if (PATHFIND::GET_CLOSEST_MAJOR_VEHICLE_NODE(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), A_1, 0x40400000, 0) != 0)
- {
- return 1;
- }
- return 0;
- }
- var sub_E0C8()
- {
- return g_59079;
- }
- void sub_E0D3()
- {
- if (sub_F6B7(l_85, 128) == 0)
- {
- sub_E112(39, 1);
- sub_E112(40, 1);
- sub_E112(41, 1);
- sub_E112(42, 1);
- sub_E112(43, 1);
- sub_F4AD(&l_85, 128);
- }
- }
- void sub_E112(var A_0, var A_1)
- {
- if (A_1 != null)
- {
- if (sub_E4C2(A_0, 2, 1) == 0)
- {
- sub_E45A(A_0, 2, 1);
- }
- }
- else if (sub_E4C2(A_0, 2, 1) != 0)
- {
- sub_E149(A_0, 2, 1);
- }
- }
- void sub_E149(var A_0, var A_1, var A_2)
- {
- if (A_2 != null)
- {
- GAMEPLAY::CLEAR_BIT(getElemPtr(A_0, (&g_80929) + 1015, 4), A_1);
- }
- else if (NETWORK::NETWORK_IS_GAME_IN_PROGRESS() != 0)
- {
- if (sub_4B6E() == 0)
- {
- var num3 = sub_4370(sub_E1B1(A_0), -1, 0);
- GAMEPLAY::CLEAR_BIT(&num3, A_1);
- sub_4305(sub_E1B1(A_0), num3, -1, 1);
- }
- }
- else
- {
- GAMEPLAY::CLEAR_BIT(getElemPtr(A_0, (&g_86838) + 668, 4), A_1);
- }
- }
- var sub_E1B1(var A_0)
- {
- switch (A_0)
- {
- case 0:
- return 813;
- case 1:
- return 814;
- case 2:
- return 815;
- case 3:
- return 816;
- case 4:
- return 817;
- case 5:
- return 818;
- case 6:
- return 819;
- case 7:
- return 820;
- case 8:
- return 821;
- case 9:
- return 822;
- case 10:
- return 823;
- case 11:
- return 824;
- case 12:
- return 825;
- case 13:
- return 826;
- case 14:
- return 827;
- case 15:
- return 829;
- case 16:
- return 830;
- case 17:
- return 831;
- case 18:
- return 832;
- case 19:
- return 833;
- case 20:
- return 834;
- case 21:
- return 835;
- case 22:
- return 836;
- case 23:
- return 837;
- case 24:
- return 838;
- case 25:
- return 839;
- case 26:
- return 840;
- case 27:
- return 841;
- case 28:
- return 842;
- case 29:
- return 843;
- case 30:
- return 844;
- case 31:
- return 845;
- case 32:
- return 846;
- case 33:
- return 847;
- case 34:
- return 848;
- case 35:
- return 849;
- case 36:
- return 850;
- case 37:
- return 851;
- case 38:
- return 852;
- case 39:
- return 853;
- case 40:
- return 857;
- case 41:
- return 858;
- case 42:
- return 859;
- case 43:
- return 860;
- }
- return 1948;
- }
- void sub_E45A(var A_0, var A_1, var A_2)
- {
- if (A_2 != null)
- {
- GAMEPLAY::SET_BIT(getElemPtr(A_0, (&g_80929) + 1015, 4), A_1);
- }
- else if (NETWORK::NETWORK_IS_GAME_IN_PROGRESS() != 0)
- {
- if (sub_4B6E() == 0)
- {
- var num3 = sub_4370(sub_E1B1(A_0), -1, 0);
- GAMEPLAY::SET_BIT(&num3, A_1);
- sub_4305(sub_E1B1(A_0), num3, -1, 1);
- }
- }
- else
- {
- GAMEPLAY::SET_BIT(getElemPtr(A_0, (&g_86838) + 668, 4), A_1);
- }
- }
- var sub_E4C2(var A_0, var A_1, var A_2)
- {
- if (A_2 != null)
- {
- return GAMEPLAY::IS_BIT_SET(getElem(A_0, (&g_80929) + 1015, 4), A_1);
- }
- if (NETWORK::NETWORK_IS_GAME_IN_PROGRESS() != 0)
- {
- if (sub_4B6E() == 0)
- {
- return GAMEPLAY::IS_BIT_SET(sub_4370(sub_E1B1(A_0), -1, 0), A_1);
- }
- }
- else
- {
- return GAMEPLAY::IS_BIT_SET(getElem(A_0, (&g_86838) + 668, 4), A_1);
- }
- return 0;
- }
- void sub_E522()
- {
- if (sub_F6B7(l_85, 2) != 0)
- {
- sub_1FA3();
- sub_3033(1);
- }
- sub_2250();
- sub_10666();
- }
- void sub_E545()
- {
- if (ENTITY::IS_ENTITY_DEAD(l_127) == 0)
- {
- var num1 = ENTITY::IS_ENTITY_AT_ENTITY(l_127, PLAYER::PLAYER_PED_ID(), 5f, 5f, 5f, 0, 1, 0);
- if ((num1 | sub_F6B7(l_85, 8192)) != 0)
- {
- CONTROLS::DISABLE_CONTROL_ACTION(0, 92);
- CONTROLS::DISABLE_CONTROL_ACTION(0, 67);
- CONTROLS::SET_INPUT_EXCLUSIVE(0, 49);
- var num6 = PED::IS_PED_IN_ANY_VEHICLE(PLAYER::PLAYER_PED_ID(), 0);
- if ((num6 & PED::IS_PED_IN_ANY_VEHICLE(l_127, 0)) != 0)
- {
- ENTITY::SET_ENTITY_LOD_DIST(l_127, 50);
- PED::SET_PED_LOD_MULTIPLIER(l_127, 5f);
- if ((sub_F6B7(l_85, 16) != 0) && (PLAYER::IS_PLAYER_PLAYING(PLAYER::PLAYER_ID()) != 0))
- {
- PLAYER::SET_PLAYER_CAN_DO_DRIVE_BY(PLAYER::PLAYER_ID(), 1);
- sub_5B4(&l_85, 16);
- }
- l_130 = PED::GET_VEHICLE_PED_IS_IN(PLAYER::PLAYER_PED_ID(), 0);
- if (VEHICLE::IS_VEHICLE_DRIVEABLE(l_130, 0) != 0)
- {
- var num7 = PED::IS_PED_SITTING_IN_VEHICLE(l_127, l_130);
- if ((num7 & PED::IS_PED_IN_VEHICLE(PLAYER::PLAYER_PED_ID(), l_130, 0)) != 0)
- {
- sub_F6C6("***** prostitute IN VEHICLE****** ");
- if ((sub_F6B7(l_85, 8) != 0) && (STREAMING::HAS_CLIP_SET_LOADED(sub_2B51()) != 0))
- {
- if (sub_E809(l_130) != 0)
- {
- PED::SET_PED_IN_VEHICLE_CONTEXT(l_127, GAMEPLAY::GET_HASH_KEY("MINI_PROSTITUTE_LOW_RESTRICTED_PASSENGER"));
- }
- else
- {
- PED::SET_PED_IN_VEHICLE_CONTEXT(l_127, GAMEPLAY::GET_HASH_KEY("MINI_PROSTITUTE_LOW_PASSENGER"));
- }
- }
- if (sub_10B44() != 0)
- {
- ENTITY::SET_ENTITY_AS_MISSION_ENTITY(l_127, 0, 0);
- }
- else
- {
- ENTITY::SET_ENTITY_AS_MISSION_ENTITY(l_127, 1, 1);
- }
- sub_56B0(l_127, 0);
- sub_D97D();
- l_97 = GAMEPLAY::GET_GAME_TIMER();
- sub_E7E(&l_138);
- l_326 = 7;
- }
- else
- {
- sub_F6C6("SOMETHINGS GONE WRONGWITH PROS GETTING INTO VEHICLE , either her or player");
- }
- }
- }
- else
- {
- bool flag1 = sub_E7AD(l_127, PLAYER::PLAYER_PED_ID(), 1) > 11f;
- bool flag2 = flag1 | sub_E78C(20f);
- if (flag2 | (PED::IS_PED_IN_VEHICLE(PLAYER::PLAYER_PED_ID(), l_130, 0) == 0))
- {
- sub_3612(&l_144);
- if (PED::IS_PED_IN_ANY_VEHICLE(l_127, 0) == 0)
- {
- AI::CLEAR_PED_TASKS(l_127);
- sub_F46B(0);
- sub_F6C6("PROS FINISHED SEQUENCE TASK BUT NOT IN VEHICLE");
- sub_2CDE(15);
- }
- }
- if (PED::IS_PED_IN_ANY_VEHICLE(PLAYER::PLAYER_PED_ID(), 0) != 0)
- {
- if (VEHICLE::IS_VEHICLE_DRIVEABLE(l_130, 0) == 0)
- {
- l_130 = PED::GET_VEHICLE_PED_IS_IN(PLAYER::PLAYER_PED_ID(), 0);
- }
- else if ((VEHICLE::0xAB0E79EB(l_127, l_130, 0, 0, 0) == 0) && (sub_3536() == 0))
- {
- if (sub_F6B7(l_108, 1) == 0)
- {
- sub_E7E(&l_150);
- sub_F4AD(&l_108, 1);
- }
- else if (sub_5D9(&l_150) > 20f)
- {
- sub_3B5E();
- sub_F6C6("prostitute couldn't get into the car");
- l_326 = 6;
- }
- }
- }
- }
- }
- else if (sub_F6B7(l_108, 1) == 0)
- {
- sub_F6C6("PLAYER out of range for entering VEHICLE or wanted level");
- AI::CLEAR_PED_TASKS(l_127);
- sub_2CDE(15);
- }
- }
- }
- var sub_E78C(var A_0)
- {
- if (sub_652(&l_144) == 0)
- {
- sub_E7E(&l_144);
- }
- return (sub_3785(&l_144) > A_0);
- }
- var sub_E7AD(var A_0, var A_1, var A_2)
- {
- var num3;
- var num6;
- if (ENTITY::IS_ENTITY_DEAD(A_0) == 0)
- {
- struct _s = ENTITY::GET_ENTITY_COORDS(A_0, 1);
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, &num3);
- }
- else
- {
- struct _s = ENTITY::GET_ENTITY_COORDS(A_0, 0);
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, &num3);
- }
- if (ENTITY::IS_ENTITY_DEAD(A_1) == 0)
- {
- struct _s = ENTITY::GET_ENTITY_COORDS(A_1, 1);
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, &num6);
- }
- else
- {
- struct _s = ENTITY::GET_ENTITY_COORDS(A_1, 0);
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, &num6);
- }
- struct _s = &num3;
- struct _s = &num6;
- return GAMEPLAY::GET_DISTANCE_BETWEEN_COORDS(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), A_2);
- }
- var sub_E809(var A_0)
- {
- if (VEHICLE::IS_VEHICLE_DRIVEABLE(A_0, 0) != 0)
- {
- switch (VEHICLE::GET_VEHICLE_LAYOUT_HASH(A_0))
- {
- case 0xD158A20D:
- case 0xFDB5DC9C:
- case 0x205A6F50:
- case 0x4163EC9:
- return 1;
- }
- }
- return 0;
- }
- void sub_E846()
- {
- if (sub_EDBC(0) != 0)
- {
- if (sub_F6B7(l_85, 16) == 0)
- {
- PLAYER::SET_PLAYER_CAN_DO_DRIVE_BY(PLAYER::PLAYER_ID(), 0);
- sub_F4AD(&l_85, 16);
- }
- if (sub_652(&l_144) == 0)
- {
- sub_F453(&l_144);
- }
- bool flag1 = sub_3785(&l_144) >= 20f;
- if (flag1 | (ENTITY::IS_ENTITY_AT_ENTITY(l_127, PLAYER::PLAYER_PED_ID(), 3f, 3f, 3f, 0, 1, 0) == 0))
- {
- sub_E7E(&l_144);
- if (sub_F6B7(l_108, 0x80000) != 0)
- {
- sub_3612(&l_144);
- l_326 = 6;
- }
- else
- {
- sub_2250();
- sub_ED13();
- sub_F4AD(&l_108, 0x80000);
- }
- }
- sub_2295(l_127);
- var num1 = ENTITY::IS_ENTITY_AT_ENTITY(l_127, PLAYER::PLAYER_PED_ID(), 3f, 3f, 3f, 0, 1, 0);
- var num6 = num1 | sub_F6B7(l_108, 1);
- var num7 = num6 & (sub_69A8(0) == 0);
- if ((num7 & (sub_E0C8() == 0)) != 0)
- {
- if (VEHICLE::0xAB0E79EB(l_127, l_130, 0, 0, 0) == 0)
- {
- if (sub_3536() == 0)
- {
- if (sub_F6B7(l_108, 1) == 0)
- {
- sub_E7E(&l_150);
- sub_F4AD(&l_108, 1);
- }
- else if (sub_5D9(&l_150) > 10f)
- {
- sub_2250();
- AI::CLEAR_PED_TASKS(l_127);
- sub_F6C6("prostitute couldn't get into the car");
- l_326 = 6;
- }
- }
- }
- else
- {
- sub_E995();
- }
- }
- else if (sub_F422("PROS_ACCEPT") != 0)
- {
- sub_5B4(&l_85, 0x100000);
- UI::CLEAR_HELP(1);
- }
- }
- }
- void sub_E995()
- {
- bool flag1 = l_326 != 5;
- if (flag1 & sub_CBC5(0))
- {
- sub_EB5D();
- var num1 = sub_EA6A(l_107, 1);
- if ((num1 | PLAYER::IS_PLAYER_PRESSING_HORN(PLAYER::PLAYER_ID())) != 0)
- {
- AUDIO::0x5C57B85D(PLAYER::PLAYER_PED_ID(), "HOOKER_REQUEST", "SPEECH_PARAMS_FORCE_SHOUTED_CLEAR");
- sub_F4AD(&l_85, 8192);
- sub_E7E(&l_144);
- }
- if (sub_F6B7(l_85, 8192) != 0)
- {
- sub_F374();
- g_19604 = 1;
- sub_3C4C("PROSTITUTES_SOLICIT_SCENE");
- sub_27A1("PROSTITUTES_DRIVE_SCENE");
- if (PED::IS_PED_IN_ANY_VEHICLE(PLAYER::PLAYER_PED_ID(), 0) != 0)
- {
- bool flag2 = AI::GET_SCRIPT_TASK_STATUS(l_127, 0x950B6492) != 1;
- if (flag2 & (PED::IS_PED_IN_VEHICLE(l_127, PED::GET_VEHICLE_PED_IS_IN(PLAYER::PLAYER_PED_ID(), 0), 1) == 0))
- {
- AI::TASK_ENTER_VEHICLE(l_127, l_130, -1, 0, 1f, 0x800001, 0);
- }
- }
- l_96 = sub_16FB(PLAYER::PLAYER_PED_ID());
- STREAMING::REQUEST_ANIM_DICT(l_96);
- sub_E7E(&l_138);
- l_326 = 5;
- }
- }
- }
- var sub_EA6A(var A_0, var A_1)
- {
- var num3 = sub_EB22(A_0);
- if (num3 != -1)
- {
- if (PLAYER::IS_PLAYER_PLAYING(PLAYER::GET_PLAYER_INDEX()) == 0)
- {
- return 0;
- }
- if (sub_69A8(0) != 0)
- {
- return 0;
- }
- if (CUTSCENE::IS_CUTSCENE_PLAYING() != 0)
- {
- return 0;
- }
- bool flag1 = num3 > -1;
- if (flag1 & (num3 < 6))
- {
- bool flag2 = getElem(num3, &g_30491, 72) == 1;
- if (flag2 & (rPtr(getElemPtr(num3, &g_30491, 72) + 12) == 1))
- {
- if ((A_1 != null) && (rPtr(getElemPtr(num3, &g_30491, 72) + 64) != 0))
- {
- return 0;
- }
- wPtr(1, getElemPtr(num3, &g_30491, 72) + 16);
- wPtr(1, getElemPtr(num3, &g_30491, 72) + 64);
- return 1;
- }
- if (getElem(num3, &g_30491, 72) == 0)
- {
- }
- if (rPtr(getElemPtr(num3, &g_30491, 72) + 24) == 0)
- {
- }
- }
- }
- return 0;
- }
- var sub_EB22(var A_0)
- {
- if (A_0 >= 0)
- {
- var num3 = 0;
- for (num3 = 0; num3 < 6; num3++)
- {
- if (rPtr(getElemPtr(num3, &g_30491, 72) + 4) == A_0)
- {
- return num3;
- }
- }
- }
- return -1;
- }
- void sub_EB5D()
- {
- if (g_19604 != 0)
- {
- if (UI::IS_PAUSE_MENU_ACTIVE() == 0)
- {
- CONTROLS::DISABLE_CONTROL_ACTION(0, 92);
- CONTROLS::DISABLE_CONTROL_ACTION(0, 67);
- CONTROLS::SET_INPUT_EXCLUSIVE(0, 49);
- if ((sub_F6B7(l_85, 8192) == 0) && (l_107 == -1))
- {
- sub_EBB1(&l_107, 5, "PROS_ACCEPT", 0, 0);
- }
- }
- }
- else
- {
- sub_F374();
- }
- }
- void sub_EBB1(var A_0, var A_1, var A_2, var A_3, var A_4)
- {
- if (SCRIPT::0x029D3841(0x75B7261C) < 1)
- {
- }
- if (STREAMING::STOP_PLAYER_REMAIN_ARCADE() != 0)
- {
- if (rPtr(A_0) != -1)
- {
- sub_ECBC(A_0);
- }
- return;
- }
- if (rPtr(A_0) != -1)
- {
- return;
- }
- var num3 = 0;
- num3 = 0;
- Label_0073:
- if (num3 >= 6)
- {
- return;
- }
- if (getElem(num3, &g_30491, 72) == 0)
- {
- setElem(1, num3, &g_30491, 72);
- wPtr(g_30608, getElemPtr(num3, &g_30491, 72) + 4);
- g_30608++;
- wPtr(0, getElemPtr(num3, &g_30491, 72) + 12);
- wPtr(0, getElemPtr(num3, &g_30491, 72) + 64);
- wPtr(0, getElemPtr(num3, &g_30491, 72) + 16);
- wPtr(A_1, getElemPtr(num3, &g_30491, 72) + 8);
- strcpy(A_2, getElemPtr(num3, &g_30491, 72) + 28, 16);
- wPtr(A_3, getElemPtr(num3, &g_30491, 72) + 20);
- wPtr(SCRIPT::GET_ID_OF_THIS_THREAD(), getElemPtr(num3, &g_30491, 72) + 68);
- wPtr(0, getElemPtr(num3, &g_30491, 72) + 24);
- if (GAMEPLAY::IS_STRING_NULL_OR_EMPTY(A_4) == 0)
- {
- wPtr(1, getElemPtr(num3, &g_30491, 72) + 44);
- strcpy(A_4, getElemPtr(num3, &g_30491, 72) + 48, 16);
- }
- else
- {
- wPtr(0, getElemPtr(num3, &g_30491, 72) + 44);
- }
- wPtr(rPtr(getElemPtr(num3, &g_30491, 72) + 4), A_0);
- }
- else
- {
- num3++;
- goto Label_0073;
- }
- }
- void sub_ECBC(var A_0)
- {
- if (rPtr(A_0) != -1)
- {
- var num3 = sub_EB22(rPtr(A_0));
- if (num3 == -1)
- {
- wPtr(-1, A_0);
- }
- else
- {
- bool flag1 = num3 > -1;
- if ((flag1 & (num3 < 6)) && (getElem(num3, &g_30491, 72) != 0))
- {
- wPtr(1, getElemPtr(num3, &g_30491, 72) + 24);
- wPtr(-1, A_0);
- }
- else
- {
- wPtr(-1, A_0);
- }
- }
- }
- }
- void sub_ED13()
- {
- bool flag1 = ENTITY::DOES_ENTITY_EXIST(l_127) == 0;
- if (!(flag1 | PED::IS_PED_INJURED(l_127)))
- {
- if (PED::IS_PED_IN_ANY_VEHICLE(l_127, 1) != 0)
- {
- AI::TASK_WANDER_STANDARD(l_127, 0x471C4000, 0);
- }
- else if (sub_F6B7(l_85, 0x400000) != 0)
- {
- var num3;
- var num4 = GAMEPLAY::GET_RANDOM_INT_IN_RANGE(8, 11);
- AI::OPEN_SEQUENCE_TASK(&num3);
- AI::TASK_PLAY_ANIM(0, sub_21FD(l_324), sub_212A(5), 2f, -2f, -1, 0, 0, 0, 0, 0);
- AI::TASK_PLAY_ANIM(0, sub_21FD(l_324), sub_212A(num4), 8f, -8f, -1, 1, 0, 0, 0, 0);
- AI::CLOSE_SEQUENCE_TASK(num3);
- AI::TASK_PERFORM_SEQUENCE(l_127, num3);
- AI::CLEAR_SEQUENCE_TASK(&num3);
- }
- }
- }
- var sub_EDBC(var A_0)
- {
- if (ENTITY::IS_ENTITY_DEAD(l_127) == 0)
- {
- if (sub_F6B7(l_85, 8192) != 0)
- {
- }
- if (sub_E7AD(l_127, PLAYER::PLAYER_PED_ID(), 1) > 11f)
- {
- return 0;
- }
- if (PED::IS_PED_IN_ANY_VEHICLE(PLAYER::PLAYER_PED_ID(), 0) == 0)
- {
- return 0;
- }
- if ((sub_10B44() != 0) && (VEHICLE::GET_VEHICLE_NUMBER_OF_PASSENGERS(PED::GET_VEHICLE_PED_IS_IN(PLAYER::PLAYER_PED_ID(), 0)) > 1))
- {
- return 0;
- }
- if ((A_0 != null) && (ENTITY::GET_ENTITY_SPEED(PED::GET_VEHICLE_PED_IS_IN(PLAYER::PLAYER_PED_ID(), 0)) > 2f))
- {
- return 0;
- }
- struct _s = ENTITY::GET_ENTITY_COORDS(l_127, 1);
- if (sub_2A02(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 0x41F00000) != 0)
- {
- bool flag1 = sub_F6B7(l_86, 8192) == 0;
- if (flag1 & (PED::IS_PED_IN_ANY_POLICE_VEHICLE(PLAYER::PLAYER_PED_ID()) == 0))
- {
- sub_BD1C("PROS_COPS", -1);
- sub_F4AD(&l_86, 8192);
- }
- return 0;
- }
- if (sub_D189() != 0)
- {
- return 1;
- }
- if (sub_10B44() == 0)
- {
- sub_EE9A();
- }
- }
- return 0;
- }
- void sub_EE9A()
- {
- if ((PED::IS_PED_INJURED(PLAYER::PLAYER_PED_ID()) == 0) && (sub_F6B7(l_85, 1) == 0))
- {
- bool flag1 = AUDIO::IS_ANY_SPEECH_PLAYING(PLAYER::PLAYER_PED_ID()) == 0;
- if (flag1 & (AUDIO::IS_ANY_SPEECH_PLAYING(l_127) == 0))
- {
- AUDIO::0x5C57B85D(PLAYER::PLAYER_PED_ID(), "HOOKER_CAR_INCORRECT", "SPEECH_PARAMS_FORCE_SHOUTED_CLEAR");
- sub_F4AD(&l_85, 1);
- }
- }
- }
- void sub_EEEA()
- {
- if (sub_EDBC(0) != 0)
- {
- sub_E995();
- bool flag1 = AI::GET_SCRIPT_TASK_STATUS(l_127, 0xE763797) == 7;
- if (flag1 & (sub_F6B7(l_85, 8192) == 0))
- {
- sub_23E4(1);
- sub_3612(&l_144);
- l_97 = GAMEPLAY::GET_GAME_TIMER();
- sub_F6C6("prostitute proposition player VEHICLE");
- l_326 = 4;
- }
- }
- else
- {
- AI::CLEAR_PED_TASKS(l_127);
- sub_2CDE(15);
- }
- }
- void sub_EF49()
- {
- if (sub_EDBC(0) != 0)
- {
- sub_E995();
- bool flag1 = AI::GET_SCRIPT_TASK_STATUS(l_127, 0xE763797) == 7;
- if (flag1 | sub_F6B7(l_85, 8192))
- {
- l_326 = 3;
- }
- else if (sub_E78C(20f) != 0)
- {
- sub_3612(&l_144);
- sub_F46B(0);
- }
- else
- {
- sub_EFB0();
- }
- }
- else
- {
- AI::CLEAR_PED_TASKS(l_127);
- sub_2CDE(15);
- }
- }
- void sub_EFB0()
- {
- if (ENTITY::DOES_ENTITY_EXIST(l_130) != 0)
- {
- var num3;
- var num6;
- var num9;
- var num12;
- var num15;
- var num18;
- GAMEPLAY::GET_MODEL_DIMENSIONS(ENTITY::GET_ENTITY_MODEL(l_130), &num9, &num6);
- struct _s = &num6;
- struct _s = &num9;
- struct _s = vsub(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8));
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, &num3);
- struct _s = &num3;
- struct _s = ftov(2f);
- struct _s = vdiv(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8));
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, &num3);
- struct _s = ENTITY::GET_OFFSET_FROM_ENTITY_IN_WORLD_COORDS(l_130, -(num3 + 0.2f), 0f, 0f);
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, &num12);
- struct _s = ENTITY::GET_OFFSET_FROM_ENTITY_IN_WORLD_COORDS(l_130, num3 + (0.2f), 0f, 0f);
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, &num15);
- struct _s = ENTITY::GET_ENTITY_COORDS(l_127, 1);
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, &num18);
- struct _s = &num18;
- struct _s = &num15;
- struct _s = &num18;
- struct _s = &num12;
- if (SYSTEM::VDIST(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8)) < SYSTEM::VDIST(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8)))
- {
- struct _s = &num15;
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, &num12);
- }
- bool flag1 = AI::GET_SCRIPT_TASK_STATUS(l_127, 0x950B6492) != 1;
- bool flag2 = flag1 | (sub_F6B7(l_85, 8192) == 0);
- if (flag2)
- {
- struct _s = &l_124;
- struct _s = &num12;
- }
- if (flag2 & (SYSTEM::VDIST2(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8)) > 0f))
- {
- var num21;
- if (sub_10B44() != 0)
- {
- ENTITY::SET_ENTITY_AS_MISSION_ENTITY(l_127, 0, 1);
- sub_F11F(&l_318, sub_21FD(l_324));
- sub_F0EB(&l_318);
- }
- AI::OPEN_SEQUENCE_TASK(&num21);
- var i26 = rPtr((&num12) + 1);
- AI::TASK_FOLLOW_NAV_MESH_TO_COORD(0, num12, i26, rPtr((&num12) + 2), 1f, -1, 1f, 8192, 0x471C4000);
- struct _s = PED::GET_PED_BONE_COORDS(PLAYER::PLAYER_PED_ID(), 31086, 0f, 0f, 0f);
- AI::TASK_TURN_PED_TO_FACE_COORD(0, rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 0);
- AI::CLOSE_SEQUENCE_TASK(num21);
- AI::TASK_PERFORM_SEQUENCE(l_127, num21);
- AI::CLEAR_SEQUENCE_TASK(&num21);
- struct _s = &num12;
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, &l_124);
- }
- }
- }
- void sub_F0EB(var A_0)
- {
- for (var i = 0; i < rPtr(A_0); i++)
- {
- if (GAMEPLAY::IS_STRING_NULL(getElem(i, A_0, 4)) == 0)
- {
- STREAMING::REQUEST_ANIM_DICT(getElem(i, A_0, 4));
- }
- }
- }
- var sub_F11F(var A_0, var A_1)
- {
- var num3 = 0;
- while (true)
- {
- if (num3 >= rPtr(A_0))
- {
- break;
- }
- if ((GAMEPLAY::IS_STRING_NULL(getElem(num3, A_0, 4)) == 0) && (GAMEPLAY::ARE_STRINGS_EQUAL(getElem(num3, A_0, 4), A_1) != 0))
- {
- return 0;
- }
- num3++;
- }
- var num4 = sub_F184(A_0);
- bool flag1 = num4 < 0;
- if (flag1 | (num4 >= rPtr(A_0)))
- {
- return 0;
- }
- setElem(A_1, num4, A_0, 4);
- return 1;
- }
- var sub_F184(var A_0)
- {
- for (var i = 0; i < rPtr(A_0); i++)
- {
- if (GAMEPLAY::IS_STRING_NULL(getElem(i, A_0, 4)) != 0)
- {
- return i;
- }
- }
- return -1;
- }
- void sub_F1B3()
- {
- if (sub_EDBC(1) != 0)
- {
- if (sub_652(&l_144) == 0)
- {
- sub_F453(&l_144);
- }
- sub_E995();
- var num1 = sub_F435(&l_144, 2f);
- if ((num1 | sub_F6B7(l_85, 8192)) != 0)
- {
- sub_F4AD(&l_85, 2);
- if (sub_CBC5(0) != 0)
- {
- PED::SET_PED_CAN_PLAY_AMBIENT_ANIMS(PLAYER::PLAYER_PED_ID(), 0);
- PED::SET_PED_CAN_PLAY_AMBIENT_BASE_ANIMS(PLAYER::PLAYER_PED_ID(), 0);
- AI::TASK_LOOK_AT_ENTITY(PLAYER::PLAYER_PED_ID(), l_127, -1, 2048, 4);
- sub_EFB0();
- VEHICLE::REMOVE_VEHICLE_WINDOW(l_130, 0);
- sub_F4AD(&l_85, 4);
- g_19604 = 1;
- l_326 = 2;
- }
- else
- {
- sub_BD1C("PROS_NO_MONEY", -1);
- sub_F268();
- sub_2CDE(0);
- l_327 = 0;
- sub_F4AD(&l_85, 0x800000);
- sub_5B4(&l_85, 4);
- g_19604 = 0;
- }
- }
- }
- }
- void sub_F268()
- {
- if (sub_101A1(64) == 0)
- {
- sub_F287(0, 31);
- sub_60D9(64);
- }
- }
- void sub_F287(var A_0, var A_1)
- {
- if (NETWORK::0xD32FA11F() != 0)
- {
- var num1 = NETWORK::NETWORK_IS_GAME_IN_PROGRESS();
- if ((num1 & sub_F320(PLAYER::PLAYER_ID(), 1)) == 0)
- {
- var num9 = NETWORK::NETWORK_IS_GAME_IN_PROGRESS();
- if ((num9 | A_0) != 0)
- {
- bool flag1 = rPtr((&g_80929) + 1066) == 0;
- if (flag1 & (NETWORK::0x25E2DBA9() == 0))
- {
- var num3 = 18;
- if (GAMEPLAY::IS_XBOX360_VERSION() != 0)
- {
- UI::0x2DB9EAB5("BRSCRWTEX", "BRDISTEX", num3, "BRSHETEXBOX", 0, -1, 0, 0, 1);
- }
- else
- {
- UI::0x2DB9EAB5("BRSCRWTEX", "BRDISTEX", num3, "BRSHETEX", 0, -1, 0, 0, 1);
- }
- g_2399236 = A_1;
- wPtr(1, (&g_80929) + 1066);
- }
- }
- }
- }
- }
- var sub_F320(var A_0, var A_1)
- {
- if (((A_1 == null) || (sub_F34C(A_0) == 0)) && (getElem(A_0, &g_1574052, 1136) == -1))
- {
- return 0;
- }
- return 1;
- }
- var sub_F34C(var A_0)
- {
- return sub_F35A(A_0);
- }
- var sub_F35A(var A_0)
- {
- return GAMEPLAY::IS_BIT_SET(rPtr((getElemPtr(A_0, &g_1574052, 1136) + 52) + 4), 0);
- }
- void sub_F374()
- {
- if (l_107 != -1)
- {
- sub_ECBC(&l_107);
- }
- }
- void sub_F388(var A_0, var A_1, var A_2, var A_3, var A_4, var A_5)
- {
- if (rPtr(getElemPtr(A_1, A_0, 40) + 28) == 1)
- {
- }
- setElem(A_2, A_1, A_0, 40);
- strcpy(A_3, getElemPtr(A_1, A_0, 40) + 4, 24);
- wPtr(1, getElemPtr(A_1, A_0, 40) + 28);
- wPtr(A_4, getElemPtr(A_1, A_0, 40) + 32);
- wPtr(A_5, getElemPtr(A_1, A_0, 40) + 36);
- if (g_59842 == 0)
- {
- if (PED::IS_PED_INJURED(A_2) == 0)
- {
- if (rPtr(getElemPtr(A_1, A_0, 40) + 32) == 0)
- {
- PED::SET_PED_CAN_PLAY_AMBIENT_ANIMS(A_2, 0);
- }
- else
- {
- PED::SET_PED_CAN_PLAY_AMBIENT_ANIMS(A_2, 1);
- }
- }
- if (PED::IS_PED_INJURED(A_2) == 0)
- {
- if (rPtr(getElemPtr(A_1, A_0, 40) + 36) == 0)
- {
- PED::SET_PED_CAN_USE_AUTO_CONVERSATION_LOOKAT(A_2, 0);
- }
- else
- {
- PED::SET_PED_CAN_USE_AUTO_CONVERSATION_LOOKAT(A_2, 1);
- }
- }
- }
- }
- var sub_F422(var A_0)
- {
- UI::0x00E20F2D(A_0);
- return UI::0xF63A13EC(0);
- }
- var sub_F435(var A_0, var A_1)
- {
- if (sub_6BF2(A_0, A_1) != 0)
- {
- sub_3612(A_0);
- return 1;
- }
- return 0;
- }
- void sub_F453(var A_0)
- {
- if (sub_652(A_0) == 0)
- {
- sub_E7E(A_0);
- }
- }
- void sub_F46B(var A_0)
- {
- sub_3B5E();
- if ((A_0 | (l_105 == 0)) != null)
- {
- var num3 = 1;
- if (sub_10B44() != 0)
- {
- num3 = 0;
- }
- sub_31E2(num3);
- sub_2CDE(14);
- }
- else
- {
- sub_31E2(0);
- sub_2CDE(15);
- }
- }
- void sub_F4AD(var A_0, var A_1)
- {
- sub_F4BD(A_0, A_1);
- }
- void sub_F4BD(var A_0, var A_1)
- {
- wPtr(rPtr(A_0) | A_1, A_0);
- }
- var sub_F4CE()
- {
- if (g_19605 == 0)
- {
- if (sub_10B44() != 0)
- {
- return 0;
- }
- if (sub_F5ED() == 0)
- {
- return 0;
- }
- if (sub_F507() != 0)
- {
- l_327 = 4;
- return 1;
- }
- }
- return 0;
- }
- var sub_F507()
- {
- struct _s = ENTITY::GET_ENTITY_COORDS(l_127, 1);
- l_129 = VEHICLE::GET_RANDOM_VEHICLE_IN_SPHERE(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 15f, 0, 6);
- var num1 = ENTITY::DOES_ENTITY_EXIST(l_129);
- if ((((num1 & (ENTITY::IS_ENTITY_DEAD(l_129) == 0)) != 0) && (VEHICLE::IS_VEHICLE_DRIVEABLE(l_129, 0) != 0)) && (sub_2A44(&l_129) != 0))
- {
- l_128 = VEHICLE::GET_PED_IN_VEHICLE_SEAT(l_129, -1);
- if ((l_128 != 0) && (sub_F5CB(&l_128) != 0))
- {
- var num3 = ENTITY::GET_ENTITY_MODEL(l_129);
- bool flag1 = num3 != 0xC703DB5F;
- if (flag1 & (num3 != 0xC703DB5F))
- {
- if (ENTITY::IS_ENTITY_A_MISSION_ENTITY(l_128) == 0)
- {
- ENTITY::SET_ENTITY_AS_MISSION_ENTITY(l_128, 1, 0);
- }
- if (ENTITY::IS_ENTITY_A_MISSION_ENTITY(l_129) == 0)
- {
- ENTITY::SET_ENTITY_AS_MISSION_ENTITY(l_129, 1, 0);
- }
- PED::SET_BLOCKING_OF_NON_TEMPORARY_EVENTS(l_128, 1);
- ENTITY::SET_ENTITY_LOAD_COLLISION_FLAG(l_128, 0);
- ENTITY::SET_ENTITY_LOAD_COLLISION_FLAG(l_129, 0);
- return 1;
- }
- }
- }
- l_129 = 0;
- l_128 = 0;
- return 0;
- }
- var sub_F5CB(var A_0)
- {
- if ((PED::IS_PED_INJURED(rPtr(A_0)) == 0) && (PED::IS_PED_MALE(rPtr(A_0)) != 0))
- {
- return 1;
- }
- return 0;
- }
- var sub_F5ED()
- {
- var num1 = ENTITY::IS_ENTITY_DEAD(PLAYER::PLAYER_PED_ID());
- if ((num1 | ENTITY::IS_ENTITY_DEAD(l_127)) != 0)
- {
- return 0;
- }
- return 1;
- }
- var sub_F611()
- {
- bool flag1 = sub_F5ED() == 0;
- if (!(flag1 | sub_F6B7(l_85, 4096)) && (sub_F6B7(l_85, 32) != 0))
- {
- l_327 = 2;
- sub_3033(2);
- sub_F6C6("IS_CUSTOMER_A_PLAYER is TRUE");
- return 1;
- }
- return 0;
- }
- void sub_F655()
- {
- if (((ENTITY::IS_ENTITY_DEAD(l_127) == 0) && (PED::IS_PED_FLEEING(l_127) == 0)) && (AI::GET_SCRIPT_TASK_STATUS(l_127, 0x6BA30179) != 1))
- {
- PED::SET_BLOCKING_OF_NON_TEMPORARY_EVENTS(l_127, 0);
- PED::SET_PED_FLEE_ATTRIBUTES(l_127, 0x30014, 1);
- PED::0x4C684C81(l_127);
- AI::TASK_SMART_FLEE_PED(l_127, PLAYER::PLAYER_PED_ID(), 300f, -1, 1, 0);
- PED::SET_PED_KEEP_TASK(l_127, 1);
- sub_2CDE(15);
- }
- }
- var sub_F6B7(var A_0, var A_1)
- {
- return ((A_0 & A_1) != 0);
- }
- void sub_F6C6(var A_0)
- {
- }
- var sub_F6CE()
- {
- if (PED::IS_PED_INJURED(l_127) != 0)
- {
- return 0;
- }
- if (AI::GET_SCRIPT_TASK_STATUS(l_127, 0x55966344) == 1)
- {
- return 0;
- }
- if (PED::IS_PED_USING_ANY_SCENARIO(l_127) != 0)
- {
- return 0;
- }
- return 1;
- }
- var sub_F704()
- {
- switch (l_331)
- {
- case 0:
- if (sub_10B44() == 0)
- {
- sub_F11F(&l_318, sub_21FD(l_324));
- sub_F0EB(&l_318);
- sub_F6C6("Moving to PROSTITUTE_INIT_STREAMING");
- }
- if (sub_10B44() != 0)
- {
- NETWORK::RESERVE_NETWORK_MISSION_PEDS(1);
- NETWORK::RESERVE_NETWORK_MISSION_VEHICLES(1);
- NETWORK::NETWORK_REQUEST_CONTROL_OF_ENTITY(l_127);
- }
- l_331 = 1;
- break;
- case 1:
- if (sub_10B44() != 0)
- {
- if (sub_10B44() != 0)
- {
- sub_F4AD(&l_85, 0x400000);
- sub_F6C6("Moving to PROSTITUTE_INIT_INIT");
- l_331 = 2;
- }
- break;
- }
- if (sub_F865(&l_318) != 0)
- {
- sub_F4AD(&l_85, 0x400000);
- sub_F6C6("Moving to PROSTITUTE_INIT_INIT");
- l_331 = 2;
- }
- break;
- case 2:
- l_328 = 0;
- l_102 = l_328;
- sub_5B4(&l_85, 512);
- sub_5B4(&l_85, 1024);
- l_327 = 0;
- l_128 = 0;
- l_129 = 0;
- sub_F6C6("Moving to PROSTITUTE_INIT_COMPLETE");
- l_331 = 3;
- break;
- case 3:
- if (PED::IS_PED_INJURED(l_127) != 0)
- {
- break;
- }
- if (sub_10B44() != 0)
- {
- if (NETWORK::NETWORK_HAS_CONTROL_OF_ENTITY(l_127) == 0)
- {
- NETWORK::NETWORK_REQUEST_CONTROL_OF_ENTITY(l_127);
- }
- else
- {
- PED::SET_BLOCKING_OF_NON_TEMPORARY_EVENTS(l_127, 0);
- sub_F388(&l_153, 4, l_127, "Prostitutes", 0, 1);
- PED::SET_PED_CAN_EVASIVE_DIVE(l_127, 0);
- PED::0x033F43FA(l_127);
- return 1;
- }
- break;
- }
- PED::SET_BLOCKING_OF_NON_TEMPORARY_EVENTS(l_127, 0);
- PED::SET_PED_CAN_EVASIVE_DIVE(l_127, 0);
- sub_F388(&l_153, 4, l_127, "Prostitutes", 0, 1);
- return 1;
- }
- return 0;
- }
- var sub_F865(var A_0)
- {
- for (var i = 0; i < rPtr(A_0); i++)
- {
- if ((GAMEPLAY::IS_STRING_NULL(getElem(i, A_0, 4)) == 0) && (STREAMING::HAS_ANIM_DICT_LOADED(getElem(i, A_0, 4)) == 0))
- {
- return 0;
- }
- }
- return 1;
- }
- var sub_F8A8()
- {
- if (((STREAMING::STOP_PLAYER_REMAIN_ARCADE() == 0) || (sub_B25() != 0)) || (sub_F908(l_127, 537.0014f, 119.0252f, 96.0997f, 1) > 8f))
- {
- return 0;
- }
- if (ENTITY::0xACFEB3F9(l_127, 1) == 0)
- {
- if (sub_10B44() != 0)
- {
- ENTITY::SET_ENTITY_AS_MISSION_ENTITY(l_127, 0, 0);
- }
- else
- {
- ENTITY::SET_ENTITY_AS_MISSION_ENTITY(l_127, 1, 1);
- }
- }
- return 1;
- }
- var sub_F908(var A_0, var A_1, var A_2, var A_3, var A_4)
- {
- var num3;
- if (ENTITY::IS_ENTITY_DEAD(A_0) == 0)
- {
- struct _s = ENTITY::GET_ENTITY_COORDS(A_0, 1);
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, &num3);
- }
- else
- {
- struct _s = ENTITY::GET_ENTITY_COORDS(A_0, 0);
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, &num3);
- }
- struct _s = &num3;
- struct _s = &A_1;
- return GAMEPLAY::GET_DISTANCE_BETWEEN_COORDS(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), A_4);
- }
- var sub_F941()
- {
- if (PED::IS_PED_USING_SCENARIO(l_127, sub_2110(0)) != 0)
- {
- if (PED::0x3C30B447(l_127, "amb@world_human_prostitute@crackhooker@base", "base") != 0)
- {
- return 0;
- }
- if (PED::0x3C30B447(l_127, "amb@world_human_prostitute@cokehead@base", "base") != 0)
- {
- return 1;
- }
- }
- if (PED::IS_PED_USING_SCENARIO(l_127, sub_2110(1)) != 0)
- {
- if (PED::0x3C30B447(l_127, "amb@world_human_prostitute@french@base", "base") != 0)
- {
- return 3;
- }
- if (PED::0x3C30B447(l_127, "amb@world_human_prostitute@hooker@base", "base") != 0)
- {
- return 2;
- }
- }
- return -1;
- }
- void sub_F9BA()
- {
- if (ENTITY::IS_ENTITY_DEAD(l_127) == 0)
- {
- bool flag1 = l_325 != 3;
- if (flag1 & (l_325 != 4))
- {
- sub_F9F8(PLAYER::PLAYER_PED_ID());
- }
- else if (l_325 == 3)
- {
- sub_F9F8(l_128);
- }
- }
- }
- void sub_F9F8(var A_0)
- {
- if (ENTITY::IS_ENTITY_DEAD(A_0) == 0)
- {
- if ((sub_10B44() != 0) && (NETWORK::NETWORK_HAS_CONTROL_OF_ENTITY(A_0) == 0))
- {
- NETWORK::NETWORK_REQUEST_CONTROL_OF_ENTITY(A_0);
- }
- else if (sub_E7AD(A_0, l_127, 1) < 30f)
- {
- if (PED::IS_PED_HEADTRACKING_PED(l_127, A_0) == 0)
- {
- if (sub_10B44() != 0)
- {
- if (NETWORK::NETWORK_HAS_CONTROL_OF_ENTITY(l_127) != 0)
- {
- AI::TASK_CLEAR_LOOK_AT(l_127);
- AI::TASK_LOOK_AT_ENTITY(l_127, A_0, -1, 2048, 4);
- }
- }
- else
- {
- AI::TASK_CLEAR_LOOK_AT(l_127);
- AI::TASK_LOOK_AT_ENTITY(l_127, A_0, -1, 2048, 4);
- }
- }
- }
- else if (PED::IS_PED_HEADTRACKING_PED(l_127, A_0) != 0)
- {
- if (sub_10B44() != 0)
- {
- if (NETWORK::NETWORK_HAS_CONTROL_OF_ENTITY(l_127) != 0)
- {
- AI::TASK_CLEAR_LOOK_AT(l_127);
- }
- }
- else
- {
- AI::TASK_CLEAR_LOOK_AT(l_127);
- }
- }
- }
- }
- void sub_FAAB()
- {
- if (g_19604 != 0)
- {
- if ((VEHICLE::IS_VEHICLE_DRIVEABLE(l_130, 0) != 0) && (PED::IS_PED_IN_VEHICLE(l_127, l_130, 0) != 0))
- {
- sub_FB6A();
- }
- }
- else if (PLAYER::GET_PLAYER_WANTED_LEVEL(PLAYER::PLAYER_ID()) <= 0)
- {
- struct _s = ENTITY::GET_ENTITY_COORDS(l_127, 1);
- struct _s = ENTITY::GET_ENTITY_COORDS(PLAYER::PLAYER_PED_ID(), 1);
- bool flag1 = SYSTEM::VDIST2(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8)) < g_19606;
- bool flag2 = flag1 | (g_19606 == 0f);
- if (flag2 & (l_327 != 4))
- {
- struct _s = ENTITY::GET_ENTITY_COORDS(l_127, 1);
- struct _s = ENTITY::GET_ENTITY_COORDS(PLAYER::PLAYER_PED_ID(), 1);
- g_19606 = SYSTEM::VDIST2(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8));
- g_19607 = SCRIPT::GET_ID_OF_THIS_THREAD();
- sub_F4AD(&l_85, 32);
- }
- else if (g_19607 == SCRIPT::GET_ID_OF_THIS_THREAD())
- {
- struct _s = ENTITY::GET_ENTITY_COORDS(l_127, 1);
- struct _s = ENTITY::GET_ENTITY_COORDS(PLAYER::PLAYER_PED_ID(), 1);
- g_19606 = SYSTEM::VDIST2(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8));
- }
- else
- {
- sub_5B4(&l_85, 32);
- }
- }
- }
- void sub_FB6A()
- {
- if (sub_10B44() != 0)
- {
- if (NETWORK::NETWORK_HAS_CONTROL_OF_ENTITY(l_127) != 0)
- {
- PED::SET_PED_RESET_FLAG(l_127, 323, 1);
- }
- }
- else
- {
- PED::SET_PED_RESET_FLAG(l_127, 323, 1);
- }
- }
- void sub_FB99()
- {
- if (l_326 != 12)
- {
- bool flag1 = ENTITY::IS_ENTITY_DEAD(l_127) == 0;
- if (flag1 & (ENTITY::IS_ENTITY_DEAD(PLAYER::PLAYER_PED_ID()) == 0))
- {
- if (sub_FD99() != 0)
- {
- if (sub_10B44() != 0)
- {
- sub_3841(0);
- PED::SET_PED_FLEE_ATTRIBUTES(l_127, 0x30010, 1);
- if (ENTITY::IS_ENTITY_A_MISSION_ENTITY(l_127) == 0)
- {
- ENTITY::SET_ENTITY_AS_MISSION_ENTITY(l_127, 1, 0);
- }
- struct _s = ENTITY::GET_ENTITY_COORDS(PLAYER::PLAYER_PED_ID(), 1);
- AI::TASK_SMART_FLEE_COORD(l_127, rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 200f, -1, 0, 0);
- PED::SET_PED_KEEP_TASK(l_127, 1);
- AI::CLEAR_PED_TASKS(PLAYER::PLAYER_PED_ID());
- sub_10666();
- sub_104E0();
- }
- else
- {
- sub_2CDE(12);
- }
- }
- else if (ENTITY::HAS_ENTITY_BEEN_DAMAGED_BY_ENTITY(l_127, PLAYER::PLAYER_PED_ID(), 1) != 0)
- {
- l_100++;
- if (l_100 >= 2)
- {
- sub_F6C6("prostitute CLASSED AS UNDER ATTACK");
- l_326 = 12;
- }
- else
- {
- sub_F6C6("prostitute BEEN HIT BY PLAYER");
- ENTITY::CLEAR_ENTITY_LAST_DAMAGE_ENTITY(l_127);
- }
- }
- else if (sub_FCA0() != 0)
- {
- sub_FC78();
- l_326 = 12;
- }
- }
- }
- }
- void sub_FC78()
- {
- if (PED::IS_PED_INJURED(l_127) == 0)
- {
- AUDIO::STOP_CURRENT_PLAYING_AMBIENT_SPEECH(l_127);
- AUDIO::0x5C57B85D(l_127, "APOLOGY_NO_TROUBLE", "SPEECH_PARAMS_FORCE_SHOUTED_CRITICAL");
- }
- }
- var sub_FCA0()
- {
- if (PED::IS_PED_IN_ANY_VEHICLE(PLAYER::PLAYER_PED_ID(), 0) != 0)
- {
- if (sub_FCF4() == 0)
- {
- return 0;
- }
- var num3 = PED::GET_VEHICLE_PED_IS_IN(PLAYER::PLAYER_PED_ID(), 0);
- if (VEHICLE::IS_VEHICLE_DRIVEABLE(num3, 0) == 0)
- {
- return 0;
- }
- if (PED::IS_PED_IN_ANY_POLICE_VEHICLE(PLAYER::PLAYER_PED_ID()) != 0)
- {
- return VEHICLE::IS_VEHICLE_SIREN_ON(num3);
- }
- }
- return 0;
- }
- var sub_FCF4()
- {
- if (sub_10B44() == 0)
- {
- return 1;
- }
- if (ENTITY::DOES_ENTITY_EXIST(PED::GET_VEHICLE_PED_IS_IN(PLAYER::PLAYER_PED_ID(), 0)) != 0)
- {
- if (NETWORK::0xD7F934F4(PED::GET_VEHICLE_PED_IS_IN(PLAYER::PLAYER_PED_ID(), 0)) != 0)
- {
- if (VEHICLE::GET_PED_IN_VEHICLE_SEAT(PED::GET_VEHICLE_PED_IS_IN(PLAYER::PLAYER_PED_ID(), 0), -1) == PLAYER::PLAYER_PED_ID())
- {
- if (NETWORK::NETWORK_HAS_CONTROL_OF_ENTITY(PED::GET_VEHICLE_PED_IS_IN(PLAYER::PLAYER_PED_ID(), 0)) != 0)
- {
- if (ENTITY::IS_ENTITY_A_MISSION_ENTITY(PED::GET_VEHICLE_PED_IS_IN(PLAYER::PLAYER_PED_ID(), 0)) == 0)
- {
- ENTITY::SET_ENTITY_AS_MISSION_ENTITY(PED::GET_VEHICLE_PED_IS_IN(PLAYER::PLAYER_PED_ID(), 0), 0, 0);
- }
- return 1;
- }
- NETWORK::NETWORK_REQUEST_CONTROL_OF_ENTITY(PED::GET_VEHICLE_PED_IS_IN(PLAYER::PLAYER_PED_ID(), 0));
- }
- }
- else
- {
- NETWORK::0x31A630A4(PED::GET_VEHICLE_PED_IS_IN(PLAYER::PLAYER_PED_ID(), 0));
- }
- }
- return 0;
- }
- var sub_FD99()
- {
- if ((sub_F6B7(l_85, 4096) == 0) && (sub_E7AD(l_127, PLAYER::PLAYER_PED_ID(), 1) < 30f))
- {
- var num13;
- var num3;
- struct _s = ENTITY::GET_ENTITY_COORDS(l_127, 1);
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 3, &num3);
- struct _s = &num3;
- var num1 = DECISIONEVENT::IS_SHOCKING_EVENT_IN_SPHERE(85, rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 30f);
- if (num1 == 0)
- {
- struct _s = &num3;
- }
- var num9 = num1 | DECISIONEVENT::IS_SHOCKING_EVENT_IN_SPHERE(88, rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 30f);
- if (num9 == 0)
- {
- struct _s = &num3;
- }
- var num10 = num9 | DECISIONEVENT::IS_SHOCKING_EVENT_IN_SPHERE(87, rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 30f);
- if (num10 == 0)
- {
- struct _s = &num3;
- }
- var num11 = num10 | DECISIONEVENT::IS_SHOCKING_EVENT_IN_SPHERE(101, rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 30f);
- if (num11 == 0)
- {
- struct _s = &num3;
- }
- var num12 = num11 | DECISIONEVENT::IS_SHOCKING_EVENT_IN_SPHERE(113, rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 30f);
- if (num12 == 0)
- {
- struct _s = &num3;
- num13 = DECISIONEVENT::IS_SHOCKING_EVENT_IN_SPHERE(111, rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), 30f);
- }
- var num14 = num12 | (num13 & (sub_10B44() == 0));
- if ((num14 | PED::IS_PED_SHOOTING(PLAYER::PLAYER_PED_ID())) != 0)
- {
- if (sub_10B44() == 0)
- {
- PED::SET_BLOCKING_OF_NON_TEMPORARY_EVENTS(l_127, 0);
- }
- sub_F4AD(&l_85, 4096);
- return 1;
- }
- }
- return 0;
- }
- var sub_FE7D()
- {
- var num1 = ENTITY::DOES_ENTITY_EXIST(l_127);
- var num6 = num1 & (ENTITY::IS_ENTITY_DEAD(l_127) == 0);
- if ((num6 & (ENTITY::IS_ENTITY_DEAD(PLAYER::PLAYER_PED_ID()) == 0)) != 0)
- {
- if (PED::IS_PED_INJURED(l_127) == 0)
- {
- if (PED::IS_PED_IN_ANY_VEHICLE(l_127, 0) != 0)
- {
- if (l_326 != 0)
- {
- bool flag2 = sub_FFF6(8) == 0;
- if (!(flag2 & (sub_FFF6(5) == 0)))
- {
- var num8 = sub_FFDC();
- if ((num8 | STREAMING::STOP_PLAYER_REMAIN_ARCADE()) == 0)
- {
- sub_F6C6("prostitute SCRIPT SHOULD EXIT - PLAYER ON MISSION");
- sub_31E2(0);
- sub_2CDE(15);
- goto Label_0205;
- }
- }
- return 1;
- }
- sub_F6C6("prostitute SCRIPT SHOULD EXIT - prostitute IN VEHICLE");
- }
- else if (sub_FFF6(8) != 0)
- {
- var num7 = sub_FFDC();
- if ((num7 | STREAMING::STOP_PLAYER_REMAIN_ARCADE()) != 0)
- {
- return 1;
- }
- sub_F6C6("prostitute SCRIPT SHOULD EXIT - PLAYER ON MISSION");
- sub_2CDE(15);
- }
- else
- {
- bool flag1 = ENTITY::IS_ENTITY_DEAD(l_127) == 0;
- if (flag1 & (ENTITY::IS_ENTITY_DEAD(PLAYER::PLAYER_PED_ID()) == 0))
- {
- if (ENTITY::IS_ENTITY_AT_ENTITY(l_127, PLAYER::PLAYER_PED_ID(), 100f, 100f, 50f, 0, 1, 0) != 0)
- {
- return 1;
- }
- sub_F6C6("prostitute SCRIPT SHOULD EXIT - PLAYER WALKED AWAY FROM CAR");
- sub_2CDE(15);
- }
- }
- }
- else
- {
- sub_F6C6("prostitute SCRIPT SHOULD EXIT - INJURED");
- }
- }
- Label_0205:
- if (ENTITY::DOES_ENTITY_EXIST(l_127) == 0)
- {
- sub_F6C6("prostitute SCRIPT SHOULD EXIT - Prostitute doesn't exist");
- }
- if (ENTITY::IS_ENTITY_DEAD(l_127) != 0)
- {
- sub_F6C6("prostitute SCRIPT SHOULD EXIT - Prostitute is dead");
- }
- if (ENTITY::IS_ENTITY_DEAD(PLAYER::PLAYER_PED_ID()) != 0)
- {
- sub_F6C6("prostitute SCRIPT SHOULD EXIT - Player is dead");
- }
- return 0;
- }
- var sub_FFDC()
- {
- if (SCRIPT::0x029D3841(0xAB140056) > 0)
- {
- return 1;
- }
- return 0;
- }
- var sub_FFF6(var A_0)
- {
- if (g_29814 == 12)
- {
- return 0;
- }
- if (sub_1001A(A_0) != 0)
- {
- return 0;
- }
- return 1;
- }
- var sub_1001A(var A_0)
- {
- return sub_1002B(A_0, g_29814);
- }
- var sub_1002B(var A_0, var A_1)
- {
- if (A_1 == 12)
- {
- return 1;
- }
- if (A_0 != 12)
- {
- var num3 = A_0;
- switch (num3)
- {
- case 13:
- {
- bool flag1 = A_1 == 8;
- if (flag1 | (A_1 == 9))
- {
- return 0;
- }
- return 1;
- }
- case 0:
- num3 = A_1;
- if ((num3 != 5) && (num3 != 14))
- {
- break;
- }
- return 1;
- case 2:
- case 3:
- num3 = A_1;
- if (((num3 != 5) && (num3 != 6)) && ((num3 != 7) && (num3 != 14)))
- {
- break;
- }
- return 1;
- case 4:
- switch (A_1)
- {
- case 14:
- return 1;
- }
- break;
- default:
- if (num3 != 5)
- {
- if ((num3 == 6) || (num3 == 7))
- {
- if (A_1 != 5)
- {
- break;
- }
- return 1;
- }
- if (num3 == 8)
- {
- if (A_1 != 5)
- {
- break;
- }
- return 1;
- }
- if (num3 == 9)
- {
- num3 = A_1;
- if (((num3 != 5) && (num3 != 6)) && (num3 != 14))
- {
- break;
- }
- return 1;
- }
- if (num3 == 10)
- {
- if (A_1 != 5)
- {
- break;
- }
- return 1;
- }
- if (num3 == 14)
- {
- num3 = A_1;
- if (((num3 != 14) && (num3 != 11)) && (num3 != 5))
- {
- break;
- }
- return 1;
- }
- if ((num3 == 15) || (num3 == 11))
- {
- switch (A_1)
- {
- case 5:
- case 6:
- return 1;
- }
- break;
- }
- }
- break;
- }
- }
- return 0;
- }
- var sub_101A1(var A_0)
- {
- return sub_F6B7(l_88, A_0);
- }
- void sub_101B1()
- {
- for (var i = 0; i < SCRIPT::GET_NUMBER_OF_EVENTS(1); i++)
- {
- if (SCRIPT::GET_EVENT_AT_INDEX(1, i) == 165)
- {
- var num5;
- SCRIPT::GET_EVENT_DATA(1, i, &num5, 2);
- if ((num5 == 166) && (rPtr((&num5) + 1) == PLAYER::PLAYER_ID()))
- {
- sub_60D9(128);
- }
- }
- }
- }
- void sub_10202()
- {
- if ((NETWORK::NETWORK_IS_GAME_IN_PROGRESS() != 0) && (((NETWORK::GET_NUM_RESERVED_MISSION_PEDS(0) != 1) && (sub_10236(1, 0, 1) != 0)) && (NETWORK::0xD8FEC4F8(0) <= 1)))
- {
- NETWORK::RESERVE_NETWORK_MISSION_PEDS(1);
- }
- }
- var sub_10236(var A_0, var A_1, var A_2)
- {
- return sub_1024A(0, A_0, 1, A_1, A_2);
- }
- var sub_1024A(var A_0, var A_1, var A_2, var A_3, var A_4)
- {
- if (GAMEPLAY::IS_BIT_SET(g_1375232, 0) != 0)
- {
- var num3;
- var num4;
- var var1 = A_2 & (A_3 == 0);
- if ((var1 & (A_1 <= sub_103CC(A_0, 0))) != null)
- {
- return 1;
- }
- if (A_3 != null)
- {
- if (A_2 != null)
- {
- num3 = (A_1) - sub_103CC(A_0, 0);
- }
- else
- {
- num3 = A_1;
- }
- num4 = sub_1038C(A_0) - sub_10346(A_0);
- }
- else
- {
- if (A_2 != null)
- {
- num3 = (A_1) - sub_103CC(A_0, 0);
- }
- else
- {
- num3 = A_1;
- }
- num4 = sub_1038C(A_0) - sub_103CC(A_0, 1);
- }
- bool flag1 = A_4 == 0;
- if (flag1 & (getElem(PLAYER::PLAYER_ID(), &g_1574052, 1136) != 3))
- {
- num4 -= sub_1030C(A_0);
- }
- if (num3 < num4)
- {
- return 1;
- }
- }
- return 0;
- }
- var sub_1030C(var A_0)
- {
- switch (A_0)
- {
- case 0:
- return 10;
- case 1:
- return 10;
- case 2:
- return 10;
- }
- return 0;
- }
- var sub_10346(var A_0)
- {
- switch (A_0)
- {
- case 0:
- return rPtr((&g_1375232) + 1);
- case 1:
- return rPtr((&g_1375232) + 2);
- case 2:
- return rPtr((&g_1375232) + 3);
- }
- return 0;
- }
- var sub_1038C(var A_0)
- {
- switch (A_0)
- {
- case 0:
- return g_1375240;
- case 1:
- return g_1375241;
- case 2:
- return g_1375242;
- }
- return 0;
- }
- var sub_103CC(var A_0, var A_1)
- {
- var num3 = PLAYER::PLAYER_ID();
- switch (A_0)
- {
- case 0:
- if (NETWORK::NETWORK_GET_THIS_SCRIPT_IS_NETWORK_SCRIPT() != 0)
- {
- return NETWORK::GET_NUM_RESERVED_MISSION_PEDS((A_1 == 0));
- }
- return rPtr(getElemPtr(num3, &g_2387077, 868) + 708);
- case 1:
- if (NETWORK::NETWORK_GET_THIS_SCRIPT_IS_NETWORK_SCRIPT() != 0)
- {
- return NETWORK::GET_NUM_RESERVED_MISSION_VEHICLES((A_1 == 0));
- }
- return rPtr(getElemPtr(num3, &g_2387077, 868) + 712);
- case 2:
- if (NETWORK::NETWORK_GET_THIS_SCRIPT_IS_NETWORK_SCRIPT() != 0)
- {
- return NETWORK::GET_NUM_RESERVED_MISSION_OBJECTS((A_1 == 0));
- }
- return rPtr(getElemPtr(num3, &g_2387077, 868) + 716);
- }
- return 0;
- }
- void sub_10463(var A_0)
- {
- if (sub_F6B7(l_88, A_0) != 0)
- {
- sub_5B4(&l_88, A_0);
- }
- }
- void sub_1047E()
- {
- sub_2B3(0);
- if (ENTITY::DOES_ENTITY_EXIST(l_127) != 0)
- {
- if (ENTITY::IS_ENTITY_DEAD(l_127) == 0)
- {
- sub_2B3(1);
- }
- else
- {
- sub_F6C6("Prostitue: not continuing, prostitue is dead");
- }
- }
- else
- {
- sub_F6C6("Prostitue: not continuing, prostitue doesn't exist");
- }
- bool flag1 = PLAYER::IS_PLAYER_PLAYING(PLAYER::PLAYER_ID()) == 0;
- if (flag1 | ENTITY::IS_ENTITY_DEAD(PLAYER::PLAYER_PED_ID()))
- {
- sub_2B3(0);
- sub_F6C6("Prostitue: not continuing, player isn't player or is dead");
- }
- }
- void sub_104E0()
- {
- sub_105EF();
- if ((PED::IS_PED_INJURED(l_127) == 0) && (ENTITY::IS_ENTITY_A_MISSION_ENTITY(l_127) != 0))
- {
- ENTITY::SET_PED_AS_NO_LONGER_NEEDED(&l_127);
- AUDIO::STOP_CURRENT_PLAYING_AMBIENT_SPEECH(l_127);
- }
- l_85 = 0;
- if (sub_F6B7(l_85, 64) != 0)
- {
- g_19605 = 0;
- }
- if (PED::IS_PED_INJURED(l_128) == 0)
- {
- AI::CLEAR_PED_TASKS(l_128);
- }
- l_128 = 0;
- l_327 = 0;
- if (sub_F6B7(l_85, 2048) != 0)
- {
- PLAYER::SET_PLAYER_CONTROL(PLAYER::PLAYER_ID(), 1, 0);
- }
- sub_5B4(&l_85, 2048);
- sub_105DD();
- if ((sub_10B44() != 0) && (PATHFIND::0x4B67D7EE(l_118) != 0))
- {
- PATHFIND::REMOVE_NAVMESH_BLOCKING_OBJECT(l_118);
- }
- l_129 = 0;
- sub_105EF();
- sub_105D5();
- g_19606 = 0f;
- STREAMING::CLEAR_FOCUS();
- if (PLAYER::IS_PLAYER_PLAYING(PLAYER::PLAYER_ID()) != 0)
- {
- PLAYER::SET_PLAYER_CAN_DO_DRIVE_BY(PLAYER::PLAYER_ID(), 1);
- }
- if ((ENTITY::IS_ENTITY_DEAD(PLAYER::PLAYER_PED_ID()) == 0) && (sub_101A1(256) != 0))
- {
- PED::SET_PED_COMPONENT_VARIATION(PLAYER::PLAYER_PED_ID(), 6, l_119, l_120, 0);
- }
- var num1 = sub_F422("PROS_ACCEPT");
- if ((num1 & (g_19604 == 0)) != 0)
- {
- UI::CLEAR_HELP(1);
- }
- SCRIPT::TERMINATE_THIS_THREAD();
- }
- void sub_105D5()
- {
- }
- void sub_105DD()
- {
- wPtr(0, ((&g_2390986) + 549) + 10);
- }
- void sub_105EF()
- {
- }
- void sub_105F7(var A_0)
- {
- if (PED::IS_PED_INJURED(l_127) == 0)
- {
- if ((PED::IS_PED_IN_ANY_VEHICLE(l_127, 0) != 0) && (AI::GET_SCRIPT_TASK_STATUS(l_127, 0xCE98FBB3) != 1))
- {
- AI::TASK_LEAVE_ANY_VEHICLE(l_127, 0, 0);
- }
- if (A_0 != null)
- {
- if (sub_10B44() != 0)
- {
- if (((ENTITY::IS_ENTITY_A_MISSION_ENTITY(l_127) != 0) && (NETWORK::0xEDA68956(l_127) != 0)) && (NETWORK::0xEA5176C0(NETWORK::NETWORK_GET_NETWORK_ID_FROM_ENTITY(l_127)) != 0))
- {
- PED::SET_PED_KEEP_TASK(l_127, 1);
- }
- }
- else
- {
- PED::SET_PED_KEEP_TASK(l_127, 1);
- }
- }
- }
- }
- void sub_10666()
- {
- if (sub_10B44() == 0)
- {
- bool flag1 = l_326 == 11;
- if (flag1 | (l_326 == 13))
- {
- return;
- }
- }
- if (ENTITY::IS_ENTITY_DEAD(l_127) == 0)
- {
- if (PED::IS_PED_FLEEING(l_127) == 0)
- {
- sub_2CDE(0);
- l_325 = 1;
- }
- if (ENTITY::IS_ENTITY_DEAD(l_127) == 0)
- {
- if (sub_10B44() != 0)
- {
- if (NETWORK::NETWORK_HAS_CONTROL_OF_ENTITY(l_127) != 0)
- {
- PED::RESET_PED_IN_VEHICLE_CONTEXT(l_127);
- }
- }
- else
- {
- PED::RESET_PED_IN_VEHICLE_CONTEXT(l_127);
- }
- }
- AUDIO::0x308ED0EC(l_127, 0);
- }
- var num1 = VEHICLE::IS_VEHICLE_DRIVEABLE(l_130, 0);
- if ((num1 & (ENTITY::IS_ENTITY_DEAD(l_130) == 0)) != 0)
- {
- if (sub_10B44() != 0)
- {
- if (NETWORK::NETWORK_HAS_CONTROL_OF_ENTITY(l_130) != 0)
- {
- VEHICLE::SET_VEHICLE_HANDBRAKE(l_130, 0);
- VEHICLE::SET_VEHICLE_LIGHTS(l_130, 3);
- VEHICLE::SET_VEHICLE_INTERIORLIGHT(l_130, 0);
- }
- }
- else
- {
- VEHICLE::SET_VEHICLE_HANDBRAKE(l_130, 0);
- VEHICLE::SET_VEHICLE_LIGHTS(l_130, 3);
- VEHICLE::SET_VEHICLE_INTERIORLIGHT(l_130, 0);
- }
- }
- sub_10B26(l_109);
- sub_10B26(l_110);
- sub_10B26(l_111);
- sub_10B26(l_112);
- sub_10B26(l_113);
- sub_10B26(l_114);
- sub_10B26(l_115);
- if (ENTITY::IS_ENTITY_DEAD(PLAYER::PLAYER_PED_ID()) == 0)
- {
- AI::TASK_CLEAR_LOOK_AT(PLAYER::PLAYER_PED_ID());
- if (sub_10B44() != 0)
- {
- AI::CLEAR_PED_TASKS(PLAYER::PLAYER_PED_ID());
- }
- PED::SET_PED_CAN_PLAY_AMBIENT_ANIMS(PLAYER::PLAYER_PED_ID(), 1);
- PED::SET_PED_CAN_PLAY_AMBIENT_BASE_ANIMS(PLAYER::PLAYER_PED_ID(), 1);
- }
- if (sub_F6B7(l_85, 2048) != 0)
- {
- PLAYER::SET_PLAYER_CONTROL(PLAYER::PLAYER_ID(), 1, 0);
- }
- sub_5B4(&l_85, 2048);
- CONTROLS::ENABLE_CONTROL_ACTION(2, 19);
- CONTROLS::ENABLE_CONTROL_ACTION(2, 37);
- sub_105DD();
- l_327 = 0;
- if (sub_F6B7(l_85, 4) != 0)
- {
- sub_5B4(&l_85, 4);
- g_19604 = 0;
- }
- if ((sub_F6B7(l_85, 8) != 0) && (STREAMING::HAS_CLIP_SET_LOADED(sub_2B51()) != 0))
- {
- STREAMING::REMOVE_CLIP_SET(sub_2B51());
- }
- sub_10AE8();
- sub_F374();
- var num6 = sub_F422("PROS_ACCEPT");
- var num7 = num6 | sub_F422("PROS_CAM_TOG");
- var num8 = num7 | sub_F422("PROS_RESPONSE");
- if ((num8 | sub_F422("PROS_CAM_OC")) != 0)
- {
- sub_5B4(&l_85, 0x100000);
- UI::CLEAR_HELP(1);
- }
- sub_CBA7(0);
- UI::DISPLAY_RADAR(1);
- if ((sub_F6B7(l_85, 8) != 0) && (STREAMING::HAS_CLIP_SET_LOADED(sub_2B51()) != 0))
- {
- STREAMING::REMOVE_CLIP_SET(sub_2B51());
- }
- sub_3C4C("PROSTITUTES_SOLICIT_SCENE");
- AUDIO::RELEASE_SCRIPT_AUDIO_BANK();
- sub_3841(0);
- CAM::SET_CINEMATIC_BUTTON_ACTIVE(1);
- sub_108E7();
- if ((((sub_10B44() != 0) && (sub_101A1(2) != 0)) && ((PED::IS_PED_IN_ANY_VEHICLE(PLAYER::PLAYER_PED_ID(), 0) != 0) && (NETWORK::0xD7F934F4(PED::GET_VEHICLE_PED_IS_IN(PLAYER::PLAYER_PED_ID(), 0)) != 0))) && (NETWORK::NETWORK_HAS_CONTROL_OF_ENTITY(PED::GET_VEHICLE_PED_IS_IN(PLAYER::PLAYER_PED_ID(), 0)) != 0))
- {
- VEHICLE::SET_VEHICLE_DOORS_LOCKED_FOR_ALL_PLAYERS(PED::GET_VEHICLE_PED_IS_IN(PLAYER::PLAYER_PED_ID(), 0), 0);
- VEHICLE::SET_VEHICLE_DOORS_LOCKED(PED::GET_VEHICLE_PED_IS_IN(PLAYER::PLAYER_PED_ID(), 0), 1);
- }
- sub_5A07(23, 0);
- l_85 = 0;
- l_87 = 0;
- }
- void sub_108E7()
- {
- if ((sub_10AC2() != 0) && (l_84 != 0))
- {
- var num3;
- var num20;
- initArray(&num3, 2);
- initArray(&num20, 2);
- strcpy("GameType", getElemPtr(0, &num3, 32), 32);
- strcpy("Type", getElemPtr(1, &num3, 32), 32);
- strcpy("SP", getElemPtr(0, &num20, 24), 24);
- strcpy("????", getElemPtr(1, &num20, 24), 24);
- if (sub_10989(275, &num20, &num3, 2, -1, 0, 0) != 0)
- {
- STATS::0x7524E27B(131, sub_10980(), 0f);
- STATS::0x7524E27B(117, sub_10976(), 0f);
- STATS::0x7524E27B(118, sub_1096C(), 0f);
- }
- }
- }
- var sub_1096C()
- {
- return l_83;
- }
- var sub_10976()
- {
- return l_82;
- }
- var sub_10980()
- {
- return 0;
- }
- var sub_10989(var A_0, var A_1, var A_2, var A_3, var A_4, var A_5, var A_6)
- {
- var num3;
- if (NETWORK::NETWORK_IS_SIGNED_ONLINE() == 0)
- {
- }
- bool flag1 = NETWORK::NETWORK_PLAYER_IS_CHEATER() == 0;
- bool flag2 = flag1 & NETWORK::NETWORK_HAVE_ONLINE_PRIVILEGES();
- if (!(flag2 & NETWORK::0xC6EA802E()))
- {
- if (NETWORK::NETWORK_PLAYER_IS_CHEATER() != 0)
- {
- }
- if (NETWORK::NETWORK_HAVE_ONLINE_PRIVILEGES() == 0)
- {
- }
- if (NETWORK::0xC6EA802E() == 0)
- {
- }
- return 0;
- }
- int* numPtr1 = &num3 + 2;
- initArray((numPtr1) + 1, 4);
- num3 = A_0;
- if (A_4 == -1)
- {
- if (NETWORK::0xF5F4BD95() != 0)
- {
- var num72;
- var num85;
- struct _s = sub_10AAB(PLAYER::PLAYER_ID());
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 12), rPtrOfs(_s, 16), rPtrOfs(_s, 20), rPtrOfs(_s, 24), rPtrOfs(_s, 28), rPtrOfs(_s, 32), rPtrOfs(_s, 36), rPtrOfs(_s, 40), rPtrOfs(_s, 44), rPtrOfs(_s, 48), 13, &num72);
- if ((NETWORK::NETWORK_CLAN_PLAYER_IS_ACTIVE(&num72) != 0) && (NETWORK::NETWORK_CLAN_PLAYER_GET_DESC(&num85, 35, &num72) != 0))
- {
- wPtr(num85, (&num3) + 1);
- }
- }
- }
- else
- {
- wPtr(A_4, (&num3) + 1);
- }
- wPtr(A_3, (&num3) + 2);
- var num71 = 0;
- while (true)
- {
- if (num71 >= A_3)
- {
- break;
- }
- struct _s = getElemPtr(num71, A_2, 32);
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 12), rPtrOfs(_s, 16), rPtrOfs(_s, 20), rPtrOfs(_s, 24), rPtrOfs(_s, 28), 8, getElemPtr(num71, ((&num3) + 2) + 1, 64));
- struct _s = getElemPtr(num71, A_1, 24);
- sncpy(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 12), rPtrOfs(_s, 16), rPtrOfs(_s, 20), 6, 8, getElemPtr(num71, ((&num3) + 2) + 1, 64) + 32);
- num71++;
- }
- if (A_5 != null)
- {
- struct _s = &num3;
- setStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 12), rPtrOfs(_s, 16), rPtrOfs(_s, 20), rPtrOfs(_s, 24), rPtrOfs(_s, 28), rPtrOfs(_s, 32), rPtrOfs(_s, 36), rPtrOfs(_s, 40), rPtrOfs(_s, 44), rPtrOfs(_s, 48), rPtrOfs(_s, 52), rPtrOfs(_s, 56), rPtrOfs(_s, 60), rPtrOfs(_s, 64), rPtrOfs(_s, 68), rPtrOfs(_s, 72), rPtrOfs(_s, 76), rPtrOfs(_s, 80), rPtrOfs(_s, 84), rPtrOfs(_s, 88), rPtrOfs(_s, 92), rPtrOfs(_s, 96), rPtrOfs(_s, 100), rPtrOfs(_s, 104), rPtrOfs(_s, 108), rPtrOfs(_s, 112), rPtrOfs(_s, 116), rPtrOfs(_s, 120), rPtrOfs(_s, 124), rPtrOfs(_s, 128), rPtrOfs(_s, 132), rPtrOfs(_s, 136), rPtrOfs(_s, 140), rPtrOfs(_s, 144), rPtrOfs(_s, 148), rPtrOfs(_s, 152), rPtrOfs(_s, 156), rPtrOfs(_s, 160), rPtrOfs(_s, 164), rPtrOfs(_s, 168), rPtrOfs(_s, 172), rPtrOfs(_s, 176), rPtrOfs(_s, 180), rPtrOfs(_s, 184), rPtrOfs(_s, 188), rPtrOfs(_s, 192), rPtrOfs(_s, 196), rPtrOfs(_s, 200), rPtrOfs(_s, 204), rPtrOfs(_s, 208), rPtrOfs(_s, 212), rPtrOfs(_s, 216), rPtrOfs(_s, 220), rPtrOfs(_s, 224), rPtrOfs(_s, 228), rPtrOfs(_s, 232), rPtrOfs(_s, 236), rPtrOfs(_s, 240), rPtrOfs(_s, 244), rPtrOfs(_s, 248), rPtrOfs(_s, 252), rPtrOfs(_s, 256), rPtrOfs(_s, 260), rPtrOfs(_s, 264), rPtrOfs(_s, 268), 68, (&g_1835013) + 5);
- }
- if (A_6 == 0)
- {
- var num1 = NETWORK::NETWORK_IS_GAME_IN_PROGRESS();
- if ((num1 & rPtr((&g_2398054) + 3)) != 0)
- {
- STATS::0x62C19A3D(&num3, (&g_1621273) + 8);
- }
- else
- {
- STATS::LEADERBOARDS2_WRITE_DATA(&num3);
- }
- }
- return 1;
- }
- var sub_10AAB(var A_0)
- {
- var num3;
- NETWORK::NETWORK_HANDLE_FROM_PLAYER(A_0, &num3, 13);
- struct _s = &num3;
- return buildStruct(rPtrOfs(_s, 0), rPtrOfs(_s, 4), rPtrOfs(_s, 8), rPtrOfs(_s, 12), rPtrOfs(_s, 16), rPtrOfs(_s, 20), rPtrOfs(_s, 24), rPtrOfs(_s, 28), rPtrOfs(_s, 32), rPtrOfs(_s, 36), rPtrOfs(_s, 40), rPtrOfs(_s, 44), rPtrOfs(_s, 48));
- }
- var sub_10AC2()
- {
- var num1 = NETWORK::NETWORK_IS_SIGNED_ONLINE();
- var num6 = num1 & NETWORK::NETWORK_IS_SIGNED_IN();
- if ((num6 & NETWORK::NETWORK_IS_CLOUD_AVAILABLE()) != 0)
- {
- return 1;
- }
- return 0;
- }
- void sub_10AE8()
- {
- if (sub_F6B7(l_85, 128) != 0)
- {
- sub_E112(39, 0);
- sub_E112(40, 0);
- sub_E112(41, 0);
- sub_E112(42, 0);
- sub_E112(43, 0);
- sub_5B4(&l_85, 128);
- }
- }
- void sub_10B26(var A_0)
- {
- if ((sub_10B44() != 0) && (sub_6A02(A_0) != 0))
- {
- NETWORK::NETWORK_STOP_SYNCHRONISED_SCENE(A_0);
- }
- }
- var sub_10B44()
- {
- return sub_101A1(1);
- }
- var sub_10B51(var A_0, var A_1, var A_2)
- {
- var num3 = NETWORK::NETWORK_GET_SCRIPT_STATUS();
- while (true)
- {
- if (num3 == 2)
- {
- break;
- }
- bool flag1 = num3 == 3;
- bool flag2 = flag1 | (num3 == 4);
- bool flag3 = flag2 | (num3 == 5);
- if (flag3 | (num3 == 6))
- {
- if (A_2 != 0)
- {
- return 0;
- }
- sub_10C66();
- }
- if (sub_10C5A() == 0)
- {
- if (A_0 == 0)
- {
- if (NETWORK::NETWORK_IS_GAME_IN_PROGRESS() == 0)
- {
- if (A_2 != 0)
- {
- return 0;
- }
- sub_10C66();
- }
- if (sub_10C4C() != 0)
- {
- if (A_2 != 0)
- {
- return 0;
- }
- sub_10C66();
- }
- }
- else if (NETWORK::NETWORK_IS_IN_SESSION() == 0)
- {
- if (A_2 != 0)
- {
- return 0;
- }
- sub_10C66();
- }
- }
- SYSTEM::WAIT(0);
- num3 = NETWORK::NETWORK_GET_SCRIPT_STATUS();
- }
- if (A_1 > -1)
- {
- g_1332517 = num3;
- }
- if (A_0 == 0)
- {
- if (NETWORK::NETWORK_IS_GAME_IN_PROGRESS() == 0)
- {
- if (A_2 != 0)
- {
- return 0;
- }
- sub_10C66();
- }
- }
- else if (NETWORK::NETWORK_IS_IN_SESSION() == 0)
- {
- if (A_2 != 0)
- {
- return 0;
- }
- sub_10C66();
- }
- return 1;
- }
- var sub_10C4C()
- {
- return rPtr((&g_2394815) + 10);
- }
- var sub_10C5A()
- {
- return g_1344076;
- }
- void sub_10C66()
- {
- SCRIPT::TERMINATE_THIS_THREAD();
- }
- void sub_10C72()
- {
- sub_60D9(1);
- }
- var sub_10C7F(var A_0, var A_1)
- {
- if ((A_1 != null) && (sub_F34C(A_0) != 0))
- {
- return 1;
- }
- bool flag1 = getElem(A_0, &g_1574052, 1136) == 2;
- bool flag2 = flag1 | (getElem(A_0, &g_1574052, 1136) == 1);
- bool flag3 = flag2 | (getElem(A_0, &g_1574052, 1136) == 0);
- bool flag4 = flag3 | (getElem(A_0, &g_1574052, 1136) == 3);
- if (flag4 | (getElem(A_0, &g_1574052, 1136) == 8))
- {
- return 1;
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement