Skip to content

Commit

Permalink
Add Hexen II pickups (WIP)
Browse files Browse the repository at this point in the history
A few need additional scripting for proper implementation
Hexen II Torch effect is still WIP
  • Loading branch information
Lemon-King committed Aug 15, 2024
1 parent c884d0f commit fa4114c
Show file tree
Hide file tree
Showing 5 changed files with 387 additions and 95 deletions.
123 changes: 123 additions & 0 deletions resources/assets/animdefs.hx2
Original file line number Diff line number Diff line change
@@ -0,0 +1,123 @@
// HX2 Menu Cursor
texture optional hx2menudot1
pic graphics/hexen2/menudot1.png tics 4
pic graphics/hexen2/menudot2.png tics 4
pic graphics/hexen2/menudot3.png tics 4
pic graphics/hexen2/menudot4.png tics 4
pic graphics/hexen2/menudot5.png tics 4
pic graphics/hexen2/menudot6.png tics 4
pic graphics/hexen2/menudot7.png tics 4
pic graphics/hexen2/menudot8.png tics 4

// HX2 Boots of Speed
texture optional hx2durhst1
pic graphics/hexen2/durhst1.png tics 3
pic graphics/hexen2/durhst2.png tics 3
pic graphics/hexen2/durhst3.png tics 3
pic graphics/hexen2/durhst4.png tics 3
pic graphics/hexen2/durhst5.png tics 3
pic graphics/hexen2/durhst6.png tics 3
pic graphics/hexen2/durhst7.png tics 3
pic graphics/hexen2/durhst8.png tics 3
pic graphics/hexen2/durhst9.png tics 3
pic graphics/hexen2/durhst10.png tics 3
pic graphics/hexen2/durhst11.png tics 3
pic graphics/hexen2/durhst12.png tics 3
pic graphics/hexen2/durhst13.png tics 3
pic graphics/hexen2/durhst14.png tics 3
pic graphics/hexen2/durhst15.png tics 3
pic graphics/hexen2/durhst16.png tics 3

// HX2 Icon of the Defender
texture optional hx2durshd1
pic graphics/hexen2/durshd1.png tics 3
pic graphics/hexen2/durshd2.png tics 3
pic graphics/hexen2/durshd3.png tics 3
pic graphics/hexen2/durshd4.png tics 3
pic graphics/hexen2/durshd5.png tics 3
pic graphics/hexen2/durshd6.png tics 3
pic graphics/hexen2/durshd7.png tics 3
pic graphics/hexen2/durshd8.png tics 3
pic graphics/hexen2/durshd9.png tics 3
pic graphics/hexen2/durshd10.png tics 3
pic graphics/hexen2/durshd11.png tics 3
pic graphics/hexen2/durshd12.png tics 3
pic graphics/hexen2/durshd13.png tics 3
pic graphics/hexen2/durshd14.png tics 3
pic graphics/hexen2/durshd15.png tics 3
pic graphics/hexen2/durshd16.png tics 3

// HX2 Tome of Power
texture optional hx2pwrbook1
pic graphics/hexen2/pwrbook1.png tics 3
pic graphics/hexen2/pwrbook2.png tics 3
pic graphics/hexen2/pwrbook3.png tics 3
pic graphics/hexen2/pwrbook4.png tics 3
pic graphics/hexen2/pwrbook5.png tics 3
pic graphics/hexen2/pwrbook6.png tics 3
pic graphics/hexen2/pwrbook7.png tics 3
pic graphics/hexen2/pwrbook8.png tics 3
pic graphics/hexen2/pwrbook9.png tics 3
pic graphics/hexen2/pwrbook10.png tics 3
pic graphics/hexen2/pwrbook11.png tics 3
pic graphics/hexen2/pwrbook12.png tics 3
pic graphics/hexen2/pwrbook13.png tics 3
pic graphics/hexen2/pwrbook14.png tics 3
pic graphics/hexen2/pwrbook15.png tics 3
pic graphics/hexen2/pwrbook16.png tics 3

