mirror of
https://github.com/ZDoom/Raze.git
synced 2024-11-24 21:11:26 +00:00
958 lines
10 KiB
Text
958 lines
10 KiB
Text
|
|
class DukePlug : DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "PLUG";
|
|
}
|
|
|
|
override void Initialize()
|
|
{
|
|
self.lotag = 9999;
|
|
self.ChangeStat(STAT_STANDABLE);
|
|
}
|
|
|
|
override bool OnUse(DukePlayer p)
|
|
{
|
|
p.actor.PlayActorSound("SHORT_CIRCUIT");
|
|
p.actor.extra -= random(2, 5);
|
|
p.pals = Color(32, 48, 48, 64);
|
|
return true;
|
|
}
|
|
}
|
|
|
|
class DukeFemMag : DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "FEMMAG1";
|
|
}
|
|
|
|
override void Initialize()
|
|
{
|
|
self.cstat &= ~CSTAT_SPRITE_BLOCK_ALL;
|
|
self.ChangeStat(STAT_DEFAULT);
|
|
}
|
|
}
|
|
|
|
class DukeTag : DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "DUKETAG";
|
|
}
|
|
|
|
override void Initialize()
|
|
{
|
|
if (ud.multimode < 2 && self.pal)
|
|
{
|
|
self.scale = (0, 0);
|
|
self.ChangeStat(STAT_MISC);
|
|
}
|
|
else self.pal = 0;
|
|
}
|
|
}
|
|
|
|
class DukeMaskWall : DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "MASKWALL1";
|
|
}
|
|
|
|
override void Initialize()
|
|
{
|
|
let j = self.cstat & (CSTAT_SPRITE_ALIGNMENT_MASK | CSTAT_SPRITE_XFLIP | CSTAT_SPRITE_YFLIP);
|
|
self.cstat = j | CSTAT_SPRITE_BLOCK;
|
|
self.ChangeStat(STAT_DEFAULT);
|
|
}
|
|
}
|
|
|
|
class DukeFootprints : DukeActor
|
|
{
|
|
default
|
|
{
|
|
spriteset "FOOTPRINTS", "FOOTPRINTS2", "FOOTPRINTS3", "FOOTPRINTS4";
|
|
+SE24_REMOVE;
|
|
}
|
|
|
|
override void Initialize()
|
|
{
|
|
if (!self.mapSpawned)
|
|
{
|
|
bool away = self.isAwayFromWall(5.25);
|
|
if (!away)
|
|
{
|
|
self.scale = (0, 0);
|
|
return;
|
|
}
|
|
self.cstat = CSTAT_SPRITE_ALIGNMENT_FLOOR;
|
|
self.insertspriteq();
|
|
}
|
|
let sect = self.sector;
|
|
self.pos.Z = sect.floorz;
|
|
if (sect.lotag != ST_1_ABOVE_WATER && sect.lotag != ST_2_UNDERWATER)
|
|
self.scale = (0.5, 0.5);
|
|
self.setSpriteSetImage(random(0, 3));
|
|
self.ChangeStat(STAT_MISC);
|
|
}
|
|
|
|
override bool animate(tspritetype t)
|
|
{
|
|
if (self.shade == 127) t.shade = 127;
|
|
if (t.pal == 6) t.shade = -127;
|
|
return true;
|
|
}
|
|
}
|
|
|
|
class DukeBulletHole : DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "BULLETHOLE";
|
|
+SE24_REMOVE;
|
|
+NOTELEPORT;
|
|
}
|
|
|
|
override void Initialize()
|
|
{
|
|
self.cstat = CSTAT_SPRITE_ALIGNMENT_WALL | randomFlip();
|
|
self.insertspriteq();
|
|
self.Scale = (0.046875, 0.046875);
|
|
self.ChangeStat(STAT_MISC);
|
|
}
|
|
|
|
override bool animate(tspritetype t)
|
|
{
|
|
t.shade = 16;
|
|
return true;
|
|
}
|
|
}
|
|
|
|
class DukeGenericPole : DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "GENERICPOLE";
|
|
}
|
|
|
|
override void Initialize()
|
|
{
|
|
if (ud.multimode < 2 && self.pal != 0)
|
|
{
|
|
self.scale = (0, 0);
|
|
self.ChangeStat(STAT_MISC);
|
|
}
|
|
else self.pal = 0;
|
|
}
|
|
}
|
|
|
|
class DukeCameraPole : DukeGenericPole
|
|
{
|
|
default
|
|
{
|
|
pic "CAMERAPOLE";
|
|
}
|
|
|
|
override void Initialize()
|
|
{
|
|
if (gs.camerashitable) self.cstat = CSTAT_SPRITE_BLOCK_ALL;
|
|
else self.cstat = 0;
|
|
self.extra = 1;
|
|
super.Initialize();
|
|
}
|
|
}
|
|
|
|
class DukeNeon : DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "NEON1";
|
|
}
|
|
|
|
override void Initialize()
|
|
{
|
|
self.cstat |= CSTAT_SPRITE_BLOCK_ALL;
|
|
self.ChangeStat(STAT_MISC);
|
|
}
|
|
|
|
override void Tick()
|
|
{
|
|
if ((Duke.global_random() / (self.lotag + 1) & 31) > 4) self.shade = -127;
|
|
else self.shade = 127;
|
|
}
|
|
|
|
override bool Animate(tspritetype t)
|
|
{
|
|
t.shade = self.shade;
|
|
return true;
|
|
}
|
|
}
|
|
|
|
class DeveloperCommentary : DukeActor
|
|
{
|
|
default
|
|
{
|
|
spriteset "DEVELOPERCOMMENTARY", "DEVELOPERCOMMENTARYON";
|
|
}
|
|
|
|
override bool TriggerSwitch(DukePlayer p)
|
|
{
|
|
if (!wt_commentary) return true;
|
|
if (self.spriteSetIndex == 0)
|
|
{
|
|
if (Duke.StartCommentary(self.lotag, self))
|
|
self.setSpriteSetImage(1);
|
|
}
|
|
else
|
|
{
|
|
Duke.StopCommentary();
|
|
self.setSpriteSetImage(0);
|
|
}
|
|
return true;
|
|
}
|
|
|
|
override bool animate(tspritetype t)
|
|
{
|
|
if (!wt_commentary) t.scale = (0, 0);
|
|
else t.shade = self.shade;
|
|
return true;
|
|
}
|
|
}
|
|
|
|
// These ones are either inert or use CON but also have flags attached
|
|
|
|
class DukeBarBroke : DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "BARBROKE";
|
|
+SE24_NOCARRY;
|
|
}
|
|
}
|
|
|
|
class DukeBearingPlate : DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "BEARINGPLATE";
|
|
}
|
|
}
|
|
|
|
class DukeBurnedCorpse : DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "BURNEDCORPSE";
|
|
+FORCERUNCON;
|
|
}
|
|
}
|
|
|
|
class DukeLaserSite : DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "LASERSITE";
|
|
+FORCERUNCON;
|
|
}
|
|
}
|
|
|
|
class DukeSpeaker : DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "SPEAKER";
|
|
+NOFALLER;
|
|
}
|
|
}
|
|
|
|
class RedneckUfoLight : DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "UFOLIGHT";
|
|
}
|
|
}
|
|
|
|
class DukeNewBeast : DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "NEWBEAST";
|
|
+BADGUY;
|
|
+KILLCOUNT;
|
|
+GREENSLIMEFOOD;
|
|
+GREENBLOOD;
|
|
}
|
|
}
|
|
|
|
class DukeNewBeastStayput : DukeNewBeast
|
|
{
|
|
default
|
|
{
|
|
pic "NEWBEASTSTAYPUT";
|
|
+BADGUYSTAYPUT;
|
|
}
|
|
}
|
|
|
|
class DukeNewBeastHang : DukeNewBeast
|
|
{
|
|
default
|
|
{
|
|
pic "NEWBEASTHANG";
|
|
}
|
|
}
|
|
|
|
class DukeTank : DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "TANK";
|
|
+BADGUY;
|
|
+KILLCOUNT;
|
|
+NODAMAGEPUSH;
|
|
+NORADIUSPUSH;
|
|
}
|
|
}
|
|
|
|
class DukeFoodObject6: DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "FOODOBJECT6";
|
|
}
|
|
}
|
|
|
|
class DukeFoodObject11: DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "FOODOBJECT11";
|
|
}
|
|
}
|
|
|
|
class DukeFoodObject12: DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "FOODOBJECT12";
|
|
}
|
|
}
|
|
class DukeFoodObject13: DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "FOODOBJECT13";
|
|
}
|
|
}
|
|
class DukeFoodObject14: DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "FOODOBJECT14";
|
|
}
|
|
}
|
|
class DukeFoodObject15: DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "FOODOBJECT15";
|
|
}
|
|
}
|
|
class DukeFoodObject16: DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "FOODOBJECT16";
|
|
}
|
|
}
|
|
class DukeFoodObject17: DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "FOODOBJECT17";
|
|
}
|
|
}
|
|
|
|
class DukeSkinnedChicken: DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "SKINNEDCHICKEN";
|
|
}
|
|
}
|
|
class DukeShoppingCart: DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "SHOPPINGCART";
|
|
}
|
|
}
|
|
class DukeRobotDog2: DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "ROBOTDOG2";
|
|
}
|
|
}
|
|
class DukeFeatheredChicken: DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "FEATHEREDCHICKEN";
|
|
}
|
|
}
|
|
class DukeDolphin1: DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "DOLPHIN1";
|
|
}
|
|
}
|
|
|
|
class DukeDolphin2: DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "DOLPHIN2";
|
|
}
|
|
}
|
|
|
|
|
|
|
|
class DukeSnakep: DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "SNAKEP";
|
|
}
|
|
}
|
|
|
|
class DukeDonuts: DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "DONUTS";
|
|
}
|
|
}
|
|
|
|
class DukeDonuts2: DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "DONUTS2";
|
|
}
|
|
}
|
|
|
|
class DukeMailbag: DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "MAILBAG";
|
|
}
|
|
}
|
|
|
|
class DukeTeddybear: DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "TEDDYBEAR";
|
|
}
|
|
}
|
|
|
|
class DukeClock: DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "CLOCK";
|
|
}
|
|
}
|
|
|
|
class DukeBrokenClock: DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "BROKENCLOCK";
|
|
}
|
|
}
|
|
|
|
class DukeJollyMeal: DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "JOLLYMEAL";
|
|
}
|
|
}
|
|
|
|
class DukeGumballMachine: DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "GUMBALLMACHINE";
|
|
}
|
|
}
|
|
|
|
class DukeGumballMachineBroke: DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "GUMBALLMACHINEBROKE";
|
|
}
|
|
}
|
|
|
|
class DukeBurger: DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "DUKEBURGER";
|
|
}
|
|
}
|
|
|
|
class DukePoliceLightPole: DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "POLICELIGHTPOLE";
|
|
}
|
|
}
|
|
|
|
class DukeTopSecret: DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "TOPSECRET";
|
|
}
|
|
}
|
|
|
|
class DukeGunpowderbarrel: DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "GUNPOWDERBARREL";
|
|
}
|
|
}
|
|
|
|
class DukeFloorbasket: DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "FLOORBASKET";
|
|
}
|
|
}
|
|
|
|
class DukeRobotmouse: DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "ROBOTMOUSE";
|
|
}
|
|
}
|
|
|
|
class DukeRobotpirate: DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "ROBOTPIRATE";
|
|
}
|
|
}
|
|
|
|
class DukePirate1A: DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "PIRATE1A";
|
|
}
|
|
}
|
|
|
|
class DukeMan: DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "MAN";
|
|
}
|
|
}
|
|
|
|
class DukeMan2: DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "MAN2";
|
|
}
|
|
}
|
|
|
|
class DukePirate2A: DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "PIRATE2A";
|
|
}
|
|
}
|
|
|
|
class DukePirate3A: DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "PIRATE3A";
|
|
}
|
|
}
|
|
|
|
class DukePirate4A: DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "PIRATE4A";
|
|
}
|
|
}
|
|
|
|
class DukePirate5A: DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "PIRATE5A";
|
|
}
|
|
}
|
|
|
|
class DukePirate6A: DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "PIRATE6A";
|
|
}
|
|
}
|
|
|
|
class DukeFoodObject2: DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "FOODOBJECT2";
|
|
}
|
|
}
|
|
|
|
class DukeFem6Pad: DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "FEM6PAD";
|
|
}
|
|
}
|
|
|
|
class DukeCannonball: DukeActor
|
|
{
|
|
default
|
|
{
|
|
pic "CANNONBALL";
|
|
}
|
|
}
|
|
|
|
class DukeSpaceShuttle : DukeActor // (487)
|
|
{
|
|
default
|
|
{
|
|
pic "SPACESHUTTLE";
|
|
}
|
|
}
|
|
|
|
class DukeSatellite2 : DukeActor // (489)
|
|
{
|
|
default
|
|
{
|
|
pic "SATELLITE";
|
|
}
|
|
}
|
|
|
|
class DukeMop : DukeActor // (4497)
|
|
{
|
|
default
|
|
{
|
|
pic "MOP";
|
|
}
|
|
}
|
|
|
|
class DukeBroom : DukeActor // (4496)
|
|
{
|
|
default
|
|
{
|
|
pic "BROOM";
|
|
}
|
|
}
|
|
|
|
class DukeWetFloor : DukeActor // (4495)
|
|
{
|
|
default
|
|
{
|
|
pic "WETFLOOR";
|
|
}
|
|
}
|
|
|
|
class DukeDeskLamp : DukeActor // (4370)
|
|
{
|
|
default
|
|
{
|
|
pic "DESKLAMP";
|
|
}
|
|
}
|
|
|
|
class DukeHatRack : DukeActor // (4367)
|
|
{
|
|
default
|
|
{
|
|
pic "HATRACK";
|
|
}
|
|
}
|
|
|
|
class DukeCoffeeMachine : DukeActor // (4372)
|
|
{
|
|
default
|
|
{
|
|
pic "COFFEEMACHINE";
|
|
}
|
|
}
|
|
|
|
class DukeWoman : DukeActor // (4874)
|
|
{
|
|
default
|
|
{
|
|
pic "WOMAN";
|
|
}
|
|
}
|
|
|
|
class DukePirateHalf : DukeActor // (4516)
|
|
{
|
|
default
|
|
{
|
|
pic "PIRATEHALF";
|
|
}
|
|
}
|
|
|
|
class DukeChestOfGold : DukeActor // (4520)
|
|
{
|
|
default
|
|
{
|
|
pic "CHESTOFGOLD";
|
|
}
|
|
}
|
|
|
|
class DukeRobotDog : DukeActor // (4402)
|
|
{
|
|
default
|
|
{
|
|
pic "ROBOTDOG";
|
|
}
|
|
}
|
|
|
|
class DukePleaseWait : DukeActor // (4887)
|
|
{
|
|
default
|
|
{
|
|
pic "PLEASEWAIT";
|
|
}
|
|
}
|
|
|
|
class DukeFoodObject1 : DukeActor // (4530)
|
|
{
|
|
default
|
|
{
|
|
pic "FOODOBJECT1";
|
|
}
|
|
}
|
|
|
|
class DukeFoodObject3 : DukeActor // (4532)
|
|
{
|
|
default
|
|
{
|
|
pic "FOODOBJECT3";
|
|
}
|
|
}
|
|
|
|
class DukeFoodObject4 : DukeActor // (4533)
|
|
{
|
|
default
|
|
{
|
|
pic "FOODOBJECT4";
|
|
}
|
|
}
|
|
|
|
class DukeFoodObject5 : DukeActor // (4534)
|
|
{
|
|
default
|
|
{
|
|
pic "FOODOBJECT5";
|
|
}
|
|
}
|
|
|
|
class DukeFoodObject7 : DukeActor // (4536)
|
|
{
|
|
default
|
|
{
|
|
pic "FOODOBJECT7";
|
|
}
|
|
}
|
|
|
|
class DukeFoodObject8 : DukeActor // (4537)
|
|
{
|
|
default
|
|
{
|
|
pic "FOODOBJECT8";
|
|
}
|
|
}
|
|
|
|
class DukeFoodObject9 : DukeActor // (4538)
|
|
{
|
|
default
|
|
{
|
|
pic "FOODOBJECT9";
|
|
}
|
|
}
|
|
|
|
class DukeFoodObject10 : DukeActor // (4539)
|
|
{
|
|
default
|
|
{
|
|
pic "FOODOBJECT10";
|
|
}
|
|
}
|
|
|
|
class DukeFoodObject18 : DukeActor // (4547)
|
|
{
|
|
default
|
|
{
|
|
pic "FOODOBJECT18";
|
|
}
|
|
}
|
|
|
|
class DukeFoodObject19 : DukeActor // (4548)
|
|
{
|
|
default
|
|
{
|
|
pic "FOODOBJECT19";
|
|
}
|
|
}
|
|
|
|
class DukeFoodObject20 : DukeActor // (4549)
|
|
{
|
|
default
|
|
{
|
|
pic "FOODOBJECT20";
|
|
}
|
|
}
|
|
|
|
class DukeHeadLamp : DukeActor // (4550)
|
|
{
|
|
default
|
|
{
|
|
pic "HEADLAMP";
|
|
}
|
|
}
|
|
|
|
class DukeGavals : DukeActor // (4374)
|
|
{
|
|
default
|
|
{
|
|
pic "GAVALS";
|
|
}
|
|
}
|
|
|
|
class DukeGavals2 : DukeActor // (4375)
|
|
{
|
|
default
|
|
{
|
|
pic "GAVALS2";
|
|
}
|
|
}
|
|
|
|
class DukeCups : DukeActor // (4373)
|
|
{
|
|
default
|
|
{
|
|
pic "CUPS";
|
|
}
|
|
}
|
|
|
|
class DukeMeter : DukeActor // (4453)
|
|
{
|
|
default
|
|
{
|
|
pic "METER";
|
|
}
|
|
}
|
|
|
|
class DukeDeskPhone : DukeActor // (4454)
|
|
{
|
|
default
|
|
{
|
|
pic "DESKPHONE";
|
|
}
|
|
}
|
|
|
|
class DukeMace : DukeActor // (4464)
|
|
{
|
|
default
|
|
{
|
|
pic "MACE";
|
|
}
|
|
}
|
|
|
|
class DukeCoffeeMug : DukeActor // (4438)
|
|
{
|
|
default
|
|
{
|
|
pic "COFFEEMUG";
|
|
}
|
|
}
|
|
|
|
class DukeDevastatorBlast : DukeActor // (1642)
|
|
{
|
|
default
|
|
{
|
|
pic "DEVISTATORBLAST";
|
|
}
|
|
}
|
|
|
|
class DukeCannonballs : DukeActor // (1818)
|
|
{
|
|
default
|
|
{
|
|
pic "CANNONBALLS";
|
|
}
|
|
}
|
|
|
|
class DukeCannon : DukeActor // (1810)
|
|
{
|
|
default
|
|
{
|
|
pic "CANNON";
|
|
}
|
|
}
|
|
|
|
class DukeHotMeat : DukeActor // (4427)
|
|
{
|
|
default
|
|
{
|
|
pic "HOTMEAT";
|
|
}
|
|
}
|
|
|
|
class DukeLavaBubble : DukeActor // (4340)
|
|
{
|
|
default
|
|
{
|
|
pic "LAVABUBBLE";
|
|
}
|
|
}
|
|
|
|
class DukeNewBeastHangDead : DukeNewBeast // (4671)
|
|
{
|
|
default
|
|
{
|
|
pic "NEWBEASTHANGDEAD";
|
|
}
|
|
}
|
|
|
|
class DukeNewBeastJump : DukeNewBeast // (4690)
|
|
{
|
|
default
|
|
{
|
|
pic "NEWBEASTJUMP";
|
|
}
|
|
}
|
|
|