From 7086b10d566dab7001ffce94eb0cd15089b2b060 Mon Sep 17 00:00:00 2001 From: Marisa Kirisame Date: Thu, 4 Jun 2020 19:31:13 +0200 Subject: [PATCH] Golden Shells emit sparkles, for visibility. --- language.version | 2 +- zscript/swwm_ammo.zsc | 43 +++++++++++++++++++++++++++++++++++++++++-- 2 files changed, 42 insertions(+), 3 deletions(-) diff --git a/language.version b/language.version index 3b29fffa4..fb4b910fb 100644 --- a/language.version +++ b/language.version @@ -1,2 +1,2 @@ [default] -SWWM_MODVER="\cxSWWM GZ\c- r303 (Thu 4 Jun 19:17:32 CEST 2020)"; +SWWM_MODVER="\cxSWWM GZ\c- r304 (Thu 4 Jun 19:31:14 CEST 2020)"; diff --git a/zscript/swwm_ammo.zsc b/zscript/swwm_ammo.zsc index c83e43105..949f47712 100644 --- a/zscript/swwm_ammo.zsc +++ b/zscript/swwm_ammo.zsc @@ -463,11 +463,50 @@ Class PurpleShell4 : PurpleShell } } +Class GoldShellSparkle : Actor +{ + override void PostBeginPlay() + { + Scale *= FRandom[Goldy](.5,1.5); + vel.z = FRandom[Goldy](.5,1.5); + } + override void Tick() + { + if ( isFrozen() ) return; + SetOrigin(Vec3Offset(0,0,vel.z),true); + alpha -= .02; + if ( alpha <= 0 ) Destroy(); + } + Default + { + RenderStyle "Add"; + Scale 0.05; + +NOGRAVITY; + +NOBLOCKMAP; + +NOINTERACTION; + +DONTSPLASH; + +NOTELEPORT; + +FORCEXYBILLBOARD; + } + States + { + Spawn: + BLPF A -1 Bright; + Stop; + } +} + Class GoldShell : Ammo { Mixin SWWMShellAmmo; Mixin SWWMAmmo; + action void A_GoldShellTrail() + { + if ( Random[Goldy](0,2) ) return; + Spawn("GoldShellSparkle",Vec3Offset(FRandom[Goldy](-2,2),FRandom[Goldy](-2,2),FRandom[Goldy](10,18))); + } + Default { Tag "$T_GOLDSHELLS"; @@ -483,8 +522,8 @@ Class GoldShell : Ammo States { Spawn: - XZW1 A -1; - Stop; + XZW1 A 1 A_GoldShellTrail(); + Wait; } }