summaryrefslogtreecommitdiff
path: root/src/strife
diff options
context:
space:
mode:
authorJames Haley2010-09-16 13:06:09 +0000
committerJames Haley2010-09-16 13:06:09 +0000
commit8bc7af8cbbf6ef3c68880c05f37604a4a49db071 (patch)
tree0a172be5692ff8b8fce56ebcc490584d34090c9d /src/strife
parent050936093f9dfe6b835e2b815fb3974aa0699cc8 (diff)
downloadchocolate-doom-8bc7af8cbbf6ef3c68880c05f37604a4a49db071.tar.gz
chocolate-doom-8bc7af8cbbf6ef3c68880c05f37604a4a49db071.tar.bz2
chocolate-doom-8bc7af8cbbf6ef3c68880c05f37604a4a49db071.zip
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
Diffstat (limited to 'src/strife')
-rw-r--r--src/strife/doomdef.h4
-rw-r--r--src/strife/p_dialog.h1
-rw-r--r--src/strife/p_doors.c97
-rw-r--r--src/strife/p_switch.c761
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;
}