// HX2 Ring of Flight
texture optional hx2rngfly1
pic graphics/hexen2/rngfly1.png tics 3
pic graphics/hexen2/rngfly2.png tics 3
pic graphics/hexen2/rngfly3.png tics 3
pic graphics/hexen2/rngfly4.png tics 3
pic graphics/hexen2/rngfly5.png tics 3
pic graphics/hexen2/rngfly6.png tics 3
pic graphics/hexen2/rngfly7.png tics 3
pic graphics/hexen2/rngfly8.png tics 3
pic graphics/hexen2/rngfly9.png tics 3
pic graphics/hexen2/rngfly10.png tics 3
pic graphics/hexen2/rngfly11.png tics 3
pic graphics/hexen2/rngfly12.png tics 3
pic graphics/hexen2/rngfly13.png tics 3
pic graphics/hexen2/rngfly14.png tics 3
pic graphics/hexen2/rngfly15.png tics 3
pic graphics/hexen2/rngfly16.png tics 3

// HX2 Ring of Regeneration
texture optional hx2rngtrn1
pic graphics/hexen2/rngtrn1.png tics 3
pic graphics/hexen2/rngtrn2.png tics 3
pic graphics/hexen2/rngtrn3.png tics 3
pic graphics/hexen2/rngtrn4.png tics 3
pic graphics/hexen2/rngtrn5.png tics 3
pic graphics/hexen2/rngtrn6.png tics 3
pic graphics/hexen2/rngtrn7.png tics 3
pic graphics/hexen2/rngtrn8.png tics 3
pic graphics/hexen2/rngtrn9.png tics 3
pic graphics/hexen2/rngtrn10.png tics 3
pic graphics/hexen2/rngtrn11.png tics 3
pic graphics/hexen2/rngtrn12.png tics 3
pic graphics/hexen2/rngtrn13.png tics 3
pic graphics/hexen2/rngtrn14.png tics 3
pic graphics/hexen2/rngtrn15.png tics 3
pic graphics/hexen2/rngtrn16.png tics 3

// HX2 Ring of Water Breathing
texture optional hx2rngwtr1
pic graphics/hexen2/rngwtr1.png tics 3
pic graphics/hexen2/rngwtr2.png tics 3
pic graphics/hexen2/rngwtr3.png tics 3
pic graphics/hexen2/rngwtr4.png tics 3
pic graphics/hexen2/rngwtr5.png tics 3
pic graphics/hexen2/rngwtr7.png tics 3
pic graphics/hexen2/rngwtr8.png tics 3
pic graphics/hexen2/rngwtr9.png tics 3
pic graphics/hexen2/rngwtr10.png tics 3
pic graphics/hexen2/rngwtr11.png tics 3
pic graphics/hexen2/rngwtr12.png tics 3
pic graphics/hexen2/rngwtr13.png tics 3
pic graphics/hexen2/rngwtr14.png tics 3
pic graphics/hexen2/rngwtr15.png tics 3
pic graphics/hexen2/rngwtr16.png tics 3
4 changes: 4 additions & 0 deletions resources/assets/zscript/actors/hxdd/hexen2/_hexen2.zs
Original file line number Diff line number Diff line change
Expand Up @@ -47,11 +47,15 @@
#include "zscript/actors/hxdd/hexen2/weapons/succubusfirestorm.zs" // NEEDS POLISH PASS, GL LIGHTING, ICON
#include "zscript/actors/hxdd/hexen2/weapons/succubustempeststaff.zs" // NEEDS IMPLEMENTION

// Powerups
#include "zscript/actors/hxdd/hexen2/powerup/torch.zs"

// Inventory
#include "zscript/actors/hxdd/hexen2/inventory/pickups.zs"

// Pickups
#include "zscript/actors/hxdd/hexen2/pickups/armor.zs"
#include "zscript/actors/hxdd/hexen2/pickups/artifacts.zs"
#include "zscript/actors/hxdd/hexen2/pickups/mana.zs"
#include "zscript/actors/hxdd/hexen2/pickups/pickups.zs"
#include "zscript/actors/hxdd/hexen2/pickups/powerupsphere.zs"
181 changes: 181 additions & 0 deletions resources/assets/zscript/actors/hxdd/hexen2/pickups/artifacts.zs
Original file line number Diff line number Diff line change
@@ -0,0 +1,181 @@

