flak_m/zscript/compat.zsc
Marisa Kirisame b398a27919 Change blue health textures to something prettier.
Add Heretic compatibility (WIP, needs testing and some tweaks).
2019-01-21 02:12:59 +01:00

199 lines
No EOL
3.8 KiB
Text

// Heretic keys
Class UTHereticYellowKey : KeyYellow
{
Default
{
Tag "Red Key";
Species "KeyYellow";
Inventory.PickupMessage "You got the Yellow Key.";
}
States
{
Spawn:
UKEY B -1;
Stop;
}
}
Class UTHereticGreenKey : KeyGreen
{
Default
{
Tag "Green Key";
Species "KeyGreen";
Inventory.PickupMessage "You got the Green Key.";
}
States
{
Spawn:
UKEY D -1;
Stop;
}
}
Class UTHereticBlueKey : KeyBlue
{
Default
{
Tag "Blue Key";
Species "KeyBlue";
Inventory.PickupMessage "You got the Blue Key.";
}
States
{
Spawn:
UKEY C -1;
Stop;
}
}
// Alternative player classes for compatibility with Heretic sprites
Class UTPlayerHereticCompat : UTPlayer
{
Default
{
Player.ColorRange 225, 240;
Player.Colorset 0, "Green", 225, 240, 238;
Player.Colorset 1, "Yellow", 114, 129, 127;
Player.Colorset 2, "Red", 145, 160, 158;
Player.Colorset 3, "Blue", 190, 205, 203;
Player.Colorset 4, "Brown", 67, 82, 80;
Player.Colorset 5, "Light Gray", 9, 24, 22;
Player.Colorset 6, "Light Brown", 74, 89, 87;
Player.Colorset 7, "Light Red", 150, 165, 163;
Player.Colorset 8, "Light Blue", 192, 207, 205;
Player.Colorset 9, "Beige", 95, 110, 108;
}
States
{
Spawn:
PLAY A -1;
Stop;
See:
PLAY ABCD 4;
Loop;
Melee:
Missile:
PLAY F 6 BRIGHT;
PLAY E 12;
Goto Spawn;
Pain:
PLAY G 4;
PLAY G 4 A_Pain;
Goto Spawn;
Death:
PLAY H 6 A_PlayerSkinCheck("AltSkinDeath");
PLAY I 6 A_PlayerScream;
PLAY JK 6;
PLAY L 6 A_NoBlocking;
PLAY MNO 6;
PLAY P -1;
Stop;
XDeath:
PLAY Q 0 A_PlayerSkinCheck("AltSkinXDeath");
PLAY Q 5 A_PlayerScream;
PLAY R 0 A_NoBlocking;
PLAY R 5 A_SkullPop;
PLAY STUVWX 5;
PLAY Y -1;
Stop;
Burn:
FDTH A 5 BRIGHT A_PlaySound("*burndeath");
FDTH B 4 BRIGHT;
FDTH C 5 BRIGHT;
FDTH D 4 BRIGHT A_PlayerScream;
FDTH E 5 BRIGHT;
FDTH F 4 BRIGHT;
FDTH G 5 BRIGHT A_PlaySound("*burndeath");
FDTH H 4 BRIGHT;
FDTH I 5 BRIGHT;
FDTH J 4 BRIGHT;
FDTH K 5 BRIGHT;
FDTH L 4 BRIGHT;
FDTH M 5 BRIGHT;
FDTH N 4 BRIGHT;
FDTH O 5 BRIGHT A_NoBlocking;
FDTH P 4 BRIGHT;
FDTH Q 5 BRIGHT;
FDTH R 4 BRIGHT;
ACLO E 35 A_CheckPlayerDone;
Wait;
AltSkinDeath:
PLAY H 10;
PLAY I 10 A_PlayerScream;
PLAY J 10 A_NoBlocking;
PLAY KLM 10;
PLAY N -1;
Stop;
AltSkinXDeath:
PLAY O 5;
PLAY P 5 A_XScream;
PLAY Q 5 A_NoBlocking;
PLAY RSTUV 5;
PLAY W -1;
Stop;
}
}
Class UTPlayerHereticCompatTMale1 : UTPlayerHereticCompat
{
Default
{
Player.SoundClass "tmale1";
Player.DisplayName "M Commando";
Player.Portrait "Blake";
-NOMENU;
}
}
Class UTPlayerHereticCompatTMale2 : UTPlayerHereticCompat
{
Default
{
Player.SoundClass "tmale2";
Player.DisplayName "M Soldier";
Player.Portrait "Brock";
-NOMENU;
}
}
Class UTPlayerHereticCompatTFemale1 : UTPlayerHereticCompat
{
Default
{
Player.SoundClass "tfemale";
Player.DisplayName "F Commando";
Player.Portrait "Ivana";
UTPlayer.DollType DOLL_Female;
-NOMENU;
}
}
Class UTPlayerHereticCompatTFemale2 : UTPlayerHereticCompat
{
Default
{
Player.SoundClass "tfemale";
Player.DisplayName "F Soldier";
Player.Portrait "Lauren";
UTPlayer.DollType DOLL_Female;
-NOMENU;
}
}
Class UTPlayerHereticCompatTBoss : UTPlayerHereticCompat
{
transient CVar bossfootsteps;
Default
{
Player.SoundClass "tboss";
Player.DisplayName "Boss";
Player.Portrait "Xan";
UTPlayer.DollType DOLL_Boss;
// should have NOBLOOD, but Xan did bleed in vanilla UT so...
// (this is what gave birth to the theory that Xan was actually Jerl Liandri himself)
-NOMENU;
}
override void PlayFootstep( double vol )
{
if ( !bossfootsteps ) bossfootsteps = CVar.GetCVar('flak_bossfootsteps',players[consoleplayer]);
if ( bossfootsteps.GetBool() ) A_PlaySound("ut/bossfootstep",CHAN_5,vol);
else Super.PlayFootstep(vol);
}
}