Add key gesture items.

This commit is contained in:
Mari the Deer 2020-12-30 22:30:44 +01:00
commit ca24d63f1f
29 changed files with 1351 additions and 38 deletions

View file

@ -10,20 +10,12 @@ This is just a bit of *"future planning"* for stuff that I ***might*** add after
- [8] Rail Carbine *("Tesla Beamer" in Ultra Suite 2 & 3)*
- [9] Ray-Khom *(UnSX)*
- [0] Grand Lance *(SWWM Iridium)*
* ***(Maybe)* Add the collectibles that were removed due to time constraints:**
- The Black Rat's Coven - Walpurgisnacht *(Debut album)*
- Cat Catcher *(Promo poster)*
- Hege Cactus *(Appears to absorb all water, causing intense thirst)*
- Raidemin Action Figure *(A popular Nukuri superhero, "looks a lot like you")*
- Hoagie *(Can't eat it, but looks delicious)*
- Lithium - Volume One *(A work of art, one of the finest graphic novels)*
- PISS Whiskey *("Is it actually piss or is that just the brand name? Either way, I don't want to know what's inside")*
- **[Heretic]** Doomguy Action Figure *("Oh, he gets one too?")*
- **[Hexen]** Lord Vilkreath - Fundaments of Puzzle Design *("What the hell is this crap?")*
- **[Hexen]** Obelisk of the Golden Vale *("I puked out my guts when I touched that fucking thing")*
* **Even more collectibles:**
* **More collectibles (some of which were initially planned but didn't make it in time):**
- AA-12 *("Ibuki's favorite shotgun. It's just a collectible model, so it doesn't actually shoot")*
- Cube *("It's a cube")*
- Hege Cactus *(Appears to absorb all water, causing intense thirst)*
- Hoagie *(Can't eat it, but looks delicious)*
- Lithium - Volume One *(A work of art, one of the finest graphic novels)*
- Manarock *("A delicacy for gods, but instantly deadly for mortals")*
- Rubber Duck *("Is this some kind of convoluted joke from those two?")*
* ***(Maybe)* Fake livestream chat overlay, with dynamic reactions to all sorts of stuff**

View file

@ -58,6 +58,10 @@ Brightmap Texture "models/DoomKeyLight.png"
{
Map "brightmaps/Fullbright.png"
}
HardwareShader Texture "models/DoomKeyLight3.png"
{
Shader "shaders/glsl/KeyBlink.fp"
}
HardwareShader Texture "models/DoomRedSkull.png"
{

View file

@ -1,2 +1,2 @@
[default]
SWWM_MODVER="\chSWWM \czGZ\c- \cw0.9.11b-pre r715 \cu(Wed 30 Dec 19:04:52 CET 2020)";
SWWM_MODVER="\chSWWM \czGZ\c- \cw0.9.11b-pre r716 \cu(Wed 30 Dec 22:30:44 CET 2020)";

File diff suppressed because it is too large Load diff

BIN
models/DoomCard1st.blend Normal file

Binary file not shown.

BIN
models/DoomCard1st_a.3d Normal file

Binary file not shown.

BIN
models/DoomCard1st_d.3d Normal file

Binary file not shown.

BIN
models/DoomKeyLight3.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 349 B

BIN
models/DoomSkull1st.blend Normal file

Binary file not shown.

BIN
models/DoomSkull1st_a.3d Normal file

Binary file not shown.

BIN
models/DoomSkull1st_d.3d Normal file

Binary file not shown.

BIN
models/HereticBlue1st.blend Normal file

Binary file not shown.

BIN
models/HereticBlue1st_a.3d Normal file

Binary file not shown.

BIN
models/HereticBlue1st_d.3d Normal file

Binary file not shown.

Binary file not shown.

BIN
models/HereticGreen1st_a.3d Normal file

Binary file not shown.

BIN
models/HereticGreen1st_d.3d Normal file

Binary file not shown.

BIN
models/HereticRed1st.blend Normal file

Binary file not shown.

BIN
models/HereticRed1st_a.3d Normal file

Binary file not shown.

BIN
models/HereticRed1st_d.3d Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View file

@ -11,7 +11,7 @@ Collectible models:
x Kirin Manga
x Kirin Plush
Collectible pickup animations:
Collectible gestures:
- Moth Plushy
- Akari Project
- Love Signals CD
@ -24,29 +24,27 @@ Collectible pickup animations:
- Kirin Manga
- Kirin Plush
Key pickup animations:
- Keycard
- Skull key
- Heretic Yellow Key
- Heretic Green Key
- Heretic Blue Key
- Heretic Red Key
Key gestures:
x Keycard
x Skull key
x Heretic Yellow Key
x Heretic Green Key
x Heretic Blue Key
x Heretic Red Key
# Post-release stuff
Character models:
- White Lady
Extra collectibles(?):
- BRC Debut Album
- Cat Catcher Poster
Extra collectibles:
- AA-12
- Cube
- Hege Cactus
- Raidemin Figure
- Hoagie
- Lithium Vol.1
- PISS Whiskey
- Doomguy Figure
- Eye Obelisk
- Manarock
- Rubber Duck
# DLC Weaponset

13
shaders/glsl/KeyBlink.fp Normal file
View file

@ -0,0 +1,13 @@
vec4 ProcessLight( vec4 color )
{
if ( mod(timer*35.,20.) < 10. )
color.rgb = vec3(1.);
return color;
}
vec4 ProcessTexel()
{
vec2 uv = vTexCoord.st*vec2(.5,1.);
if ( mod(timer*35.,20.) >= 10. ) uv.x += .5;
return getTexel(uv);
}

View file

@ -145,10 +145,9 @@ Class SWWMItemGesture : SWWMWeapon abstract
// push back
gest.sweapon.Delete(0);
gest.suse.Delete(0);
// go back to the main gesture and clear ourselves
// go back to the main gesture
player.ReadyWeapon = gest;
player.SetPSPrite(PSP_WEAPON,gest.ResolveState("Ready"));
invoker.Destroy();
return;
}
if ( gest.queued )
@ -156,17 +155,15 @@ Class SWWMItemGesture : SWWMWeapon abstract
gest.whichweapon = null;
gest.whichgesture = gest.nextgesture;
gest.queued = false;
// go back to the main gesture and clear ourselves
// go back to the main gesture
player.ReadyWeapon = gest;
player.SetPSPrite(PSP_WEAPON,gest.ResolveState("Ready"));
invoker.Destroy();
return;
}
// switch to old weapon and clear ourselves
// switch to old weapon
player.ReadyWeapon = gest;
player.PendingWeapon = gest.formerweapon;
player.SetPSPrite(PSP_WEAPON,gest.ResolveState("Deselect"));
invoker.Destroy();
}
Default

View file

@ -2424,20 +2424,21 @@ Class DemolitionistMenu : GenericMenu
if ( !multiplayer && (menuactive == Menu.On) )
{
// if it's a weapon, play the select sound
// if it's a collectible or key, play the "hands up" sound
let w = (Class<Weapon>)(hnd.checklist[j].used);
if ( w )
{
// play if actually switching
if ( hnd.checklist[j].result )
{
// gz 4.5pre workaround (expects a Name now)
String snd = GetDefaultByType(w).UpSound;
MenuSound(snd);
}
}
else if ( (hnd.checklist[j].used is 'SWWMCollectible') || (hnd.checklist[j].used is 'SWWMKey') )
MenuSound("demolitionist/handsup");
else
{
// gz 4.5pre workaround (expects a Name now)
String snd = GetDefaultByType(hnd.checklist[j].used).UseSound;
MenuSound(snd);
}

View file

@ -54,6 +54,7 @@ Class SWWMRedCard : SWWMKey
Species "RedCard";
Inventory.PickupMessage "$T_REDCARD";
Inventory.PickupFlash "SWWMRedPickupFlash";
SWWMKey.GestureWeapon "SWWMRedCardGesture";
Radius 10;
Height 25;
}
@ -72,6 +73,7 @@ Class SWWMYellowCard : SWWMKey
Species "YellowCard";
Inventory.PickupMessage "$T_YELLOWCARD";
Inventory.PickupFlash "SWWMPickupFlash";
SWWMKey.GestureWeapon "SWWMYellowCardGesture";
Radius 10;
Height 25;
}
@ -90,6 +92,7 @@ Class SWWMBlueCard : SWWMKey
Species "BlueCard";
Inventory.PickupMessage "$T_BLUECARD";
Inventory.PickupFlash "SWWMBluePickupFlash";
SWWMKey.GestureWeapon "SWWMBlueCardGesture";
Radius 10;
Height 25;
}
@ -108,6 +111,7 @@ Class SWWMSilverCardKDiZD : SWWMKey
Species "BlueSkull";
Inventory.PickupMessage "$T_SILVERCARD";
Inventory.PickupFlash "SWWMWhitePickupFlash";
SWWMKey.GestureWeapon "SWWMSilverCardGesture";
Radius 10;
Height 25;
}
@ -126,6 +130,7 @@ Class SWWMGreenCardKDiZD : SWWMKey
Species "YellowSkull";
Inventory.PickupMessage "$T_GREENCARD";
Inventory.PickupFlash "SWWMGreenPickupFlash";
SWWMKey.GestureWeapon "SWWMGreenCardGesture";
Radius 10;
Height 25;
}
@ -144,6 +149,7 @@ Class SWWMOrangeCardKDiZD : SWWMKey
Species "RedSkull";
Inventory.PickupMessage "$T_ORANGECARD";
Inventory.PickupFlash "SWWMPickupFlash";
SWWMKey.GestureWeapon "SWWMOrangeCardGesture";
Radius 10;
Height 25;
}
@ -162,6 +168,7 @@ Class SWWMGreenCard : SWWMKey
Species "GreenCard";
Inventory.PickupMessage "$T_GREENCARD";
Inventory.PickupFlash "SWWMGreenPickupFlash";
SWWMKey.GestureWeapon "SWWMGreenCardGesture";
Radius 10;
Height 25;
}
@ -182,6 +189,7 @@ Class SWWMRedSkull : SWWMKey
Species "RedSkull";
Inventory.PickupMessage "$T_REDSKULL";
Inventory.PickupFlash "SWWMRedPickupFlash";
SWWMKey.GestureWeapon "SWWMRedSkullGesture";
Radius 10;
Height 25;
}
@ -200,6 +208,7 @@ Class SWWMBlueSkull : SWWMKey
Species "BlueSkull";
Inventory.PickupMessage "$T_BLUESKULL";
Inventory.PickupFlash "SWWMBluePickupFlash";
SWWMKey.GestureWeapon "SWWMBlueSkullGesture";
Radius 10;
Height 25;
}
@ -218,6 +227,7 @@ Class SWWMYellowSkull : SWWMKey
Species "YellowSkull";
Inventory.PickupMessage "$T_YELLOWSKULL";
Inventory.PickupFlash "SWWMPickupFlash";
SWWMKey.GestureWeapon "SWWMYellowSkullGesture";
Radius 10;
Height 25;
}
@ -237,6 +247,7 @@ Class SWWMKeyGreen : SWWMKey
Species "KeyGreen";
Inventory.PickupMessage "$T_KEYGREEN";
Inventory.PickupFlash "SWWMGreenPickupFlash";
SWWMKey.GestureWeapon "SWWMGreenKeyGesture";
Radius 10;
Height 25;
}
@ -255,6 +266,7 @@ Class SWWMKeyBlue : SWWMKey
Species "KeyBlue";
Inventory.PickupMessage "$T_KEYBLUE";
Inventory.PickupFlash "SWWMBluePickupFlash";
SWWMKey.GestureWeapon "SWWMBlueKeyGesture";
Radius 10;
Height 25;
}
@ -273,6 +285,7 @@ Class SWWMKeyYellow : SWWMKey
Species "KeyYellow";
Inventory.PickupMessage "$T_KEYYELLOW";
Inventory.PickupFlash "SWWMPickupFlash";
SWWMKey.GestureWeapon "SWWMYellowKeyGesture";
Radius 10;
Height 25;
}
@ -291,6 +304,7 @@ Class SWWMKeyRed : SWWMKey
Species "KeyRed";
Inventory.PickupMessage "$T_KEYRED";
Inventory.PickupFlash "SWWMRedPickupFlash";
SWWMKey.GestureWeapon "SWWMRedKeyGesture";
Radius 10;
Height 25;
}
@ -301,3 +315,66 @@ Class SWWMKeyRed : SWWMKey
Stop;
}
}
// Key gestures
// (they all use the same exact animations, just with the object changed)
// (yeah, I'm lazy, and there's a lot of keys)
Class SWWMKeyGesture : SWWMItemGesture abstract
{
States
{
Fire:
XZW1 A 3 A_Jump(128,"AltFire","AltFire2");
XZW1 B 3 A_StartSound("demolitionist/handsup",CHAN_WEAPON,CHANF_OVERLAP);
XZW1 CDEF 3;
XZW1 GHIJKLMNO 4;
XZW1 P 3 A_StartSound("demolitionist/handsdown",CHAN_WEAPON,CHANF_OVERLAP);
XZW1 QRST 3;
XZW1 A -1 A_FinishGesture();
Stop;
AltFire:
XZW1 A 3 A_Jump(128,"Fire","AltFire2");
XZW1 U 3 A_StartSound("demolitionist/handsup",CHAN_WEAPON,CHANF_OVERLAP);
XZW1 VWX 3;
XZW1 YZ 4;
XZW2 ABC 4;
XZW2 D 4 A_StartSound("demolitionist/handsdown",CHAN_WEAPON,CHANF_OVERLAP,pitch:.7);
XZW2 EFGHIJ 4;
XZW2 KL 3;
XZW2 M 3 A_StartSound("demolitionist/handsdown",CHAN_WEAPON,CHANF_OVERLAP);
XZW2 NOPQR 3;
XZW1 A -1 A_FinishGesture();
Stop;
AltFire2:
XZW1 A 3;
XZW2 S 3 A_StartSound("demolitionist/handsup",CHAN_WEAPON,CHANF_OVERLAP);
XZW2 TUVWX 3;
XZW2 YZ 4;
XZW3 ABCDE 4;
XZW3 F 2 A_StartSound("demolitionist/handsdown",CHAN_WEAPON,CHANF_OVERLAP);
XZW3 GHI 2;
XZW3 JKL 3;
XZW3 MN 2;
XZW3 O 2 A_StartSound("demolitionist/petting",CHAN_WEAPON,CHANF_OVERLAP,.4);
XZW3 PQ 2;
XZW3 RS 4;
XZW3 T 4 A_StartSound("demolitionist/handsdown",CHAN_WEAPON,CHANF_OVERLAP);
XZW3 UV 4;
XZW3 WXY 3;
XZW1 A -1 A_FinishGesture();
Stop;
}
}
Class SWWMRedCardGesture : SWWMKeyGesture {}
Class SWWMYellowCardGesture : SWWMKeyGesture {}
Class SWWMBlueCardGesture : SWWMKeyGesture {}
Class SWWMSilverCardGesture : SWWMKeyGesture {}
Class SWWMGreenCardGesture : SWWMKeyGesture {}
Class SWWMOrangeCardGesture : SWWMKeyGesture {}
Class SWWMRedSkullGesture : SWWMKeyGesture {}
Class SWWMYellowSkullGesture : SWWMKeyGesture {}
Class SWWMBlueSkullGesture : SWWMKeyGesture {}
Class SWWMGreenKeyGesture : SWWMKeyGesture {}
Class SWWMBlueKeyGesture : SWWMKeyGesture {}
Class SWWMYellowKeyGesture : SWWMKeyGesture {}
Class SWWMRedKeyGesture : SWWMKeyGesture {}

View file

@ -3219,11 +3219,13 @@ Class SWWMGesture : SWWMWeapon
{
// already gesturing
// queue if unique
if ( (w.sweapon.Size() <= 0) || (w.sweapon.Find(a) != w.sweapon.Size()) )
for ( int i=0; i<w.sweapon.Size(); i++ )
{
w.sweapon.Push(a);
w.suse.Push(used);
if ( (w.sweapon[i] != a) || (w.suse[i] != used) ) continue;
return null;
}
w.sweapon.Push(a);
w.suse.Push(used);
return null;
}
if ( !w )