class HX2ArtiHealth : ArtiHealth {
Default {
Inventory.Icon "graphics/hexen2/arti01.png";
}
States {
Spawn:
0000 A -1;
Loop;
}
}

// Needs HX2 Matching Implementation
class HX2ArtiSuperHealth : ArtiSuperHealth {
Default {
Inventory.Icon "graphics/hexen2/arti02.png";
}
States {
Spawn:
0000 A 350;
Loop;
}
}

// Needs HX2 Matching Implementation
class HX2ArtiFly : ArtiFly {
Default {
Inventory.Icon "graphics/hexen2/arti12.png";
}
States {
Spawn:
0000 A -1;
Stop;
}

override bool Use(bool pickup) {
let result = Super.Use(pickup);
if (result) {
Powerup power = Powerup(self.owner.FindInventory("PowerFlight"));
if (power) {
TextureID tex = TexMan.CheckForTexture("graphics/hexen2/rngfly1.png");
if (tex.IsValid()) {
power.Icon = tex;
}
}
}
return result;
}
}

class HX2ArtiInvulnerability : ArtiInvulnerability2 {
Default {
Inventory.Icon "graphics/hexen2/arti14.png";
}
States {
Spawn:
0000 A -1;
Stop;
}

override bool Use(bool pickup) {
let result = Super.Use(pickup);
if (result) {
Powerup power = Powerup(self.owner.FindInventory("PowerInvulnerable"));
if (power) {
TextureID tex = TexMan.CheckForTexture("graphics/hexen2/durshd1.png");
if (tex.IsValid()) {
power.Icon = tex;
}
}
}
return result;
}
}

class HX2ArtiTomeOfPower : ArtiTomeOfPower {
Default {
Inventory.Icon "graphics/hexen2/arti05.png";
}
States {
Spawn:
0000 A -1;
Stop;
}

override bool Use(bool pickup) {
let result = Super.Use(pickup);
if (result) {
Powerup power = Powerup(self.owner.FindInventory("PowerWeaponLevel2"));
if (power) {
TextureID tex = TexMan.CheckForTexture("graphics/hexen2/pwrbook1.png");
if (tex.IsValid()) {
power.Icon = tex;
}
}
}
return result;
}
}

class HX2ArtiSpeedBoots : ArtiSpeedBoots {
Default {
Inventory.Icon "graphics/hexen2/arti09.png";
}
States {
Spawn:
0000 A -1;
Stop;
}

override bool Use(bool pickup) {
let result = Super.Use(pickup);
if (result) {
Powerup power = Powerup(self.owner.FindInventory("PowerSpeed"));
if (power) {
TextureID tex = TexMan.CheckForTexture("graphics/hexen2/durhst1.png");
if (tex.IsValid()) {
power.Icon = tex;
}
}
}
return result;
}
}

class HX2ArtiBlastRadius : ArtiBlastRadius {
Default {
Inventory.Icon "graphics/hexen2/arti10.png";
}
States {
Spawn:
0000 A -1;
Stop;
}
}

class HX2ArtiBoostMana : ArtiBoostMana {
Default {
Inventory.Icon "graphics/hexen2/arti03.png";
}
States {
Spawn:
0000 A -1;
Stop;
}
}

// Needs HX2 Matching Implementation
class HX2ArtiTorch : ArtiTorch {
Default {
Inventory.Icon "graphics/hexen2/arti00.png";
Powerup.Type "HX2PowerTorch";
}
States {
Spawn:
0000 A -1;
Stop;
}
}

class HX2ArtiInvisibility : ArtiInvisibility {
Default {
Inventory.Icon "graphics/hexen2/arti07.png";
}
States {
Spawn:
0000 A -1;
Stop;
}
}

class HX2ArtiTeleport : ArtiTeleport {
Default {
Inventory.Icon "graphics/hexen2/arti04.png";
}
States {
Spawn:
0000 A -1;
Stop;
}
}
Loading

0 comments on commit fa4114c

Please sign in to comment.