- added a 'block sight' line flag.

- updated UDMF spec for player class and skill amount because the old menu limits no longer apply.
- fixed: FloorAndCeiling_LowerRaise needs to consider 4 args in maps to account for the Boom compatibility hack parameter.


SVN r3121 (trunk)
This commit is contained in:
Christoph Oelckers 2011-01-23 10:52:18 +00:00
parent a8167b3110
commit a2acc382df
7 changed files with 18 additions and 10 deletions

View file

@ -112,6 +112,7 @@ Note: All <bool> fields default to false unless mentioned otherwise.
checkswitchrange = <bool>;// Switches can only be activated when vertically reachable. checkswitchrange = <bool>;// Switches can only be activated when vertically reachable.
blockprojectiles = <bool>;// Line blocks all projectiles blockprojectiles = <bool>;// Line blocks all projectiles
blockuse = <bool>; // Line blocks all use actions blockuse = <bool>; // Line blocks all use actions
blocksight = <bool>; // Line blocks monster line of sight
} }
@ -162,8 +163,8 @@ Note: All <bool> fields default to false unless mentioned otherwise.
alphafloor = <float>; // translucency of floor plane (only has meaning with Sector_SetPortal) Default is 1.0. alphafloor = <float>; // translucency of floor plane (only has meaning with Sector_SetPortal) Default is 1.0.
alphaceiling = <float>; // translucency of ceiling plane (only has meaning with Sector_SetPortal) Default is 1.0. alphaceiling = <float>; // translucency of ceiling plane (only has meaning with Sector_SetPortal) Default is 1.0.
gravity = <float>; // Sector's gravity. Default is 1.0. gravity = <float>; // Sector's gravity. Default is 1.0.
lightcolor = <integer>; // Sector'S light color as RRGGBB value, default = 0xffffff. lightcolor = <integer>; // Sector's light color as RRGGBB value, default = 0xffffff.
fadecolor = <integer>; // Sector'S fog color as RRGGBB value, default = 0x000000. fadecolor = <integer>; // Sector's fog color as RRGGBB value, default = 0x000000.
desaturation = <float>; // Color desaturation factor. 0 = none, 1 = full, default = 0. desaturation = <float>; // Color desaturation factor. 0 = none, 1 = full, default = 0.
silent = <bool>; // Actors in this sector make no sound, silent = <bool>; // Actors in this sector make no sound,
nofallingdamage = <bool>; // Falling damage is disabled in this sector nofallingdamage = <bool>; // Falling damage is disabled in this sector
@ -183,12 +184,8 @@ Note: All <bool> fields default to false unless mentioned otherwise.
thing thing
{ {
skill# = <bool> // Unlike the base spec, # can range from 1-8. skill# = <bool> // Unlike the base spec, # can range from 1-16.
// 8 is the maximum amount of skills the skill class# = <bool> // Unlike the base spec, # can range from 1-16.
// menu can display.
class# = <bool> // Unlike the base spec, # can range from 1-8.
// 8 is the maximum amount of classes the class
// menu can display.
conversation = <int> // Assigns a conversation dialogue to this thing. conversation = <int> // Assigns a conversation dialogue to this thing.
// Parameter is the conversation ID, 0 meaning none. // Parameter is the conversation ID, 0 meaning none.
countsecret = <bool>; // Picking up this actor counts as a secret. countsecret = <bool>; // Picking up this actor counts as a secret.
@ -292,6 +289,10 @@ Added 'countsecret' actor property.
1.15 14.12.2010 1.15 14.12.2010
Added vertex floor and ceiling height properties Added vertex floor and ceiling height properties
1.16 23.01.2011
Added blocksight linedef flag
Removed remarks of 8 being the maximum number of player classes/skill levels the menu can handle so the spec now properly lists 16 as limit.
=============================================================================== ===============================================================================
EOF EOF
=============================================================================== ===============================================================================

View file

@ -227,7 +227,7 @@ DEFINE_SPECIAL(Elevator_LowerToNearest, 247, 2, 2, 2)
DEFINE_SPECIAL(HealThing, 248, 1, 2, 2) DEFINE_SPECIAL(HealThing, 248, 1, 2, 2)
DEFINE_SPECIAL(Door_CloseWaitOpen, 249, 3, 4, 4) DEFINE_SPECIAL(Door_CloseWaitOpen, 249, 3, 4, 4)
DEFINE_SPECIAL(Floor_Donut, 250, 3, 3, 3) DEFINE_SPECIAL(Floor_Donut, 250, 3, 3, 3)
DEFINE_SPECIAL(FloorAndCeiling_LowerRaise, 251, 3, 3, 3) DEFINE_SPECIAL(FloorAndCeiling_LowerRaise, 251, 3, 3, 4)
DEFINE_SPECIAL(Ceiling_RaiseToNearest, 252, 2, 2, 2) DEFINE_SPECIAL(Ceiling_RaiseToNearest, 252, 2, 2, 2)
DEFINE_SPECIAL(Ceiling_LowerToLowest, 253, 2, 2, 2) DEFINE_SPECIAL(Ceiling_LowerToLowest, 253, 2, 2, 2)
DEFINE_SPECIAL(Ceiling_LowerToFloor, 254, 2, 2, 2) DEFINE_SPECIAL(Ceiling_LowerToFloor, 254, 2, 2, 2)

View file

@ -152,6 +152,7 @@ enum ELineFlags
ML_FIRSTSIDEONLY = 0x00800000, // activated only when crossed from front side ML_FIRSTSIDEONLY = 0x00800000, // activated only when crossed from front side
ML_BLOCKPROJECTILE = 0x01000000, ML_BLOCKPROJECTILE = 0x01000000,
ML_BLOCKUSE = 0x02000000, // blocks all use actions through this line ML_BLOCKUSE = 0x02000000, // blocks all use actions through this line
ML_BLOCKSIGHT = 0x04000000, // blocks monster line of sight
}; };

View file

@ -443,6 +443,7 @@ xx(smoothlighting)
xx(blockprojectiles) xx(blockprojectiles)
xx(blockuse) xx(blockuse)
xx(hidden) xx(hidden)
xx(blocksight)
xx(Renderstyle) xx(Renderstyle)

View file

@ -2473,6 +2473,7 @@ FUNC(LS_Line_SetBlocking)
ML_BLOCKEVERYTHING, ML_BLOCKEVERYTHING,
ML_RAILING, ML_RAILING,
ML_BLOCKUSE, ML_BLOCKUSE,
ML_BLOCKSIGHT,
-1 -1
}; };

View file

@ -256,7 +256,7 @@ bool SightCheck::P_SightCheckLine (line_t *ld)
} }
// try to early out the check // try to early out the check
if (!ld->backsector || !(ld->flags & ML_TWOSIDED)) if (!ld->backsector || !(ld->flags & ML_TWOSIDED) || (ld->flags & ML_BLOCKSIGHT))
return false; // stop checking return false; // stop checking
// [RH] don't see past block everything lines // [RH] don't see past block everything lines

View file

@ -874,6 +874,10 @@ public:
Flag(ld->flags, ML_BLOCKUSE, key); Flag(ld->flags, ML_BLOCKUSE, key);
continue; continue;
case NAME_blocksight:
Flag(ld->flags, ML_BLOCKSIGHT, key);
continue;
default: default:
break; break;
} }