Skip to content

Instantly share code, notes, and snippets.

@ProdigySim
Last active March 5, 2021 05:12
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ProdigySim/b43c0d0b1151ecfddab96f057cb2cf6d to your computer and use it in GitHub Desktop.
Save ProdigySim/b43c0d0b1151ecfddab96f057cb2cf6d to your computer and use it in GitHub Desktop.
/* TerrorNavArea::SpawnAttributeFromString(char const*) */
uint TerrorNavArea::SpawnAttributeFromString(char *param_1)
{
char cVar1;
int iVar2;
uint uVar3;
/* catch() { ... } // from try @ 0093d106 with catch @ 0093d209 */
uVar3 = 2;
if (param_1 != "empty") {
iVar2 = _V_stricmp(param_1,"empty");
if ((iVar2 != 0) &&
(uVar3 = 4, param_1 != "stop"
/* catch() { ... } // from try @ 0093d053 with catch @ 0093d243
catch() { ... } // from try @ 0093d1a6 with catch @ 0093d243 */)) {
iVar2 = _V_stricmp(param_1,"stop");
if ((iVar2 != 0) && (uVar3 = 0x40, param_1 != "finale")) {
iVar2 = _V_stricmp(param_1,"finale");
if ((iVar2 != 0) && (uVar3 = 0x100, param_1 != "battlefield")) {
iVar2 = _V_stricmp(param_1,"battlefield");
if (iVar2 != 0) {
uVar3 = 0x80;
cVar1 = FStrEq(param_1,"player_start");
if (cVar1 == '\0') {
uVar3 = 0x200;
cVar1 = FStrEq(param_1,"ignore_visibility");
if (cVar1 == '\0') {
uVar3 = 0x400;
cVar1 = FStrEq(param_1,"not_clearable");
if (cVar1 == '\0') {
uVar3 = 0x800;
cVar1 = FStrEq(param_1,"checkpoint");
/* try { // try from 0093d323 to 0093d363 has its CatchHandler @ 0093d516 */
if (cVar1 == '\0') {
uVar3 = 0x1000;
cVar1 = FStrEq(param_1,"obscured");
if (cVar1 == '\0') {
uVar3 = 0x2000;
cVar1 = FStrEq(param_1,"no_mobs");
if (cVar1 == '\0') {
uVar3 = 0x4000;
cVar1 = FStrEq(param_1,"threat");
if (cVar1 == '\0') {
uVar3 = 0x80000;
cVar1 = FStrEq(param_1,"nothreat");
if (cVar1 == '\0') {
uVar3 = 0x100000;
cVar1 = FStrEq(param_1,"lyingdown");
if (cVar1 == '\0') {
uVar3 = 0x10000;
cVar1 = FStrEq(param_1,"rescue_closet");
if (cVar1 == '\0') {
cVar1 = FStrEq(param_1,"rescue_vehicle");
/* try { // try from 0093d3d6 to 0093d464 has its CatchHandler @ 0093d4dc */
uVar3 = ~-(uint)(cVar1 == '\0') & 0x8000;
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
return uVar3;
}
**************************************************************
* spawnAttributeTable *
**************************************************************
spawnAttributeTable[0].attribute XREF[2,6]: DrawDebugTextOverlays:00939904(R
spawnAttributeTable[1].name 00939f96(R),
spawnAttributeTable[1].attribute DrawDebugTextOverlays:009398f8(R
spawnAttributeTable[2].name DrawDebugTextOverlays:009398f8(R
_ZL19spawnAttributeTable DrawDebugTextOverlays:00939904(R
spawnAttributeTable DrawDebugTextOverlays:00939904(R
NameToSpawnAttribute:0093999b(R),
NameToSpawnAttribute:009399b6(R)
00cce2e0 17 39 c1 NavAttri
00 02 00
00 00 a1
00cce2e0 17 39 c1 00 02 NavAttri [0] = "EMPTY" XREF[2,2]: DrawDebugTextOverlays:00939904(R
00 00 00 00939f96(R),
DrawDebugTextOverlays:009398f8(R
NameToSpawnAttribute:009399b6(R)
00cce2e8 a1 c6 cc 00 04 NavAttri [1] = "STOP_SCAN" XREF[2,1]: DrawDebugTextOverlays:00939904(R
00 00 00 NameToSpawnAttribute:0093999b(R),
DrawDebugTextOverlays:009398f8(R
00cce2f0 dc 29 ca 00 40 NavAttri [2] = "FINALE" XREF[1]: DrawDebugTextOverlays:00939904(R
00 00 00
00cce2f8 2e cb cc 00 80 NavAttri [3] = "PLAYER_START"
00 00 00
00cce300 3b cb cc 00 00 NavAttri [4] = "NOT_CLEARABLE"
04 00 00
00cce308 fb ee c7 00 00 NavAttri [5] = "CHECKPOINT"
08 00 00
00cce310 49 cb cc 00 00 NavAttri [6] = "OBSCURED"
10 00 00
00cce318 52 cb cc 00 00 NavAttri [7] = "NO_MOBS"
20 00 00
00cce320 5c cb cc 00 00 NavAttri [8] = "THREAT"
40 00 00
00cce328 5a cb cc 00 00 NavAttri [9] = "NOTHREAT"
00 08 00
00cce330 63 cb cc 00 00 NavAttri [10] = "LYINGDOWN"
00 10 00
00cce338 6d cb cc 00 00 NavAttri [11] = "RESCUE_CLOSET"
00 01 00
00cce340 7b cb cc 00 00 NavAttri [12] = "RESCUE_VEHICLE"
80 00 00
00cce348 be f2 c9 00 00 NavAttri [13] = "BATTLEFIELD"
01 00 00
00cce350 8a cb cc 00 20 NavAttri [14] = "BATTLESTATION"
00 00 00
00cce358 98 cb cc 00 00 NavAttri [15] = "ESCAPE_ROUTE"
00 02 00
00cce360 0d ef c7 00 00 NavAttri [16] = "DOOR"
00 04 00
00cce368 00 00 00 00 02 NavAttri [17]
00 00 00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment