swwmgz_m/zscript/dlc/swwm_blastin.zsc
Marisa the Magician 80db58b0d0 Bump zscript ver to 4.14.1, plus a whole lot of stuff.
- Try to get rid of all implicit casts from string to name, color or class.
 - Use FindClass where needed.
 - Used a map in a case where a dictionary was unneeded.
 - Use new bounce flags where needed.
 - Replace Legacy of Rust weapons/ammo.
2025-03-13 14:50:58 +01:00

76 lines
1.9 KiB
Text

// Nuutek Plasma Blaster (from SWWM series)
// Slot 2, spawns shared with Explodium Gun
/*
dev notes:
- very low recoil per shot, except for altfire
- chargelevel is used as a timer, once reached, release altfire to
spend entire clipcount for alt projectile, with damage, size and
lifespan scaling with clipcount
- idea for projectile include solid "glob" with glowing tail, as well
as various particle trails and lingering "beams"
- lingering beams will use bezier curves to follow trailing points that
gradually move away, with alpha interpolating between them based on
their own lifespan as well (no idea how hard this will be to
implement but that's part of the fun, really)
- originally intended to have a very verbose display, but that may not
be a great idea and I need to look into a more "ergonomic" design
*/
Class PlasmaBlast : SWWMWeapon
{
int clipcount, chargelevel;
Property ClipCount : clipcount;
Default
{
Tag "$T_PLASMABLAST";
Inventory.Icon "graphics/HUD/Icons/W_PlasmaBlast.png";
Inventory.PickupMessage "$T_PLASMABLAST";
Obituary "$O_PLASMABLAST";
SWWMWeapon.Tooltip "$TT_PLASMABLAST";
SWWMWeapon.GetLine "getplasmablast1";
Weapon.SlotNumber 2;
Weapon.SlotPriority 3.;
Weapon.SelectionOrder 1100;
Inventory.MaxAmount 2;
Weapon.SisterWeapon 'DualPlasmaBlast';
Stamina 7000;
PlasmaBlast.ClipCount 8;
+WEAPON.EXPLOSIVE;
+SWWMWEAPON.HASSCRTEX;
}
States
{
Spawn:
XZW1 A -1;
Stop;
}
}
Class DualPlasmaBlast : SWWMWeapon
{
int clipcount;
Property ClipCount : clipcount;
Default
{
Tag "$T_PLASMABLAST2";
Obituary "$O_PLASMABLAST";
SWWMWeapon.Tooltip "$TT_PLASMABLAST2";
SWWMWeapon.GetLine "getplasmablast2";
SWWMWeapon.NumCrosshairs 2;
Weapon.SlotNumber 2;
Weapon.SlotPriority 4.;
Weapon.SelectionOrder 1050;
Weapon.SisterWeapon 'PlasmaBlast';
DualPlasmaBlast.ClipCount 8;
+WEAPON.EXPLOSIVE;
+SWWMWEAPON.HIDEINMENU;
+SWWMWEAPON.NOSWAPWEAPON;
+SWWMWEAPON.HASSCRTEX;
}
}