From 8bc7af8cbbf6ef3c68880c05f37604a4a49db071 Mon Sep 17 00:00:00 2001 From: James Haley Date: Thu, 16 Sep 2010 13:06:09 +0000 Subject: Had to majorly deconflict p_doors.c; kept my version of lock switch in EV_VerticalDoor because it had all the types present and no errors such as missing parentheses. Please tell me next time if you're going to start working on the same thing I am doing, as I don't like wasting my entire evening. Subversion-branch: /branches/strife-branch Subversion-revision: 2093 --- src/strife/doomdef.h | 4 +- src/strife/p_dialog.h | 1 + src/strife/p_doors.c | 97 ++++--- src/strife/p_switch.c | 761 +++++++++++++++++++++++++------------------------- 4 files changed, 441 insertions(+), 422 deletions(-) diff --git a/src/strife/doomdef.h b/src/strife/doomdef.h index 4880dac5..eed24a6b 100644 --- a/src/strife/doomdef.h +++ b/src/strife/doomdef.h @@ -240,7 +240,7 @@ typedef enum // haleyjd 09/12/10: [STRIFE] // flag values for each quest. enum -{ // Name Flag from bitnum Purpose, if known +{ // Name Flag from bitnum Purpose, if known QF_QUEST1 = (1 << tk_quest1), QF_QUEST2 = (1 << tk_quest2), QF_QUEST3 = (1 << tk_quest3), @@ -258,7 +258,7 @@ enum QF_QUEST15 = (1 << tk_quest15), QF_QUEST16 = (1 << tk_quest16), QF_QUEST17 = (1 << tk_quest17), - QF_QUEST18 = (1 << tk_quest18), + QF_QUEST18 = (1 << tk_quest18), // Obtained Oracle Pass QF_QUEST19 = (1 << tk_quest19), QF_QUEST20 = (1 << tk_quest20), QF_QUEST21 = (1 << tk_quest21), diff --git a/src/strife/p_dialog.h b/src/strife/p_dialog.h index 9b4829e7..91cc99a8 100644 --- a/src/strife/p_dialog.h +++ b/src/strife/p_dialog.h @@ -78,6 +78,7 @@ void P_DialogDoChoice(int choice); boolean P_GiveItemToPlayer(player_t *player, int sprnum, mobjtype_t type); void P_DialogStartP1(void); mapdialog_t* P_DialogFind(mobjtype_t type, int jumptoconv); +int P_PlayerHasItem(player_t *player, mobjtype_t type); #endif diff --git a/src/strife/p_doors.c b/src/strife/p_doors.c index 2cad5e96..9a536c64 100644 --- a/src/strife/p_doors.c +++ b/src/strife/p_doors.c @@ -41,6 +41,9 @@ #include "dstrings.h" #include "sounds.h" +// [STRIFE] +#include "p_dialog.h" + // // VERTICAL DOORS @@ -549,40 +552,41 @@ void EV_VerticalDoor(line_t* line, mobj_t* thing) // Check for locks player = thing->player; - // villsa [STRIFE] new key types + // haleyjd 09/15/10: [STRIFE] myriad checks here... switch(line->special) { - case 26: - case 32: - if(!player->cards[key_IDBadge]) + case 26: // DR ID Card door + case 32: // D1 ID Card door + if(!player->cards[key_IDCard]) { - player->message = DEH_String("You need an id badge to open this door"); + player->message = DEH_String("You need an id card to open this door"); S_StartSound(NULL, sfx_oof); return; } break; - case 28: - case 33: - if(!player->cards[key_IDCard]) + case 27: // DR Pass Card door + case 34: // D1 Pass Card door + if(!player->cards[key_Passcard]) { - player->message = DEH_String("You need an id card to open this door"); + player->message = DEH_String("You need a pass card key to open this door"); S_StartSound(NULL, sfx_oof); return; } break; - case 27: - case 34: - if(!player->cards[key_Passcard]) + case 28: // DR ID Badge door + case 33: // D1 ID Badge door + if(!player->cards[key_IDBadge]) { - player->message = DEH_String("You need a pass card key to open this door"); + player->message = DEH_String("You need an id badge to open this door"); S_StartSound(NULL, sfx_oof); return; } break; - case 156: + case 156: // D1 brass key door + case 161: // DR brass key door if(!player->cards[key_BrassKey]) { player->message = DEH_String("You need a brass key"); @@ -591,32 +595,27 @@ void EV_VerticalDoor(line_t* line, mobj_t* thing) } break; - case 158: - case 159: - if(!player->cards[key_GoldKey]) + case 157: // D1 silver key door + case 160: // DR silver key door + if(!player->cards[key_SilverKey]) { - player->message = DEH_String("You need a gold key"); + player->message = DEH_String("You need a silver key"); S_StartSound(NULL, sfx_oof); return; } break; - case 157: - case 160: - if(!player->cards[key_SilverKey]) + case 158: // D1 gold key door + case 159: // DR gold key door + if(!player->cards[key_GoldKey]) { - player->message = DEH_String("You need a silver key"); + player->message = DEH_String("You need a gold key"); S_StartSound(NULL, sfx_oof); return; } break; - case 165: - player->message = DEH_String("That doesn't seem to work"); - S_StartSound(NULL, sfx_oof); - return; - - case 166: + case 166: // DR Hand Print door if(!player->cards[key_SeveredHand]) { player->message = DEH_String("Hand print not on file"); @@ -625,7 +624,7 @@ void EV_VerticalDoor(line_t* line, mobj_t* thing) } break; - case 169: + case 169: // DR Base key door if(!player->cards[key_BaseKey]) { player->message = DEH_String("You don't have the key"); @@ -634,7 +633,7 @@ void EV_VerticalDoor(line_t* line, mobj_t* thing) } break; - case 170: + case 170: // DR Gov's Key door if(!player->cards[key_GovsKey]) { player->message = DEH_String("You don't have the key"); @@ -643,7 +642,7 @@ void EV_VerticalDoor(line_t* line, mobj_t* thing) } break; - case 190: + case 190: // DR Order Key door if(!player->cards[key_OrderKey]) { player->message = DEH_String("You don't have the key"); @@ -652,12 +651,13 @@ void EV_VerticalDoor(line_t* line, mobj_t* thing) } break; - case 205: - player->message = DEH_String("THIS AREA IS ONLY AVAILABLE IN THE RETAIL VERSION OF STRIFE"); + case 205: // DR "Only in retail" + player->message = DEH_String("THIS AREA IS ONLY AVAILABLE IN THE " + "RETAIL VERSION OF STRIFE"); S_StartSound(NULL, sfx_oof); return; - case 213: + case 213: // DR Chalice door if(!P_PlayerHasItem(player, MT_INV_CHALICE)) { player->message = DEH_String("You need the chalice!"); @@ -666,7 +666,7 @@ void EV_VerticalDoor(line_t* line, mobj_t* thing) } break; - case 217: + case 217: // DR Core Key door if(!player->cards[key_CoreKey]) { player->message = DEH_String("You don't have the key"); @@ -675,7 +675,7 @@ void EV_VerticalDoor(line_t* line, mobj_t* thing) } break; - case 221: + case 221: // DR Mauler Key door if(!player->cards[key_MaulerKey]) { player->message = DEH_String("You don't have the key"); @@ -684,7 +684,7 @@ void EV_VerticalDoor(line_t* line, mobj_t* thing) } break; - case 224: + case 224: // DR Chapel Key door if(!player->cards[key_ChapelKey]) { player->message = DEH_String("You don't have the key"); @@ -693,7 +693,7 @@ void EV_VerticalDoor(line_t* line, mobj_t* thing) } break; - case 225: + case 225: // DR Catacomb Key door if(!player->cards[key_CatacombKey]) { player->message = DEH_String("You don't have the key"); @@ -702,20 +702,28 @@ void EV_VerticalDoor(line_t* line, mobj_t* thing) } break; - case 232: - if(!player->questflags & QF_QUEST2) + case 232: // DR Oracle Pass door + if(!(player->questflags & QF_QUEST18)) { player->message = DEH_String("You need the Oracle Pass!"); S_StartSound(NULL, sfx_oof); return; } break; + + default: + break; } // if the sector has an active thinker, use it sec = sides[ line->sidenum[side^1]] .sector; secnum = sec-sectors; + + // STRIFE-TODO: retriggering logic was modified, and has a serious bug in that + // some linetypes are allowed to fall through and start multiple thinkers on a + // single sector - this must be carefully replicated + if (sec->specialdata) { door = sec->specialdata; @@ -726,7 +734,7 @@ void EV_VerticalDoor(line_t* line, mobj_t* thing) case 27: case 28: case 117: - case 159: // villsa [STRIFE] + case 159: // villsa [STRIFE] -- haleyjd 09/16/10: STRIFE-TODO: verify all this case 161: // villsa [STRIFE] case 166: // villsa [STRIFE] case 169: // villsa [STRIFE] @@ -780,6 +788,8 @@ void EV_VerticalDoor(line_t* line, mobj_t* thing) } } + // haleyjd 09/15/10: [STRIFE] Removed DOOM door sounds + // new door thinker door = Z_Malloc (sizeof(*door), PU_LEVSPEC, 0); P_AddThinker (&door->thinker); @@ -789,7 +799,9 @@ void EV_VerticalDoor(line_t* line, mobj_t* thing) door->direction = 1; door->speed = VDOORSPEED; door->topwait = VDOORWAIT; - R_SoundNumForDoor(door); // villsa [STRIFE] set door sounds + R_SoundNumForDoor(door); // haleyjd 09/15/10: [STRIFE] Get door sounds + + // STRIFE-TODO: handle all door types, old and new. // for proper sound switch(line->special) @@ -804,6 +816,7 @@ void EV_VerticalDoor(line_t* line, mobj_t* thing) break; } + // haleyjd: STRIFE-TODO: verify all of this. switch(line->special) { case 1: diff --git a/src/strife/p_switch.c b/src/strife/p_switch.c index e18ecb6f..0904c035 100644 --- a/src/strife/p_switch.c +++ b/src/strife/p_switch.c @@ -447,404 +447,409 @@ static void P_MoveWall(line_t *line, mobj_t *thing) // boolean P_UseSpecialLine -( mobj_t* thing, - line_t* line, - int side ) -{ - +( mobj_t* thing, + line_t* line, + int side ) +{ // Err... // Use the back sides of VERY SPECIAL lines... if (side) { - switch(line->special) - { - case 124: - // Sliding door open&close - // UNUSED? - break; + switch(line->special) + { + case 148: // haleyjd [STRIFE] + break; - default: - return false; - break; - } + default: + return false; + break; + } } // Switches that other things can activate. if (!thing->player) { - // never open secret doors - if (line->flags & ML_SECRET) - return false; - - switch(line->special) - { - case 1: // MANUAL DOOR RAISE - case 32: // MANUAL BLUE - case 33: // MANUAL RED - case 34: // MANUAL YELLOW - break; - - default: - return false; - break; - } + // never open secret doors + if (line->flags & ML_SECRET) + return false; + + switch(line->special) + { + case 1: // MANUAL DOOR RAISE + case 144: // haleyjd [STRIFE] Manual sliding door + break; + + default: + return false; + break; + } } + // [STRIFE] TODO: here on down mostly untouched so far, + // except for a few new types at the bottom. // do something switch (line->special) { - // MANUALS - case 1: // Vertical Door - case 26: // Blue Door/Locked - case 27: // Yellow Door /Locked - case 28: // Red Door /Locked - - case 31: // Manual door open - case 32: // Blue locked door open - case 33: // Red locked door open - case 34: // Yellow locked door open - - case 117: // Blazing door raise - case 118: // Blazing door open - EV_VerticalDoor (line, thing); - break; - - // SWITCHES - case 7: - // Build Stairs - if (EV_BuildStairs(line,build8)) - P_ChangeSwitchTexture(line,0); - break; - - case 9: - // Change Donut - if (EV_DoDonut(line)) - P_ChangeSwitchTexture(line,0); - break; - - case 11: - // Exit level - P_ChangeSwitchTexture(line,0); - G_ExitLevel (0); - break; - - case 14: - // Raise Floor 32 and change texture - if (EV_DoPlat(line,raiseAndChange,32)) - P_ChangeSwitchTexture(line,0); - break; - - case 15: - // Raise Floor 24 and change texture - if (EV_DoPlat(line,raiseAndChange,24)) - P_ChangeSwitchTexture(line,0); - break; - - case 18: - // Raise Floor to next highest floor - if (EV_DoFloor(line, raiseFloorToNearest)) - P_ChangeSwitchTexture(line,0); - break; - - case 20: - // Raise Plat next highest floor and change texture - if (EV_DoPlat(line,raiseToNearestAndChange,0)) - P_ChangeSwitchTexture(line,0); - break; - - case 21: - // PlatDownWaitUpStay - if (EV_DoPlat(line,downWaitUpStay,0)) - P_ChangeSwitchTexture(line,0); - break; - - case 23: - // Lower Floor to Lowest - if (EV_DoFloor(line,lowerFloorToLowest)) - P_ChangeSwitchTexture(line,0); - break; - - case 29: - // Raise Door - if (EV_DoDoor(line,normal)) - P_ChangeSwitchTexture(line,0); - break; - - case 40: - // villsa [STRIFE] Split Open Door + // MANUALS + case 1: // Vertical Door + case 26: // Blue Door/Locked + case 27: // Yellow Door /Locked + case 28: // Red Door /Locked + + case 31: // Manual door open + case 32: // Blue locked door open + case 33: // Red locked door open + case 34: // Yellow locked door open + + case 117: // Blazing door raise + case 118: // Blazing door open + EV_VerticalDoor (line, thing); + break; + + // SWITCHES + case 7: + // Build Stairs + if (EV_BuildStairs(line,build8)) + P_ChangeSwitchTexture(line,0); + break; + + case 9: + // Change Donut + if (EV_DoDonut(line)) + P_ChangeSwitchTexture(line,0); + break; + + case 11: + // Exit level + P_ChangeSwitchTexture(line,0); + G_ExitLevel (0); + break; + + case 14: + // Raise Floor 32 and change texture + if (EV_DoPlat(line,raiseAndChange,32)) + P_ChangeSwitchTexture(line,0); + break; + + case 15: + // Raise Floor 24 and change texture + if (EV_DoPlat(line,raiseAndChange,24)) + P_ChangeSwitchTexture(line,0); + break; + + case 18: + // Raise Floor to next highest floor + if (EV_DoFloor(line, raiseFloorToNearest)) + P_ChangeSwitchTexture(line,0); + break; + + case 20: + // Raise Plat next highest floor and change texture + if (EV_DoPlat(line,raiseToNearestAndChange,0)) + P_ChangeSwitchTexture(line,0); + break; + + case 21: + // PlatDownWaitUpStay + if (EV_DoPlat(line,downWaitUpStay,0)) + P_ChangeSwitchTexture(line,0); + break; + + case 23: + // Lower Floor to Lowest + if (EV_DoFloor(line,lowerFloorToLowest)) + P_ChangeSwitchTexture(line,0); + break; + + case 29: + // Raise Door + if (EV_DoDoor(line,normal)) + P_ChangeSwitchTexture(line,0); + break; + + case 40: + // villsa [STRIFE] Split Open Door if(EV_DoDoor(line, splitOpen)) P_ChangeSwitchTexture(line, 0); - - case 41: - // Lower Ceiling to Floor - if (EV_DoCeiling(line,lowerToFloor)) - P_ChangeSwitchTexture(line,0); - break; - - case 71: - // Turbo Lower Floor - if (EV_DoFloor(line,turboLower)) - P_ChangeSwitchTexture(line,0); - break; - - case 49: - // Ceiling Crush And Raise - if (EV_DoCeiling(line,crushAndRaise)) - P_ChangeSwitchTexture(line,0); - break; - - case 50: - // Close Door - if (EV_DoDoor(line,close)) - P_ChangeSwitchTexture(line,0); - break; - - case 51: - // Secret EXIT - P_ChangeSwitchTexture(line,0); - //G_SecretExitLevel (); - break; - - case 55: - // Raise Floor Crush - if (EV_DoFloor(line,raiseFloorCrush)) - P_ChangeSwitchTexture(line,0); - break; - - case 101: - // Raise Floor - if (EV_DoFloor(line,raiseFloor)) - P_ChangeSwitchTexture(line,0); - break; - - case 102: - // Lower Floor to Surrounding floor height - if (EV_DoFloor(line,lowerFloor)) - P_ChangeSwitchTexture(line,0); - break; - - case 103: - // Open Door - if (EV_DoDoor(line,open)) - P_ChangeSwitchTexture(line,0); - break; - - case 111: - // Blazing Door Raise (faster than TURBO!) - if (EV_DoDoor (line,blazeRaise)) - P_ChangeSwitchTexture(line,0); - break; - - case 112: - // Blazing Door Open (faster than TURBO!) - if (EV_DoDoor (line,blazeOpen)) - P_ChangeSwitchTexture(line,0); - break; - - case 113: - // Blazing Door Close (faster than TURBO!) - if (EV_DoDoor (line,blazeClose)) - P_ChangeSwitchTexture(line,0); - break; - - case 122: - // Blazing PlatDownWaitUpStay - if (EV_DoPlat(line,blazeDWUS,0)) - P_ChangeSwitchTexture(line,0); - break; - - case 127: - // Build Stairs Turbo 16 - if (EV_BuildStairs(line,turbo16)) - P_ChangeSwitchTexture(line,0); - break; - - case 131: - // Raise Floor Turbo - if (EV_DoFloor(line,raiseFloorTurbo)) - P_ChangeSwitchTexture(line,0); - break; - - case 133: - // BlzOpenDoor BLUE - case 135: - // BlzOpenDoor RED - case 137: - // BlzOpenDoor YELLOW - if (EV_DoLockedDoor (line,blazeOpen,thing)) - P_ChangeSwitchTexture(line,0); - break; - - case 140: - // Raise Floor 512 - if (EV_DoFloor(line,raiseFloor512)) - P_ChangeSwitchTexture(line,0); - break; - - // BUTTONS - case 42: - // Close Door - if (EV_DoDoor(line,close)) - P_ChangeSwitchTexture(line,1); - break; - - case 43: - // Lower Ceiling to Floor - if (EV_DoCeiling(line,lowerToFloor)) - P_ChangeSwitchTexture(line,1); - break; - - case 45: - // Lower Floor to Surrounding floor height - if (EV_DoFloor(line,lowerFloor)) - P_ChangeSwitchTexture(line,1); - break; - - case 60: - // Lower Floor to Lowest - if (EV_DoFloor(line,lowerFloorToLowest)) - P_ChangeSwitchTexture(line,1); - break; - - case 61: - // Open Door - if (EV_DoDoor(line,open)) - P_ChangeSwitchTexture(line,1); - break; - - case 62: - // PlatDownWaitUpStay - if (EV_DoPlat(line,downWaitUpStay,1)) - P_ChangeSwitchTexture(line,1); - break; - - case 63: - // Raise Door - if (EV_DoDoor(line,normal)) - P_ChangeSwitchTexture(line,1); - break; - - case 64: - // Raise Floor to ceiling - if (EV_DoFloor(line,raiseFloor)) - P_ChangeSwitchTexture(line,1); - break; - - case 66: - // Raise Floor 24 and change texture - if (EV_DoPlat(line,raiseAndChange,24)) - P_ChangeSwitchTexture(line,1); - break; - - case 67: - // Raise Floor 32 and change texture - if (EV_DoPlat(line,raiseAndChange,32)) - P_ChangeSwitchTexture(line,1); - break; - - case 65: - // Raise Floor Crush - if (EV_DoFloor(line,raiseFloorCrush)) - P_ChangeSwitchTexture(line,1); - break; - - case 68: - // Raise Plat to next highest floor and change texture - if (EV_DoPlat(line,raiseToNearestAndChange,0)) - P_ChangeSwitchTexture(line,1); - break; - - case 69: - // Raise Floor to next highest floor - if (EV_DoFloor(line, raiseFloorToNearest)) - P_ChangeSwitchTexture(line,1); - break; - - case 70: - // Turbo Lower Floor - if (EV_DoFloor(line,turboLower)) - P_ChangeSwitchTexture(line,1); - break; - - case 114: - // Blazing Door Raise (faster than TURBO!) - if (EV_DoDoor (line,blazeRaise)) - P_ChangeSwitchTexture(line,1); - break; - - case 115: - // Blazing Door Open (faster than TURBO!) - if (EV_DoDoor (line,blazeOpen)) - P_ChangeSwitchTexture(line,1); - break; - - case 116: - // Blazing Door Close (faster than TURBO!) - if (EV_DoDoor (line,blazeClose)) - P_ChangeSwitchTexture(line,1); - break; - - case 123: - // Blazing PlatDownWaitUpStay - if (EV_DoPlat(line,blazeDWUS,0)) - P_ChangeSwitchTexture(line,1); - break; - - case 132: - // Raise Floor Turbo - if (EV_DoFloor(line,raiseFloorTurbo)) - P_ChangeSwitchTexture(line,1); - break; - - case 99: - // BlzOpenDoor BLUE - case 134: - // BlzOpenDoor RED - case 136: - // BlzOpenDoor YELLOW - if (EV_DoLockedDoor (line,blazeOpen,thing)) - P_ChangeSwitchTexture(line,1); - break; - - case 138: - // Light Turn On - EV_LightTurnOn(line,255); - P_ChangeSwitchTexture(line,1); - break; - - case 139: - // Light Turn Off - EV_LightTurnOn(line,35); - P_ChangeSwitchTexture(line,1); - break; - - case 144: - // villsa [STRIFE] manual sliding door - EV_SlidingDoor(line, thing); - break; - - case 207: - // villsa [STRIFE] remote sliding door - if(EV_RemoteSlidingDoor(line, thing)) - P_ChangeSwitchTexture(line, 1); - - case 229: - // villsa [STRIFE] sigil sliding door - if(thing->player && thing->player->sigiltype == 4) - { - if(EV_RemoteSlidingDoor(line, thing)) - P_ChangeSwitchTexture(line, 1); - } - - case 666: - // villsa [STRIFE] Move wall - P_MoveWall(line, thing); - break; - + + case 41: + // Lower Ceiling to Floor + if (EV_DoCeiling(line,lowerToFloor)) + P_ChangeSwitchTexture(line,0); + break; + + case 71: + // Turbo Lower Floor + if (EV_DoFloor(line,turboLower)) + P_ChangeSwitchTexture(line,0); + break; + + case 49: + // Ceiling Crush And Raise + if (EV_DoCeiling(line,crushAndRaise)) + P_ChangeSwitchTexture(line,0); + break; + + case 50: + // Close Door + if (EV_DoDoor(line,close)) + P_ChangeSwitchTexture(line,0); + break; + + case 51: + // Secret EXIT + P_ChangeSwitchTexture(line,0); + //G_SecretExitLevel (); + break; + + case 55: + // Raise Floor Crush + if (EV_DoFloor(line,raiseFloorCrush)) + P_ChangeSwitchTexture(line,0); + break; + + case 101: + // Raise Floor + if (EV_DoFloor(line,raiseFloor)) + P_ChangeSwitchTexture(line,0); + break; + + case 102: + // Lower Floor to Surrounding floor height + if (EV_DoFloor(line,lowerFloor)) + P_ChangeSwitchTexture(line,0); + break; + + case 103: + // Open Door + if (EV_DoDoor(line,open)) + P_ChangeSwitchTexture(line,0); + break; + + case 111: + // Blazing Door Raise (faster than TURBO!) + if (EV_DoDoor (line,blazeRaise)) + P_ChangeSwitchTexture(line,0); + break; + + case 112: + // Blazing Door Open (faster than TURBO!) + if (EV_DoDoor (line,blazeOpen)) + P_ChangeSwitchTexture(line,0); + break; + + case 113: + // Blazing Door Close (faster than TURBO!) + if (EV_DoDoor (line,blazeClose)) + P_ChangeSwitchTexture(line,0); + break; + + case 122: + // Blazing PlatDownWaitUpStay + if (EV_DoPlat(line,blazeDWUS,0)) + P_ChangeSwitchTexture(line,0); + break; + + case 127: + // Build Stairs Turbo 16 + if (EV_BuildStairs(line,turbo16)) + P_ChangeSwitchTexture(line,0); + break; + + case 131: + // Raise Floor Turbo + if (EV_DoFloor(line,raiseFloorTurbo)) + P_ChangeSwitchTexture(line,0); + break; + + case 133: + // BlzOpenDoor BLUE + case 135: + // BlzOpenDoor RED + case 137: + // BlzOpenDoor YELLOW + if (EV_DoLockedDoor (line,blazeOpen,thing)) + P_ChangeSwitchTexture(line,0); + break; + + case 140: + // Raise Floor 512 + if (EV_DoFloor(line,raiseFloor512)) + P_ChangeSwitchTexture(line,0); + break; + + // BUTTONS + case 42: + // Close Door + if (EV_DoDoor(line,close)) + P_ChangeSwitchTexture(line,1); + break; + + case 43: + // Lower Ceiling to Floor + if (EV_DoCeiling(line,lowerToFloor)) + P_ChangeSwitchTexture(line,1); + break; + + case 45: + // Lower Floor to Surrounding floor height + if (EV_DoFloor(line,lowerFloor)) + P_ChangeSwitchTexture(line,1); + break; + + case 60: + // Lower Floor to Lowest + if (EV_DoFloor(line,lowerFloorToLowest)) + P_ChangeSwitchTexture(line,1); + break; + + case 61: + // Open Door + if (EV_DoDoor(line,open)) + P_ChangeSwitchTexture(line,1); + break; + + case 62: + // PlatDownWaitUpStay + if (EV_DoPlat(line,downWaitUpStay,1)) + P_ChangeSwitchTexture(line,1); + break; + + case 63: + // Raise Door + if (EV_DoDoor(line,normal)) + P_ChangeSwitchTexture(line,1); + break; + + case 64: + // Raise Floor to ceiling + if (EV_DoFloor(line,raiseFloor)) + P_ChangeSwitchTexture(line,1); + break; + + case 66: + // Raise Floor 24 and change texture + if (EV_DoPlat(line,raiseAndChange,24)) + P_ChangeSwitchTexture(line,1); + break; + + case 67: + // Raise Floor 32 and change texture + if (EV_DoPlat(line,raiseAndChange,32)) + P_ChangeSwitchTexture(line,1); + break; + + case 65: + // Raise Floor Crush + if (EV_DoFloor(line,raiseFloorCrush)) + P_ChangeSwitchTexture(line,1); + break; + + case 68: + // Raise Plat to next highest floor and change texture + if (EV_DoPlat(line,raiseToNearestAndChange,0)) + P_ChangeSwitchTexture(line,1); + break; + + case 69: + // Raise Floor to next highest floor + if (EV_DoFloor(line, raiseFloorToNearest)) + P_ChangeSwitchTexture(line,1); + break; + + case 70: + // Turbo Lower Floor + if (EV_DoFloor(line,turboLower)) + P_ChangeSwitchTexture(line,1); + break; + + case 114: + // Blazing Door Raise (faster than TURBO!) + if (EV_DoDoor (line,blazeRaise)) + P_ChangeSwitchTexture(line,1); + break; + + case 115: + // Blazing Door Open (faster than TURBO!) + if (EV_DoDoor (line,blazeOpen)) + P_ChangeSwitchTexture(line,1); + break; + + case 116: + // Blazing Door Close (faster than TURBO!) + if (EV_DoDoor (line,blazeClose)) + P_ChangeSwitchTexture(line,1); + break; + + case 123: + // Blazing PlatDownWaitUpStay + if (EV_DoPlat(line,blazeDWUS,0)) + P_ChangeSwitchTexture(line,1); + break; + + case 132: + // Raise Floor Turbo + if (EV_DoFloor(line,raiseFloorTurbo)) + P_ChangeSwitchTexture(line,1); + break; + + case 99: + // BlzOpenDoor BLUE + case 134: + // BlzOpenDoor RED + case 136: + // BlzOpenDoor YELLOW + if (EV_DoLockedDoor (line,blazeOpen,thing)) + P_ChangeSwitchTexture(line,1); + break; + + case 138: + // Light Turn On + EV_LightTurnOn(line,255); + P_ChangeSwitchTexture(line,1); + break; + + case 139: + // Light Turn Off + EV_LightTurnOn(line,35); + P_ChangeSwitchTexture(line,1); + break; + + case 144: + // villsa [STRIFE] manual sliding door + EV_SlidingDoor(line, thing); + break; + + case 148: + // haleyjd 09/16/10: [STRIFE] using forcefields hurts + P_DamageMobj(thing, NULL, NULL, 16); + P_Thrust(thing->player, thing->angle + ANG180, 125*FRACUNIT/16); + break; + + case 207: + // villsa [STRIFE] remote sliding door + if(EV_RemoteSlidingDoor(line, thing)) + P_ChangeSwitchTexture(line, 1); + break; // haleyjd + + case 229: + // villsa [STRIFE] sigil sliding door + if(thing->player && thing->player->sigiltype == 4) + { + if(EV_RemoteSlidingDoor(line, thing)) + P_ChangeSwitchTexture(line, 1); + } + break; // haleyjd + + case 666: + // villsa [STRIFE] Move wall + P_MoveWall(line, thing); + break; + } - + return true; } -- cgit v1.2.3