- Migrated screen projection code to libeye. - Some pickups emit light, like in Doomreal. - Backported map revealer item from Doomreal. - Brand new Invulnerability and Night Vision powerups. - Add option to allow Shield Belt and armors simultaneously. - Backported armor bonus model from Doomreal. - Added Dual Enforcers icon for HUD. - Changed player class names to their character names, like in Doomreal. - Terrain splashes. - Translocator doesn't telefrag other players in coop. - Reduced view shake from Impact Hammer. - Various other updates and bug fixes.
261 lines
3.9 KiB
Text
261 lines
3.9 KiB
Text
// Heretic keys
|
|
Class UTHereticYellowKey : KeyYellow
|
|
{
|
|
Default
|
|
{
|
|
Tag "$T_YELLOWKEY";
|
|
Species "KeyYellow";
|
|
Inventory.PickupMessage "$I_YELLOWKEY";
|
|
}
|
|
States
|
|
{
|
|
Spawn:
|
|
UKEY B -1;
|
|
Stop;
|
|
}
|
|
}
|
|
|
|
Class UTHereticGreenKey : KeyGreen
|
|
{
|
|
Default
|
|
{
|
|
Tag "$T_GREENKEY";
|
|
Species "KeyGreen";
|
|
Inventory.PickupMessage "$I_GREENKEY";
|
|
}
|
|
States
|
|
{
|
|
Spawn:
|
|
UKEY D -1;
|
|
Stop;
|
|
}
|
|
}
|
|
|
|
Class UTHereticBlueKey : KeyBlue
|
|
{
|
|
Default
|
|
{
|
|
Tag "$T_BLUEKEY";
|
|
Species "KeyBlue";
|
|
Inventory.PickupMessage "$I_BLUEKEY";
|
|
}
|
|
States
|
|
{
|
|
Spawn:
|
|
UKEY C -1;
|
|
Stop;
|
|
}
|
|
}
|
|
|
|
// Base class for items that can be activated from the inventory bar
|
|
Class UTActivatable : Inventory
|
|
{
|
|
Class<Inventory> GiveItem;
|
|
|
|
Property GiveItem: GiveItem;
|
|
|
|
override bool Use( bool pickup )
|
|
{
|
|
if ( !Owner ) return true;
|
|
let i = GetDefaultByType(GiveItem);
|
|
if ( Owner.GiveInventory(GiveItem,i.Amount) )
|
|
{
|
|
Owner.A_PlaySound(i.PickupSound,CHAN_ITEM);
|
|
return true;
|
|
}
|
|
return false;
|
|
}
|
|
|
|
Default
|
|
{
|
|
+INVENTORY.INVBAR;
|
|
Inventory.DefMaxAmount;
|
|
Inventory.PickupSound "misc/p_pkup";
|
|
Inventory.UseSound "";
|
|
}
|
|
}
|
|
|
|
Class ActUDamage : UTActivatable
|
|
{
|
|
Default
|
|
{
|
|
Tag "$T_UDAMAGE";
|
|
Inventory.Icon "ItemUdmg";
|
|
Inventory.PickupMessage "$I_UDAMAGE";
|
|
+COUNTITEM;
|
|
+INVENTORY.BIGPOWERUP;
|
|
UTActivatable.GiveItem "UDamage";
|
|
Inventory.RespawnTics 4200;
|
|
}
|
|
States
|
|
{
|
|
Spawn:
|
|
UDAM A -1;
|
|
Stop;
|
|
}
|
|
}
|
|
|
|
Class ActUTInvulnerability : UTActivatable
|
|
{
|
|
Default
|
|
{
|
|
Tag "$T_UTINVUL";
|
|
Inventory.Icon "ItemInvl";
|
|
Inventory.PickupMessage "$I_UTINVUL";
|
|
+COUNTITEM;
|
|
+INVENTORY.BIGPOWERUP;
|
|
UTActivatable.GiveItem "UTInvulnerability";
|
|
Inventory.RespawnTics 4200;
|
|
}
|
|
States
|
|
{
|
|
Spawn:
|
|
UKEY A -1;
|
|
Stop;
|
|
}
|
|
}
|
|
|
|
Class ActUTInvisibility : UTActivatable
|
|
{
|
|
Default
|
|
{
|
|
Tag "$T_INVISIBILITY";
|
|
Inventory.Icon "ItemInvs";
|
|
Inventory.PickupMessage "$I_INVISIBILITY";
|
|
+COUNTITEM;
|
|
+INVENTORY.BIGPOWERUP;
|
|
UTActivatable.GiveItem "UTInvisibility";
|
|
Inventory.RespawnTics 4200;
|
|
}
|
|
override void PostBeginPlay()
|
|
{
|
|
Super.PostBeginPlay();
|
|
tracer = Spawn("UTInvisibilityX",pos);
|
|
tracer.angle = angle;
|
|
tracer.target = self;
|
|
}
|
|
States
|
|
{
|
|
Spawn:
|
|
INVS A -1;
|
|
Stop;
|
|
}
|
|
}
|
|
|
|
Class ActUTNightVision : UTActivatable
|
|
{
|
|
Default
|
|
{
|
|
Tag "$T_UTVISION";
|
|
Inventory.Icon "ItemLite";
|
|
Inventory.PickupMessage "$I_UTVISION";
|
|
+COUNTITEM;
|
|
+INVENTORY.BIGPOWERUP;
|
|
UTActivatable.GiveItem "UTNightVision";
|
|
Inventory.RespawnTics 4200;
|
|
}
|
|
override void PostBeginPlay()
|
|
{
|
|
Super.PostBeginPlay();
|
|
tracer = Spawn("UTNightVisionX",pos);
|
|
tracer.angle = angle;
|
|
tracer.target = self;
|
|
}
|
|
States
|
|
{
|
|
Spawn:
|
|
UKEY A -1;
|
|
Stop;
|
|
}
|
|
}
|
|
|
|
Class ActJumpBoots : UTActivatable
|
|
{
|
|
Default
|
|
{
|
|
Tag "$T_JUMPBOOTS";
|
|
Inventory.Icon "ItemBoot";
|
|
Inventory.PickupMessage "$I_JUMPBOOTS";
|
|
UTActivatable.GiveItem "UTJumpBoots";
|
|
Inventory.RespawnTics 1050;
|
|
}
|
|
States
|
|
{
|
|
Spawn:
|
|
JBUT A -1;
|
|
Stop;
|
|
}
|
|
}
|
|
|
|
// These have to be subclassed from HealthPickup for auto-use
|
|
Class UTActivatableHealth : HealthPickup
|
|
{
|
|
Default
|
|
{
|
|
+INVENTORY.INVBAR;
|
|
Inventory.DefMaxAmount;
|
|
Inventory.PickupSound "misc/p_pkup";
|
|
Inventory.UseSound "misc/ut_heal";
|
|
HealthPickup.Autouse 1;
|
|
}
|
|
}
|
|
|
|
Class ActHealthPack : UTActivatableHealth
|
|
{
|
|
Default
|
|
{
|
|
Tag "$T_SUPERHEALTH";
|
|
Inventory.Icon "ItemHbox";
|
|
Inventory.PickupMessage "$I_SUPERHEALTH";
|
|
+COUNTITEM;
|
|
Health 100;
|
|
Inventory.UseSound "misc/ut_keg";
|
|
Inventory.RespawnTics 3500;
|
|
HealthPickup.Autouse 2;
|
|
}
|
|
override bool Use( bool pickup )
|
|
{
|
|
return Owner.GiveBody(health,200);
|
|
}
|
|
States
|
|
{
|
|
Spawn:
|
|
HBOX A -1;
|
|
Stop;
|
|
}
|
|
}
|
|
|
|
Class ActHealthBox : UTActivatableHealth
|
|
{
|
|
Default
|
|
{
|
|
Tag "$T_HEALTHBOX";
|
|
Inventory.Icon "ItemHbxb";
|
|
Inventory.PickupMessage "$I_HEALTHBOX";
|
|
Health 50;
|
|
}
|
|
States
|
|
{
|
|
Spawn:
|
|
HBOX B -1;
|
|
Stop;
|
|
}
|
|
}
|
|
|
|
Class ActMedBox : UTActivatableHealth
|
|
{
|
|
Default
|
|
{
|
|
Tag "$T_MEDBOX";
|
|
Inventory.Icon "ItemMbox";
|
|
Inventory.PickupMessage "$I_MEDBOX";
|
|
Health 20;
|
|
Inventory.RespawnTics 700;
|
|
}
|
|
States
|
|
{
|
|
Spawn:
|
|
HBOX C -1;
|
|
Stop;
|
|
}
|
|
}
|