mirror of
https://github.com/ZDoom/gzdoom-last-svn.git
synced 2025-06-03 02:30:53 +00:00
- implemented per-sidedef texture scaling for GL renderer.
Update to ZDoom r1648: - added Gez's infinite ammo powerup and random spawner fix patches. - reduced size of Hexen's flames to fix bug in Deathkings MAP01. - added checks for sidedef scaling values - Added Karate Chris's poison cloud fix. - Added per-tier texture scaling with these new UDMF sidedef properties: * scalex_top * scaley_top * scalex_mid * scaley_mid * scalex_bottom * scalex_bottom - Added sidedef versions of the linedef flags wrapmidtex and clipmidtex (via UDMF; names are the same). If the flag is set on the line, it applies to both sides. Otherwise, each side can control them individually. git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@340 b0f79afe-0144-0410-b225-9a4edf0717df
This commit is contained in:
parent
c2d1121663
commit
be68474922
25 changed files with 388 additions and 151 deletions
|
@ -29,7 +29,6 @@ class ARandomSpawner : public AActor
|
|||
int n=0;
|
||||
|
||||
Super::PostBeginPlay();
|
||||
|
||||
drop = di = GetDropItems();
|
||||
if (di != NULL)
|
||||
{
|
||||
|
@ -52,7 +51,7 @@ class ARandomSpawner : public AActor
|
|||
if (di->Name != NAME_None)
|
||||
{
|
||||
n -= di->amount;
|
||||
if (di->Next != NULL) di = di->Next; else n=0;
|
||||
if ((di->Next != NULL) && (n > -1)) di = di->Next; else n = -1;
|
||||
}
|
||||
}
|
||||
// So now we can spawn the dropped item.
|
||||
|
@ -81,6 +80,22 @@ class ARandomSpawner : public AActor
|
|||
newmobj->tracer = tracer;
|
||||
newmobj->CopyFriendliness(this, false);
|
||||
if (!(flags & MF_DROPPED)) newmobj->flags &= ~MF_DROPPED;
|
||||
|
||||
// Handle special altitude flags
|
||||
if (newmobj->flags & MF_SPAWNCEILING)
|
||||
{
|
||||
newmobj->z = newmobj->ceilingz - newmobj->height;
|
||||
}
|
||||
else if (newmobj->flags2 & MF2_SPAWNFLOAT)
|
||||
{
|
||||
fixed_t space = newmobj->ceilingz - newmobj->height - newmobj->floorz;
|
||||
if (space > 48*FRACUNIT)
|
||||
{
|
||||
space -= 40*FRACUNIT;
|
||||
newmobj->z = MulScale8 (space, pr_randomspawn()) + newmobj->floorz + 40*FRACUNIT;
|
||||
}
|
||||
}
|
||||
|
||||
// Special1 is used to count how many recursions we're in.
|
||||
if (newmobj->IsKindOf(PClass::FindClass("RandomSpawner")))
|
||||
newmobj->special1 = ++special1;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue