Attempt to decompile hoverbikeUpdateMovement

This commit is contained in:
Ryan Dwyer
2021-11-29 19:13:24 +10:00
parent 3ffe50ac34
commit 8a674d6abd
13 changed files with 248 additions and 48 deletions
+1 -1
View File
@@ -364,7 +364,7 @@ u32 props[] = {
stdobject(0x0100, MODEL_DD_DESK, PAD_ARK_022F, OBJFLAG_00000008 | OBJFLAG_00000020 | OBJFLAG_00000040 | OBJFLAG_00000080 | OBJFLAG_00000100 | OBJFLAG_ILLUMINATED, OBJFLAG2_IMMUNETOGUNFIRE, 0, 1000)
stdobject(0x0100, MODEL_QUADPOD, PAD_ARK_01B6, OBJFLAG_00000001 | OBJFLAG_00000020 | OBJFLAG_00000040 | OBJFLAG_00000080 | OBJFLAG_00000100 | OBJFLAG_ILLUMINATED, OBJFLAG2_00000001, 0, 1000)
tag(0x1f, 1)
weapon(0x0100, MODEL_CHRDYROCKET, PAD_ARK_01C4, OBJFLAG_00000001 | OBJFLAG_00000100 | OBJFLAG_INVINCIBLE | OBJFLAG_00400000 | OBJFLAG_40000000, OBJFLAG2_00000001, 0, WEAPON_ROCKETLAUNCHER)
weapon(0x0100, MODEL_CHRDYROCKET, PAD_ARK_01C4, OBJFLAG_00000001 | OBJFLAG_00000100 | OBJFLAG_INVINCIBLE | OBJFLAG_00400000 | OBJFLAG_WEAPON_40000000, OBJFLAG2_00000001, 0, WEAPON_ROCKETLAUNCHER)
camera2(0x0000, 0xffff9931, 0xfffea6ce, 0x00003a3e, 0x00410000, 0x00000000, PAD_ARK_001B)
tag(0x06, -1)
camera2(0x0000, 0xffffba1e, 0xfffeba56, 0xffff7356, 0x01560000, 0x00000000, PAD_ARK_001B)
+4 -4
View File
@@ -453,10 +453,10 @@ u32 props[] = {
door(0x0100, MODEL_AF1_INNERDOOR, PAD_CAVE_018F, OBJFLAG_ILLUMINATED | OBJFLAG_DEACTIVATED, OBJFLAG2_AICANNOTUSE, 0, 1000, 0x0000f333, 0x0000e666, 0x00005555, 0x00005555, 0x000007ae, DOORFLAG_0004, DOORTYPE_SLIDING, 0x00000002, 0x00000384, 0x00000000, 0x00000000, 0x00000800)
tag(0x19, 1)
multimonitor(0x0099, MODEL_COMHUB, PAD_CAVE_0154, OBJFLAG_00000002 | OBJFLAG_00000100, OBJFLAG2_00000001, 0, 1000, 3, 3, 3, 0)
hovercar(0x0080, MODEL_TESTERBOT, PAD_CAVE_01BA, OBJFLAG_00000008 | OBJFLAG_20000000 | OBJFLAG_40000000 | OBJFLAG_80000000, 0, 0, 100, 0x0000042e)
hovercar(0x0080, MODEL_HOOVERBOT, PAD_CAVE_01BA, OBJFLAG_00000008 | OBJFLAG_20000000 | OBJFLAG_40000000 | OBJFLAG_80000000, 0, 0, 100, 0x0000042f)
hovercar(0x0080, MODEL_HOOVERBOT, PAD_CAVE_01C3, OBJFLAG_00000008 | OBJFLAG_20000000 | OBJFLAG_40000000 | OBJFLAG_80000000, 0, 0, 100, 0x00000431)
hovercar(0x004c, MODEL_TESTERBOT, PAD_CAVE_01C3, OBJFLAG_00000008 | OBJFLAG_20000000 | OBJFLAG_40000000 | OBJFLAG_80000000, 0, 0, 100, 0x00000432)
hovercar(0x0080, MODEL_TESTERBOT, PAD_CAVE_01BA, OBJFLAG_00000008 | OBJFLAG_20000000 | OBJFLAG_HOVERCAR_40000000 | OBJFLAG_80000000, 0, 0, 100, 0x0000042e)
hovercar(0x0080, MODEL_HOOVERBOT, PAD_CAVE_01BA, OBJFLAG_00000008 | OBJFLAG_20000000 | OBJFLAG_HOVERCAR_40000000 | OBJFLAG_80000000, 0, 0, 100, 0x0000042f)
hovercar(0x0080, MODEL_HOOVERBOT, PAD_CAVE_01C3, OBJFLAG_00000008 | OBJFLAG_20000000 | OBJFLAG_HOVERCAR_40000000 | OBJFLAG_80000000, 0, 0, 100, 0x00000431)
hovercar(0x004c, MODEL_TESTERBOT, PAD_CAVE_01C3, OBJFLAG_00000008 | OBJFLAG_20000000 | OBJFLAG_HOVERCAR_40000000 | OBJFLAG_80000000, 0, 0, 100, 0x00000432)
tag(0x03, 1)
weapon(0x0040, MODEL_SAFEITEM, PAD_CAVE_00D6, OBJFLAG_00000008, 0, OBJFLAG3_00400000, WEAPON_FLIGHTPLANS)
rename_object(-1, WEAPON_FLIGHTPLANS, L_CAVE_020, L_CAVE_021, L_CAVE_022, L_CAVE_023, L_CAVE_024) // "Obtain flight plans from safe."
+18 -18
View File
@@ -342,11 +342,11 @@ u32 props[] = {
door(0x0100, MODEL_G5SAFEDOOR, PAD_DEPO_00C2, OBJFLAG_00000010 | OBJFLAG_DEACTIVATED, OBJFLAG2_AICANNOTUSE, 0, 1000, 0x005a0000, 0x03e80000, 0x00500000, 0x00500000, 0x00001999, 0, DOORTYPE_SWINGING, 0x00000040, 0x00000e10, 0x00000000, 0x00000000, 0x00000300)
tag(OBJ_CMP150_BOND, 1)
weapon(0x0100, MODEL_CHRCMP150, -1, OBJFLAG_40000000, 0, OBJFLAG3_00400000, WEAPON_REMOTEMINE)
weapon(0x0100, MODEL_CHRCMP150, -1, OBJFLAG_WEAPON_40000000, 0, OBJFLAG3_00400000, WEAPON_REMOTEMINE)
rename_object(-1, WEAPON_REMOTEMINE, L_DEPO_066, L_DEPO_067, L_DEPO_068, L_DEPO_069, L_DEPO_070) // ""
tag(OBJ_CMP150_COOP, 1)
weapon(0x0100, MODEL_CHRCMP150, -1, OBJFLAG_40000000, 0, OBJFLAG3_00400000, WEAPON_REMOTEMINE)
weapon(0x0100, MODEL_CHRCMP150, -1, OBJFLAG_WEAPON_40000000, 0, OBJFLAG3_00400000, WEAPON_REMOTEMINE)
rename_object(-1, WEAPON_REMOTEMINE, L_DEPO_066, L_DEPO_067, L_DEPO_068, L_DEPO_069, L_DEPO_070) // ""
glass(0x0100, MODEL_WINDOW, PAD_DEPO_00C0, OBJFLAG_00000002 | OBJFLAG_00000020 | OBJFLAG_00000040 | OBJFLAG_00000100 | OBJFLAG_00000200 | OBJFLAG_ILLUMINATED | OBJFLAG_00000800, OBJFLAG2_00100000, 0, 1000)
@@ -356,34 +356,34 @@ u32 props[] = {
tag(0x23, 4)
tag(0x24, 4)
tag(0x25, 4)
door(0x0100, MODEL_LASDOOR, PAD_DEPO_00D1, OBJFLAG_ILLUMINATED | OBJFLAG_CANNOT_ACTIVATE | OBJFLAG_04000000 | OBJFLAG_40000000, OBJFLAG2_00020000 | OBJFLAG2_THROWTHROUGH, 0, 1000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, DOORFLAG_DAMAGEONCONTACT | DOORFLAG_UNBLOCKABLEOPEN, DOORTYPE_LASER, 0x00000000, 0x0000003c, 0x00000000, 0x00000000, 0x00000000)
door(0x0100, MODEL_LASDOOR, PAD_DEPO_00D2, OBJFLAG_ILLUMINATED | OBJFLAG_CANNOT_ACTIVATE | OBJFLAG_04000000 | OBJFLAG_40000000, OBJFLAG2_00020000 | OBJFLAG2_THROWTHROUGH, 0, 1000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, DOORFLAG_DAMAGEONCONTACT | DOORFLAG_UNBLOCKABLEOPEN, DOORTYPE_LASER, 0x00000000, 0x0000003c, 0x00000000, 0x00000000, 0x00000000)
door(0x0100, MODEL_LASDOOR, PAD_DEPO_00D3, OBJFLAG_ILLUMINATED | OBJFLAG_CANNOT_ACTIVATE | OBJFLAG_04000000 | OBJFLAG_40000000, OBJFLAG2_00020000 | OBJFLAG2_THROWTHROUGH, 0, 1000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, DOORFLAG_DAMAGEONCONTACT | DOORFLAG_UNBLOCKABLEOPEN, DOORTYPE_LASER, 0x00000000, 0x0000003c, 0x00000000, 0x00000000, 0x00000000)
door(0x0100, MODEL_LASDOOR, PAD_DEPO_00D4, OBJFLAG_ILLUMINATED | OBJFLAG_CANNOT_ACTIVATE | OBJFLAG_04000000 | OBJFLAG_40000000, OBJFLAG2_00020000 | OBJFLAG2_THROWTHROUGH, 0, 1000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, DOORFLAG_DAMAGEONCONTACT | DOORFLAG_UNBLOCKABLEOPEN, DOORTYPE_LASER, 0x00000000, 0x0000003c, 0x00000000, 0x00000000, 0x00000000)
door(0x0100, MODEL_LASDOOR, PAD_DEPO_00D1, OBJFLAG_ILLUMINATED | OBJFLAG_CANNOT_ACTIVATE | OBJFLAG_04000000 | OBJFLAG_DOOR_KEEPOPEN, OBJFLAG2_00020000 | OBJFLAG2_THROWTHROUGH, 0, 1000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, DOORFLAG_DAMAGEONCONTACT | DOORFLAG_UNBLOCKABLEOPEN, DOORTYPE_LASER, 0x00000000, 0x0000003c, 0x00000000, 0x00000000, 0x00000000)
door(0x0100, MODEL_LASDOOR, PAD_DEPO_00D2, OBJFLAG_ILLUMINATED | OBJFLAG_CANNOT_ACTIVATE | OBJFLAG_04000000 | OBJFLAG_DOOR_KEEPOPEN, OBJFLAG2_00020000 | OBJFLAG2_THROWTHROUGH, 0, 1000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, DOORFLAG_DAMAGEONCONTACT | DOORFLAG_UNBLOCKABLEOPEN, DOORTYPE_LASER, 0x00000000, 0x0000003c, 0x00000000, 0x00000000, 0x00000000)
door(0x0100, MODEL_LASDOOR, PAD_DEPO_00D3, OBJFLAG_ILLUMINATED | OBJFLAG_CANNOT_ACTIVATE | OBJFLAG_04000000 | OBJFLAG_DOOR_KEEPOPEN, OBJFLAG2_00020000 | OBJFLAG2_THROWTHROUGH, 0, 1000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, DOORFLAG_DAMAGEONCONTACT | DOORFLAG_UNBLOCKABLEOPEN, DOORTYPE_LASER, 0x00000000, 0x0000003c, 0x00000000, 0x00000000, 0x00000000)
door(0x0100, MODEL_LASDOOR, PAD_DEPO_00D4, OBJFLAG_ILLUMINATED | OBJFLAG_CANNOT_ACTIVATE | OBJFLAG_04000000 | OBJFLAG_DOOR_KEEPOPEN, OBJFLAG2_00020000 | OBJFLAG2_THROWTHROUGH, 0, 1000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, DOORFLAG_DAMAGEONCONTACT | DOORFLAG_UNBLOCKABLEOPEN, DOORTYPE_LASER, 0x00000000, 0x0000003c, 0x00000000, 0x00000000, 0x00000000)
tag(0x26, 4)
tag(0x27, 4)
tag(0x28, 4)
tag(0x29, 4)
door(0x0100, MODEL_LASDOOR, PAD_DEPO_00D5, OBJFLAG_ILLUMINATED | OBJFLAG_CANNOT_ACTIVATE | OBJFLAG_04000000 | OBJFLAG_40000000, OBJFLAG2_00020000 | OBJFLAG2_THROWTHROUGH, 0, 1000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, DOORFLAG_DAMAGEONCONTACT | DOORFLAG_UNBLOCKABLEOPEN, DOORTYPE_LASER, 0x00000000, 0x0000003c, 0x00000000, 0x00000000, 0x00000000)
door(0x0100, MODEL_LASDOOR, PAD_DEPO_00D6, OBJFLAG_ILLUMINATED | OBJFLAG_CANNOT_ACTIVATE | OBJFLAG_04000000 | OBJFLAG_40000000, OBJFLAG2_00020000 | OBJFLAG2_THROWTHROUGH, 0, 1000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, DOORFLAG_DAMAGEONCONTACT | DOORFLAG_UNBLOCKABLEOPEN, DOORTYPE_LASER, 0x00000000, 0x0000003c, 0x00000000, 0x00000000, 0x00000000)
door(0x0100, MODEL_LASDOOR, PAD_DEPO_00D7, OBJFLAG_ILLUMINATED | OBJFLAG_CANNOT_ACTIVATE | OBJFLAG_04000000 | OBJFLAG_40000000, OBJFLAG2_00020000 | OBJFLAG2_THROWTHROUGH, 0, 1000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, DOORFLAG_DAMAGEONCONTACT | DOORFLAG_UNBLOCKABLEOPEN, DOORTYPE_LASER, 0x00000000, 0x0000003c, 0x00000000, 0x00000000, 0x00000000)
door(0x0100, MODEL_LASDOOR, PAD_DEPO_00D8, OBJFLAG_ILLUMINATED | OBJFLAG_CANNOT_ACTIVATE | OBJFLAG_04000000 | OBJFLAG_40000000, OBJFLAG2_00020000 | OBJFLAG2_THROWTHROUGH, 0, 1000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, DOORFLAG_DAMAGEONCONTACT | DOORFLAG_UNBLOCKABLEOPEN, DOORTYPE_LASER, 0x00000000, 0x0000003c, 0x00000000, 0x00000000, 0x00000000)
door(0x0100, MODEL_LASDOOR, PAD_DEPO_00D5, OBJFLAG_ILLUMINATED | OBJFLAG_CANNOT_ACTIVATE | OBJFLAG_04000000 | OBJFLAG_DOOR_KEEPOPEN, OBJFLAG2_00020000 | OBJFLAG2_THROWTHROUGH, 0, 1000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, DOORFLAG_DAMAGEONCONTACT | DOORFLAG_UNBLOCKABLEOPEN, DOORTYPE_LASER, 0x00000000, 0x0000003c, 0x00000000, 0x00000000, 0x00000000)
door(0x0100, MODEL_LASDOOR, PAD_DEPO_00D6, OBJFLAG_ILLUMINATED | OBJFLAG_CANNOT_ACTIVATE | OBJFLAG_04000000 | OBJFLAG_DOOR_KEEPOPEN, OBJFLAG2_00020000 | OBJFLAG2_THROWTHROUGH, 0, 1000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, DOORFLAG_DAMAGEONCONTACT | DOORFLAG_UNBLOCKABLEOPEN, DOORTYPE_LASER, 0x00000000, 0x0000003c, 0x00000000, 0x00000000, 0x00000000)
door(0x0100, MODEL_LASDOOR, PAD_DEPO_00D7, OBJFLAG_ILLUMINATED | OBJFLAG_CANNOT_ACTIVATE | OBJFLAG_04000000 | OBJFLAG_DOOR_KEEPOPEN, OBJFLAG2_00020000 | OBJFLAG2_THROWTHROUGH, 0, 1000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, DOORFLAG_DAMAGEONCONTACT | DOORFLAG_UNBLOCKABLEOPEN, DOORTYPE_LASER, 0x00000000, 0x0000003c, 0x00000000, 0x00000000, 0x00000000)
door(0x0100, MODEL_LASDOOR, PAD_DEPO_00D8, OBJFLAG_ILLUMINATED | OBJFLAG_CANNOT_ACTIVATE | OBJFLAG_04000000 | OBJFLAG_DOOR_KEEPOPEN, OBJFLAG2_00020000 | OBJFLAG2_THROWTHROUGH, 0, 1000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, DOORFLAG_DAMAGEONCONTACT | DOORFLAG_UNBLOCKABLEOPEN, DOORTYPE_LASER, 0x00000000, 0x0000003c, 0x00000000, 0x00000000, 0x00000000)
tag(0x2a, 4)
tag(0x2b, 4)
tag(0x2c, 4)
tag(0x2d, 4)
door(0x0100, MODEL_LASDOOR, PAD_DEPO_00D9, OBJFLAG_ILLUMINATED | OBJFLAG_CANNOT_ACTIVATE | OBJFLAG_04000000 | OBJFLAG_40000000, OBJFLAG2_00020000 | OBJFLAG2_THROWTHROUGH, 0, 1000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, DOORFLAG_DAMAGEONCONTACT | DOORFLAG_UNBLOCKABLEOPEN, DOORTYPE_LASER, 0x00000000, 0x0000003c, 0x00000000, 0x00000000, 0x00000000)
door(0x0100, MODEL_LASDOOR, PAD_DEPO_00DA, OBJFLAG_ILLUMINATED | OBJFLAG_CANNOT_ACTIVATE | OBJFLAG_04000000 | OBJFLAG_40000000, OBJFLAG2_00020000 | OBJFLAG2_THROWTHROUGH, 0, 1000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, DOORFLAG_DAMAGEONCONTACT | DOORFLAG_UNBLOCKABLEOPEN, DOORTYPE_LASER, 0x00000000, 0x0000003c, 0x00000000, 0x00000000, 0x00000000)
door(0x0100, MODEL_LASDOOR, PAD_DEPO_00DB, OBJFLAG_ILLUMINATED | OBJFLAG_CANNOT_ACTIVATE | OBJFLAG_04000000 | OBJFLAG_40000000, OBJFLAG2_00020000 | OBJFLAG2_THROWTHROUGH, 0, 1000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, DOORFLAG_DAMAGEONCONTACT | DOORFLAG_UNBLOCKABLEOPEN, DOORTYPE_LASER, 0x00000000, 0x0000003c, 0x00000000, 0x00000000, 0x00000000)
door(0x0100, MODEL_LASDOOR, PAD_DEPO_00DC, OBJFLAG_ILLUMINATED | OBJFLAG_CANNOT_ACTIVATE | OBJFLAG_04000000 | OBJFLAG_40000000, OBJFLAG2_00020000 | OBJFLAG2_THROWTHROUGH, 0, 1000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, DOORFLAG_DAMAGEONCONTACT | DOORFLAG_UNBLOCKABLEOPEN, DOORTYPE_LASER, 0x00000000, 0x0000003c, 0x00000000, 0x00000000, 0x00000000)
door(0x0100, MODEL_LASDOOR, PAD_DEPO_00D9, OBJFLAG_ILLUMINATED | OBJFLAG_CANNOT_ACTIVATE | OBJFLAG_04000000 | OBJFLAG_DOOR_KEEPOPEN, OBJFLAG2_00020000 | OBJFLAG2_THROWTHROUGH, 0, 1000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, DOORFLAG_DAMAGEONCONTACT | DOORFLAG_UNBLOCKABLEOPEN, DOORTYPE_LASER, 0x00000000, 0x0000003c, 0x00000000, 0x00000000, 0x00000000)
door(0x0100, MODEL_LASDOOR, PAD_DEPO_00DA, OBJFLAG_ILLUMINATED | OBJFLAG_CANNOT_ACTIVATE | OBJFLAG_04000000 | OBJFLAG_DOOR_KEEPOPEN, OBJFLAG2_00020000 | OBJFLAG2_THROWTHROUGH, 0, 1000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, DOORFLAG_DAMAGEONCONTACT | DOORFLAG_UNBLOCKABLEOPEN, DOORTYPE_LASER, 0x00000000, 0x0000003c, 0x00000000, 0x00000000, 0x00000000)
door(0x0100, MODEL_LASDOOR, PAD_DEPO_00DB, OBJFLAG_ILLUMINATED | OBJFLAG_CANNOT_ACTIVATE | OBJFLAG_04000000 | OBJFLAG_DOOR_KEEPOPEN, OBJFLAG2_00020000 | OBJFLAG2_THROWTHROUGH, 0, 1000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, DOORFLAG_DAMAGEONCONTACT | DOORFLAG_UNBLOCKABLEOPEN, DOORTYPE_LASER, 0x00000000, 0x0000003c, 0x00000000, 0x00000000, 0x00000000)
door(0x0100, MODEL_LASDOOR, PAD_DEPO_00DC, OBJFLAG_ILLUMINATED | OBJFLAG_CANNOT_ACTIVATE | OBJFLAG_04000000 | OBJFLAG_DOOR_KEEPOPEN, OBJFLAG2_00020000 | OBJFLAG2_THROWTHROUGH, 0, 1000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, DOORFLAG_DAMAGEONCONTACT | DOORFLAG_UNBLOCKABLEOPEN, DOORTYPE_LASER, 0x00000000, 0x0000003c, 0x00000000, 0x00000000, 0x00000000)
tag(0x2e, 4)
tag(0x2f, 4)
tag(0x30, 4)
tag(0x31, 4)
door(0x0100, MODEL_LASDOOR, PAD_DEPO_00DD, OBJFLAG_ILLUMINATED | OBJFLAG_CANNOT_ACTIVATE | OBJFLAG_04000000 | OBJFLAG_40000000, OBJFLAG2_00020000 | OBJFLAG2_THROWTHROUGH, 0, 1000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, DOORFLAG_DAMAGEONCONTACT | DOORFLAG_UNBLOCKABLEOPEN, DOORTYPE_LASER, 0x00000000, 0x0000003c, 0x00000000, 0x00000001, 0x00000000)
door(0x0100, MODEL_LASDOOR, PAD_DEPO_00DE, OBJFLAG_ILLUMINATED | OBJFLAG_CANNOT_ACTIVATE | OBJFLAG_04000000 | OBJFLAG_40000000, OBJFLAG2_00020000 | OBJFLAG2_THROWTHROUGH, 0, 1000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, DOORFLAG_DAMAGEONCONTACT | DOORFLAG_UNBLOCKABLEOPEN, DOORTYPE_LASER, 0x00000000, 0x0000003c, 0x00000000, 0x00000001, 0x00000000)
door(0x0100, MODEL_LASDOOR, PAD_DEPO_00DF, OBJFLAG_ILLUMINATED | OBJFLAG_CANNOT_ACTIVATE | OBJFLAG_04000000 | OBJFLAG_40000000, OBJFLAG2_00020000 | OBJFLAG2_THROWTHROUGH, 0, 1000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, DOORFLAG_DAMAGEONCONTACT | DOORFLAG_UNBLOCKABLEOPEN, DOORTYPE_LASER, 0x00000000, 0x0000003c, 0x00000000, 0x00000001, 0x00000000)
door(0x0100, MODEL_LASDOOR, PAD_DEPO_00E0, OBJFLAG_ILLUMINATED | OBJFLAG_CANNOT_ACTIVATE | OBJFLAG_04000000 | OBJFLAG_40000000, OBJFLAG2_00020000 | OBJFLAG2_THROWTHROUGH, 0, 1000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, DOORFLAG_DAMAGEONCONTACT | DOORFLAG_UNBLOCKABLEOPEN, DOORTYPE_LASER, 0x00000000, 0x0000003c, 0x00000000, 0xfffffffd, 0x00000000)
door(0x0100, MODEL_LASDOOR, PAD_DEPO_00DD, OBJFLAG_ILLUMINATED | OBJFLAG_CANNOT_ACTIVATE | OBJFLAG_04000000 | OBJFLAG_DOOR_KEEPOPEN, OBJFLAG2_00020000 | OBJFLAG2_THROWTHROUGH, 0, 1000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, DOORFLAG_DAMAGEONCONTACT | DOORFLAG_UNBLOCKABLEOPEN, DOORTYPE_LASER, 0x00000000, 0x0000003c, 0x00000000, 0x00000001, 0x00000000)
door(0x0100, MODEL_LASDOOR, PAD_DEPO_00DE, OBJFLAG_ILLUMINATED | OBJFLAG_CANNOT_ACTIVATE | OBJFLAG_04000000 | OBJFLAG_DOOR_KEEPOPEN, OBJFLAG2_00020000 | OBJFLAG2_THROWTHROUGH, 0, 1000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, DOORFLAG_DAMAGEONCONTACT | DOORFLAG_UNBLOCKABLEOPEN, DOORTYPE_LASER, 0x00000000, 0x0000003c, 0x00000000, 0x00000001, 0x00000000)
door(0x0100, MODEL_LASDOOR, PAD_DEPO_00DF, OBJFLAG_ILLUMINATED | OBJFLAG_CANNOT_ACTIVATE | OBJFLAG_04000000 | OBJFLAG_DOOR_KEEPOPEN, OBJFLAG2_00020000 | OBJFLAG2_THROWTHROUGH, 0, 1000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, DOORFLAG_DAMAGEONCONTACT | DOORFLAG_UNBLOCKABLEOPEN, DOORTYPE_LASER, 0x00000000, 0x0000003c, 0x00000000, 0x00000001, 0x00000000)
door(0x0100, MODEL_LASDOOR, PAD_DEPO_00E0, OBJFLAG_ILLUMINATED | OBJFLAG_CANNOT_ACTIVATE | OBJFLAG_04000000 | OBJFLAG_DOOR_KEEPOPEN, OBJFLAG2_00020000 | OBJFLAG2_THROWTHROUGH, 0, 1000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, DOORFLAG_DAMAGEONCONTACT | DOORFLAG_UNBLOCKABLEOPEN, DOORTYPE_LASER, 0x00000000, 0x0000003c, 0x00000000, 0xfffffffd, 0x00000000)
tag(OBJ_ESCAPEDOOR1, 2)
conditional_scenery(1, 0, 2)
door(0x0100, MODEL_G5_ESCDOORUP, PAD_DEPO_00F0, OBJFLAG_00000100 | OBJFLAG_ILLUMINATED | OBJFLAG_00000800 | OBJFLAG_UNCOLLECTABLE | OBJFLAG_00400000 | OBJFLAG_01000000 | OBJFLAG_CANNOT_ACTIVATE | OBJFLAG_DEACTIVATED, OBJFLAG2_00000100 | OBJFLAG2_00000200 | OBJFLAG2_IMMUNETOGUNFIRE | OBJFLAG2_00100000 | OBJFLAG2_00200000 | OBJFLAG2_AICANNOTUSE, 0, 1000, 0x00000000, 0x00010000, 0x03e80000, 0x03e80000, 0x00010000, 0, DOORTYPE_SLIDING, 0x00000080, 0x00000001, 0x00010000, 0x00000000, 0x00000000)
+8 -8
View File
@@ -264,14 +264,14 @@ u32 props[] = {
tag(0x3f, 1)
door(0x0100, MODEL_DD_GRATE, PAD_EAR_016A, OBJFLAG_ILLUMINATED, OBJFLAG2_AICANNOTUSE | OBJFLAG2_80000000, 0, 1000, 0x0000f333, 0x00010000, 0x00007fff, 0x00014000, 0x00000666, DOORFLAG_UNBLOCKABLEOPEN, DOORTYPE_SLIDING, 0x00000008, 0x00000384, 0x00000000, 0x00000000, 0x00000300)
tag(0x01, 1)
singlemonitor(0x0100, MODEL_TVSCREEN, PAD_EAR_0213, OBJFLAG_00000002 | OBJFLAG_00000020 | OBJFLAG_00000040 | OBJFLAG_DEACTIVATED | OBJFLAG_40000000, OBJFLAG2_00000001, OBJFLAG3_INTERACTABLE, 1000, 3)
singlemonitor(0x0100, MODEL_TVSCREEN, PAD_EAR_0213, OBJFLAG_00000002 | OBJFLAG_00000020 | OBJFLAG_00000040 | OBJFLAG_DEACTIVATED | OBJFLAG_MONITOR_40000000, OBJFLAG2_00000001, OBJFLAG3_INTERACTABLE, 1000, 3)
tag(0x02, 1)
singlemonitor(0x0100, MODEL_TVSCREEN, PAD_EAR_0214, OBJFLAG_00000002 | OBJFLAG_00000020 | OBJFLAG_00000040 | OBJFLAG_DEACTIVATED | OBJFLAG_40000000, OBJFLAG2_00000001, OBJFLAG3_INTERACTABLE, 1000, 3)
singlemonitor(0x0100, MODEL_TVSCREEN, PAD_EAR_0214, OBJFLAG_00000002 | OBJFLAG_00000020 | OBJFLAG_00000040 | OBJFLAG_DEACTIVATED | OBJFLAG_MONITOR_40000000, OBJFLAG2_00000001, OBJFLAG3_INTERACTABLE, 1000, 3)
tag(0x03, 1)
singlemonitor(0x0100, MODEL_TVSCREEN, PAD_EAR_0215, OBJFLAG_00000002 | OBJFLAG_00000020 | OBJFLAG_00000040 | OBJFLAG_DEACTIVATED | OBJFLAG_40000000, OBJFLAG2_00000001, OBJFLAG3_INTERACTABLE, 1000, 3)
singlemonitor(0x0100, MODEL_TVSCREEN, PAD_EAR_0216, OBJFLAG_00000002 | OBJFLAG_00000020 | OBJFLAG_00000040 | OBJFLAG_DEACTIVATED | OBJFLAG_40000000, OBJFLAG2_00000001, 0, 1000, 3)
singlemonitor(0x0100, MODEL_TVSCREEN, PAD_EAR_0217, OBJFLAG_00000002 | OBJFLAG_00000020 | OBJFLAG_00000040 | OBJFLAG_DEACTIVATED | OBJFLAG_40000000, OBJFLAG2_00000001, 0, 1000, 3)
singlemonitor(0x0100, MODEL_TVSCREEN, PAD_EAR_0218, OBJFLAG_00000002 | OBJFLAG_00000020 | OBJFLAG_00000040 | OBJFLAG_DEACTIVATED | OBJFLAG_40000000, OBJFLAG2_00000001, 0, 1000, 3)
singlemonitor(0x0100, MODEL_TVSCREEN, PAD_EAR_0215, OBJFLAG_00000002 | OBJFLAG_00000020 | OBJFLAG_00000040 | OBJFLAG_DEACTIVATED | OBJFLAG_MONITOR_40000000, OBJFLAG2_00000001, OBJFLAG3_INTERACTABLE, 1000, 3)
singlemonitor(0x0100, MODEL_TVSCREEN, PAD_EAR_0216, OBJFLAG_00000002 | OBJFLAG_00000020 | OBJFLAG_00000040 | OBJFLAG_DEACTIVATED | OBJFLAG_MONITOR_40000000, OBJFLAG2_00000001, 0, 1000, 3)
singlemonitor(0x0100, MODEL_TVSCREEN, PAD_EAR_0217, OBJFLAG_00000002 | OBJFLAG_00000020 | OBJFLAG_00000040 | OBJFLAG_DEACTIVATED | OBJFLAG_MONITOR_40000000, OBJFLAG2_00000001, 0, 1000, 3)
singlemonitor(0x0100, MODEL_TVSCREEN, PAD_EAR_0218, OBJFLAG_00000002 | OBJFLAG_00000020 | OBJFLAG_00000040 | OBJFLAG_DEACTIVATED | OBJFLAG_MONITOR_40000000, OBJFLAG2_00000001, 0, 1000, 3)
singlemonitor(0x0100, MODEL_TVSCREEN, PAD_EAR_0219, OBJFLAG_00000002 | OBJFLAG_00000020 | OBJFLAG_00000040, OBJFLAG2_00000001, 0, 1000, 3)
singlemonitor(0x0100, MODEL_TVSCREEN, PAD_EAR_021A, OBJFLAG_00000002 | OBJFLAG_00000020 | OBJFLAG_00000040, OBJFLAG2_00000001, 0, 1000, 3)
singlemonitor(0x0100, MODEL_TVSCREEN, PAD_EAR_021B, OBJFLAG_00000002 | OBJFLAG_00000020 | OBJFLAG_00000040, OBJFLAG2_00000001, 0, 1000, 3)
@@ -455,9 +455,9 @@ u32 props[] = {
tag(0x0a, 1)
singlemonitor(0x0100, MODEL_SINISTERPC, PAD_EAR_025A, OBJFLAG_00000001 | OBJFLAG_00000020 | OBJFLAG_00000040 | OBJFLAG_00000080 | OBJFLAG_ILLUMINATED | OBJFLAG_01000000, OBJFLAG2_00000001, OBJFLAG3_INTERACTABLE, 1000, 3)
tag(0x37, 1)
hovercar(0x00c0, MODEL_HOOVERBOT, PAD_EAR_0001, OBJFLAG_00000008 | OBJFLAG_20000000 | OBJFLAG_40000000 | OBJFLAG_80000000, OBJFLAG2_00000001, 0, 100, 0x00000411)
hovercar(0x00c0, MODEL_HOOVERBOT, PAD_EAR_0001, OBJFLAG_00000008 | OBJFLAG_20000000 | OBJFLAG_HOVERCAR_40000000 | OBJFLAG_80000000, OBJFLAG2_00000001, 0, 100, 0x00000411)
tag(0x38, 1)
hovercar(0x00c0, MODEL_TESTERBOT, PAD_EAR_003B, OBJFLAG_00000008 | OBJFLAG_INVINCIBLE | OBJFLAG_40000000 | OBJFLAG_80000000, OBJFLAG2_00000001, 0, 100, 0x00000412)
hovercar(0x00c0, MODEL_TESTERBOT, PAD_EAR_003B, OBJFLAG_00000008 | OBJFLAG_INVINCIBLE | OBJFLAG_HOVERCAR_40000000 | OBJFLAG_80000000, OBJFLAG2_00000001, 0, 100, 0x00000412)
glass(0x0100, MODEL_WINDOW, PAD_EAR_01B3, OBJFLAG_00000002 | OBJFLAG_00000020 | OBJFLAG_00000040 | OBJFLAG_00000100 | OBJFLAG_00000200 | OBJFLAG_00000800 | OBJFLAG_04000000, OBJFLAG2_IMMUNETOGUNFIRE | OBJFLAG2_00100000, 0, 1000)
glass(0x0100, MODEL_WINDOW, PAD_EAR_01B4, OBJFLAG_00000002 | OBJFLAG_00000020 | OBJFLAG_00000040 | OBJFLAG_00000100 | OBJFLAG_00000200 | OBJFLAG_00000800 | OBJFLAG_04000000, OBJFLAG2_IMMUNETOGUNFIRE | OBJFLAG2_00100000, 0, 1000)
glass(0x0100, MODEL_WINDOW, PAD_EAR_01B8, OBJFLAG_00000002 | OBJFLAG_00000020 | OBJFLAG_00000040 | OBJFLAG_00000100 | OBJFLAG_00000200 | OBJFLAG_00000800 | OBJFLAG_04000000, 0, 0, 1000)
+1 -1
View File
@@ -712,7 +712,7 @@ u32 props[] = {
tag(0x11, 1)
shield(0x0100, MODEL_CHRSHIELD, PAD_ELD_0239, OBJFLAG_00000001, OBJFLAG2_EXCLUDE_SA | OBJFLAG2_EXCLUDE_PA | OBJFLAG2_EXCLUDE_PD, 0, 1000)
stdobject(0x0100, MODEL_A51_CRATE2, PAD_ELD_01EC, OBJFLAG_00000001 | OBJFLAG_00000100 | OBJFLAG_ILLUMINATED, 0, 0, 1000)
weapon(0x0100, MODEL_CHRDEVASTATOR, -1, OBJFLAG_00008000 | OBJFLAG_INVINCIBLE | OBJFLAG_40000000, 0, 0, WEAPON_DEVASTATOR)
weapon(0x0100, MODEL_CHRDEVASTATOR, -1, OBJFLAG_00008000 | OBJFLAG_INVINCIBLE | OBJFLAG_WEAPON_40000000, 0, 0, WEAPON_DEVASTATOR)
tag(0x99, -1)
endprops
};
+1 -1
View File
@@ -277,7 +277,7 @@ u32 props[] = {
#else
stdobject(0x0100, MODEL_DUMPSTER, PAD_PETE_011E, OBJFLAG_00000001 | OBJFLAG_00000020 | OBJFLAG_00000040 | OBJFLAG_00000080 | OBJFLAG_00000100 | OBJFLAG_00400000, OBJFLAG2_IMMUNETOGUNFIRE, OBJFLAG3_PUSHABLE, 1000)
#endif
weapon(0x0100, MODEL_CHRBRIEFCASE, -1, OBJFLAG_00008000 | OBJFLAG_40000000, 0, 0, WEAPON_EYESPY)
weapon(0x0100, MODEL_CHRBRIEFCASE, -1, OBJFLAG_00008000 | OBJFLAG_WEAPON_40000000, 0, 0, WEAPON_EYESPY)
tag(0x24, -1)
stdobject(0x0100, MODEL_BARREL, PAD_PETE_010B, OBJFLAG_00000001 | OBJFLAG_00000020 | OBJFLAG_00000040 | OBJFLAG_00000080 | OBJFLAG_00000100, OBJFLAG2_00000001, 0, 1000)
stdobject(0x0100, MODEL_BARREL, PAD_PETE_010C, OBJFLAG_00000001 | OBJFLAG_00000020 | OBJFLAG_00000040 | OBJFLAG_00000080 | OBJFLAG_00000100, OBJFLAG2_00000001, 0, 1000)
+2 -2
View File
@@ -106,8 +106,8 @@ u32 props[] = {
weapon(0x0100, MODEL_CHRDRAGON, 0x0009, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_DRAGON)
chr(SPAWNFLAG_00000200, 0x0b, PAD_SEV_013A, BODY_AREA51GUARD, HEAD_KEN, AILIST_INIT_LX_GUARD, -1, -1, 1000, 100, CHRFLAG0_00004000 | CHRFLAG0_00008000 | CHRFLAG0_AIVSAI | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_05, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRDY357TRENT, 0x000b, OBJFLAG_ASSIGNEDTOCHR | OBJFLAG_40000000, 0, 0, WEAPON_DY357LX)
weapon(0x0100, MODEL_CHRDY357TRENT, 0x000b, OBJFLAG_ASSIGNEDTOCHR | OBJFLAG_DEACTIVATED | OBJFLAG_40000000, 0, 0, WEAPON_DY357LX)
weapon(0x0100, MODEL_CHRDY357TRENT, 0x000b, OBJFLAG_ASSIGNEDTOCHR | OBJFLAG_WEAPON_40000000, 0, 0, WEAPON_DY357LX)
weapon(0x0100, MODEL_CHRDY357TRENT, 0x000b, OBJFLAG_ASSIGNEDTOCHR | OBJFLAG_DEACTIVATED | OBJFLAG_WEAPON_40000000, 0, 0, WEAPON_DY357LX)
link_guns(-1, -2)
chr(SPAWNFLAG_00000200, 0x0c, PAD_SEV_013D, BODY_AREA51GUARD, HEAD_RANDOM, AILIST_INIT_80HP_GUARD, -1, -1, 1000, 100, CHRFLAG0_00004000 | CHRFLAG0_00008000 | CHRFLAG0_AIVSAI | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_05, -1, 0, 0, 0, 0, 0)
+3 -3
View File
@@ -87,7 +87,7 @@ void bbikeExit(void)
func0f0939f8(NULL, g_Vars.currentplayer->hoverbike, SFX_BIKE_PULSE, -1,
-1, 0, 0, 0, 0, -1, 0, -1, -1, -1, -1);
obj->flags |= OBJFLAG_40000000;
obj->flags |= OBJFLAG_HOVERBIKE_MOVINGWHILEEMPTY;
}
void bbikeUpdateVehicleOffset(void)
@@ -1594,7 +1594,7 @@ void bbikeTick(void)
}
if (g_Vars.currentplayer->bondvehiclemode == VEHICLEMODE_OFF) {
func0f072adc(bike,
hoverbikeUpdateMovement(bike,
g_Vars.currentplayer->speedforwards,
g_Vars.currentplayer->speedsideways,
g_Vars.currentplayer->speedtheta);
@@ -1603,7 +1603,7 @@ void bbikeTick(void)
g_Vars.currentplayer->bondvehiclemode = VEHICLEMODE_RUNNING;
}
func0f072adc(bike,
hoverbikeUpdateMovement(bike,
g_Vars.currentplayer->speedforwards,
g_Vars.currentplayer->speedsideways,
g_Vars.currentplayer->speedtheta);
+1 -1
View File
@@ -1390,7 +1390,7 @@ void setupSingleMonitor(struct singlemonitorobj *monitor, s32 cmdindex)
setupGenericObject(&monitor->base, cmdindex);
}
if (monitor->base.prop && (monitor->base.flags & OBJFLAG_40000000)) {
if (monitor->base.prop && (monitor->base.flags & OBJFLAG_MONITOR_40000000)) {
monitor->base.prop->flags |= PROPFLAG_01;
}
}
+202 -5
View File
@@ -20288,7 +20288,7 @@ glabel var7f1aa320
#if VERSION >= VERSION_PAL_FINAL
GLOBAL_ASM(
glabel func0f072adc
glabel hoverbikeUpdateMovement
.late_rodata
glabel var7f1ab5d0pf
.word 0x3d32b179
@@ -20898,7 +20898,7 @@ glabel var7f1ab654pf
);
#else
GLOBAL_ASM(
glabel func0f072adc
glabel hoverbikeUpdateMovement
.late_rodata
glabel var7f1aa324
.word 0x3d32b179
@@ -21518,6 +21518,203 @@ glabel var7f1aa3b8
);
#endif
// Mismatches:
// Goal loads 1.0f earlier for use with leanmult
// Mine loads 1.0f twice for leanmult
// Mine loads speedfowards twice while goal keeps in f2 (near maxspeedtime240)
//void hoverbikeUpdateMovement(struct hoverbikeobj *bike, f32 speedforwards, f32 speedsideways, f32 speedtheta)
//{
// f32 fVar6;
// f32 angle; // 80
// f32 sinangle; // 7c
// f32 cosangle;
// f32 f2;
// f32 sp70 = 0;
// f32 sp6c = 0;
// f32 sp68 = 0;
// s32 i; // 64
// f32 leanmult;
// f32 fVar7;
// f32 fVar10;
// f32 prevleanspeed;
// u32 stack;
// f32 tmp;
// f32 sp44;
//
// tmp = speedtheta * 0.04362628236413f;
//
// if (speedforwards < 0) {
// tmp *= 1.0f - speedforwards * 0.5f;
// }
//
// for (i = 0; i < g_Vars.lvupdate240_60; i++) {
// bike->w += (tmp - bike->w) * 0.075f;
// }
//
// // b84
// sp6c += bike->w * 12;
// angle = hoverpropGetTurnAngle(&bike->base);
// sinangle = sinf(angle);
// cosangle = cosf(angle);
//
// if (speedforwards >= 0) {
// f2 = (0.1f + speedforwards) * 0.3f * g_Vars.lvupdate240freal;
// } else {
// f2 = (0.1f - speedforwards) * 0.3f * g_Vars.lvupdate240freal;
// }
//
// // c3c
// if (bike->rels[1] < speedforwards * 0.5f) {
// bike->rels[1] += f2;
//
// if (bike->rels[1] > speedforwards * 0.5f) {
// bike->rels[1] = speedforwards * 0.5f;
// }
// } else {
// bike->rels[1] -= f2;
//
// if (bike->rels[1] < speedforwards * 0.5f) {
// bike->rels[1] = speedforwards * 0.5f;
// }
// }
//
// prevleanspeed = bike->leanspeed;
// bike->leanspeed = speedforwards;
// bike->leandiff *= 0.93f;
// bike->leandiff += speedforwards - prevleanspeed;
//
// leanmult = bike->leandiff * 5;
//
// if (leanmult > 1.0f) {
// leanmult = 1.0f;
// } else if (leanmult < -1.0f) {
// leanmult = -1.0f;
// }
//
// // d14
// if (speedforwards >= 0) {
// if (leanmult > 0) {
// fVar7 = speedforwards * 0.3f + speedforwards * 0.7f * leanmult;
// } else {
// fVar7 = speedforwards * 0.3f;
// }
// } else {
// if (leanmult < 0) {
// fVar7 = speedforwards * 0.5f - speedforwards * 0.5f * leanmult;
// } else {
// fVar7 = speedforwards * 0.5f;
// }
// }
//
// // d84
// sp70 += fVar7 * 0.04f * M_BADTAU;
//
// if (speedsideways >= 0) {
// f2 = (0.1f + speedsideways) * 0.3f * g_Vars.lvupdate240freal;
// } else {
// f2 = (0.1f - speedsideways) * 0.3f * g_Vars.lvupdate240freal;
// }
//
// if (bike->rels[0] < speedsideways * 0.4f) {
// bike->rels[0] += f2;
//
// if (bike->rels[0] > speedsideways * 0.4f) {
// bike->rels[0] = speedsideways * 0.4f;
// }
// } else {
// bike->rels[0] -= f2;
//
// if (bike->rels[0] < speedsideways * 0.4f) {
// bike->rels[0] = speedsideways * 0.4f;
// }
// }
//
// sp68 += speedsideways * 0.2512874007225f;
//
// for (i = 0; i < g_Vars.lvupdate240_60; i++) {
// bike->speedabs[1] *= 0.97f;
// bike->speedabs[0] *= 0.97f;
// bike->speedabs[1] += bike->rels[1] * cosangle * 1.08f;
// bike->speedabs[0] += bike->rels[1] * sinangle * 1.08f;
// bike->speedabs[1] += bike->rels[0] * sinangle * 0.72f;
// bike->speedabs[0] += -bike->rels[0] * cosangle * 0.72f;
// }
//
// for (i = 0; i < g_Vars.lvupdate240_60; i++) {
// bike->exreal += (sp70 - bike->exreal) * 0.04f;
// bike->ezreal += (sp6c - bike->ezreal) * 0.15f;
// bike->ezreal2 += (sp68 - bike->ezreal2) * 0.04f;
// }
//
// if (speedforwards >= 0.99f) {
// bike->maxspeedtime240 += g_Vars.lvupdate240;
//
// if (bike->maxspeedtime240 > 2400) {
// bike->maxspeedtime240 = 2400;
// }
// } else if (bike->maxspeedtime240 > 0) {
// if (speedforwards >= 0.8f) {
// // empty
// } else if (speedforwards >= -0.1f) {
// bike->maxspeedtime240 -= g_Vars.lvupdate240;
//
// if (bike->maxspeedtime240 < 0) {
// bike->maxspeedtime240 = 0;
// }
// } else {
// bike->maxspeedtime240 = 0;
// }
// }
//
// bike->speedrel[1] = bike->maxspeedtime240 * 50000.0f / 2400000;
//
// bike->speed[1] = bike->speedabs[1] + bike->speedrel[0] * sinangle + bike->speedrel[1] * cosangle;
// bike->speed[0] = bike->speedabs[0] + bike->speedrel[1] * sinangle - bike->speedrel[0] * cosangle;
//
// if (bike->base.flags & OBJFLAG_HOVERBIKE_MOVINGWHILEEMPTY) {
// if (bike->speed[0] > 0.1f
// || bike->speed[1] > 0.1f
// || bike->w > 0.001f
// || bike->rels[0] > 0.001f
// || bike->rels[1] > 0.001f
// || bike->exreal > 0.001f
// || bike->ezreal > 0.001f
// || bike->ezreal2 > 0.001f
// || bike->leandiff > 0.1f
// || (bike->speed[0] < -0.1f)
// || (bike->speed[1] < -0.1f)
// || (bike->w < -0.001f)
// || (bike->rels[0] < -0.001f)
// || (bike->rels[1] < -0.001f)
// || (bike->exreal < -0.001f)
// || (bike->ezreal < -0.001f)
// || (bike->ezreal2 < -0.001f)
// || (bike->leandiff < -0.1f)) {
// // still moving
// } else {
// bike->speed[0] = 0;
// bike->speed[1] = 0;
// bike->w = 0;
// bike->rels[0] = 0;
// bike->rels[1] = 0;
// bike->exreal = 0;
// bike->ezreal = 0;
// bike->ezreal2 = 0;
// bike->leanspeed = 0;
// bike->leandiff = 0;
// bike->maxspeedtime240 = 0;
// bike->speedabs[0] = 0;
// bike->speedabs[1] = 0;
// bike->speedrel[0] = 0;
// bike->speedrel[1] = 0;
//
// if (1);
//
// bike->base.flags &= ~OBJFLAG_HOVERBIKE_MOVINGWHILEEMPTY;
// }
// }
//}
GLOBAL_ASM(
glabel func0f0732d4
/* f0732d4: 27bdfd58 */ addiu $sp,$sp,-680
@@ -49350,8 +49547,8 @@ void hoverbikeTick(struct prop *prop, bool arg1)
func0f0714b8(&obj->base, &obj->hov);
}
if (obj->base.flags & OBJFLAG_DOOR_KEEPOPEN) {
func0f072adc(obj, 0, 0, 0);
if (obj->base.flags & OBJFLAG_HOVERBIKE_MOVINGWHILEEMPTY) {
hoverbikeUpdateMovement(obj, 0, 0, 0);
}
}
}
@@ -64056,7 +64253,7 @@ s32 weaponGetPickupAmmoQty(struct weaponobj *weapon)
return 1;
}
if (weapon->base.flags & OBJFLAG_DOOR_KEEPOPEN) {
if (weapon->base.flags & OBJFLAG_WEAPON_40000000) {
return 0;
}
+5 -2
View File
@@ -2852,14 +2852,17 @@
#define OBJFLAG_DOOR_OPENTOFRONT 0x20000000
#define OBJFLAG_HOVERCAR_20000000 0x20000000
#define OBJFLAG_WEAPON_AICANNOTUSE 0x20000000
#define OBJFLAG_40000000 0x40000000
#define OBJFLAG_AUTOGUN_ALERTED 0x40000000
#define OBJFLAG_CAMERA_BONDINVIEW 0x40000000
#define OBJFLAG_DOOR_KEEPOPEN 0x40000000 // Editor: "Door open by default/Empty weapon"
#define OBJFLAG_HOVERBIKE_MOVINGWHILEEMPTY 0x40000000
#define OBJFLAG_HOVERCAR_40000000 0x40000000
#define OBJFLAG_LIFT_TRIGGERDISABLE 0x40000000
#define OBJFLAG_MONITOR_40000000 0x40000000
#define OBJFLAG_WEAPON_40000000 0x40000000
#define OBJFLAG_80000000 0x80000000
#define OBJFLAG_DOOR_TWOWAY 0x80000000 // Door swings in both directions
#define OBJFLAG_CHOPPER_INACTIVE 0x80000000 // Or lift disabled, or hovercar something
#define OBJFLAG_DOOR_TWOWAY 0x80000000 // Door swings in both directions
// obj->flags2
#define OBJFLAG2_00000001 0x00000001 // Used only in CI Training
+1 -1
View File
@@ -155,7 +155,7 @@ void hovercarFindNextPath(struct hovercarobj *hovercar);
void hovercarStartNextPath(struct hovercarobj *hovercar);
void hovercarIncrementStep(struct hovercarobj *hovercar);
u32 func0f0727d4(void);
void func0f072adc(struct hoverbikeobj *hoverbike, f32 arg1, f32 arg2, f32 arg3);
void hoverbikeUpdateMovement(struct hoverbikeobj *hoverbike, f32 arg1, f32 arg2, f32 arg3);
u32 func0f0732d4(void);
u32 func0f073478(void);
u32 func0f073ae8(void);
+1 -1
View File
@@ -1981,7 +1981,7 @@ struct hoverbikeobj { // objtype 0x33
/*0x0c0*/ f32 ezreal2;
/*0x0c4*/ f32 leanspeed;
/*0x0c8*/ f32 leandiff;
/*0x0cc*/ u32 maxspeedtime240;
/*0x0cc*/ s32 maxspeedtime240;
/*0x0d0*/ f32 speedabs[2];
/*0x0d8*/ f32 speedrel[2];
};