More cheat stuff (includes a flag!).
This commit is contained in:
parent
d22f9609e0
commit
e6133c8a25
16 changed files with 417 additions and 11 deletions
|
|
@ -1,3 +1,3 @@
|
|||
[default]
|
||||
SWWM_MODVER="\chSWWM \czGZ\c- \cw0.9.11b-pre r458 \cu(Thu 29 Apr 23:25:24 CEST 2021)\c-";
|
||||
SWWM_SHORTVER="\cw0.9.11b-pre r458 \cu(2021-04-29 23:25:24)\c-";
|
||||
SWWM_MODVER="\chSWWM \czGZ\c- \cw0.9.11b-pre r459 \cu(Thu 29 Apr 23:26:34 CEST 2021)\c-";
|
||||
SWWM_SHORTVER="\cw0.9.11b-pre r459 \cu(2021-04-29 23:26:34)\c-";
|
||||
|
|
|
|||
|
|
@ -9,6 +9,262 @@ Model "FroggyChair"
|
|||
|
||||
FrameIndex XZW1 A 0 0
|
||||
}
|
||||
Model "SWWMFlag"
|
||||
{
|
||||
Path "models"
|
||||
|
||||
Model 0 "SWWMFlag_d.3d"
|
||||
Skin 0 "SWWMFlag.png"
|
||||
Scale 0.5 0.5 0.5
|
||||
|
||||
// Default
|
||||
FrameIndex XZW1 A 0 0
|
||||
FrameIndex XZW1 B 0 1
|
||||
FrameIndex XZW1 C 0 2
|
||||
FrameIndex XZW1 D 0 3
|
||||
FrameIndex XZW1 E 0 4
|
||||
FrameIndex XZW1 F 0 5
|
||||
FrameIndex XZW1 G 0 6
|
||||
FrameIndex XZW1 H 0 7
|
||||
FrameIndex XZW1 I 0 8
|
||||
FrameIndex XZW1 J 0 9
|
||||
FrameIndex XZW1 K 0 10
|
||||
FrameIndex XZW1 L 0 11
|
||||
FrameIndex XZW1 M 0 12
|
||||
FrameIndex XZW1 N 0 13
|
||||
FrameIndex XZW1 O 0 14
|
||||
FrameIndex XZW1 P 0 15
|
||||
FrameIndex XZW1 Q 0 16
|
||||
FrameIndex XZW1 R 0 17
|
||||
FrameIndex XZW1 S 0 18
|
||||
FrameIndex XZW1 T 0 19
|
||||
FrameIndex XZW1 U 0 20
|
||||
FrameIndex XZW1 V 0 21
|
||||
FrameIndex XZW1 W 0 22
|
||||
FrameIndex XZW1 X 0 23
|
||||
FrameIndex XZW1 Y 0 24
|
||||
FrameIndex XZW1 Z 0 25
|
||||
FrameIndex XZW2 A 0 26
|
||||
FrameIndex XZW2 B 0 27
|
||||
FrameIndex XZW2 C 0 28
|
||||
FrameIndex XZW2 D 0 29
|
||||
FrameIndex XZW2 E 0 30
|
||||
FrameIndex XZW2 F 0 31
|
||||
FrameIndex XZW2 G 0 32
|
||||
FrameIndex XZW2 H 0 33
|
||||
FrameIndex XZW2 I 0 34
|
||||
FrameIndex XZW2 J 0 35
|
||||
FrameIndex XZW2 K 0 36
|
||||
FrameIndex XZW2 L 0 37
|
||||
FrameIndex XZW2 M 0 38
|
||||
FrameIndex XZW2 N 0 39
|
||||
FrameIndex XZW2 O 0 40
|
||||
FrameIndex XZW2 P 0 41
|
||||
FrameIndex XZW2 Q 0 42
|
||||
FrameIndex XZW2 R 0 43
|
||||
FrameIndex XZW2 S 0 44
|
||||
FrameIndex XZW2 T 0 45
|
||||
FrameIndex XZW2 U 0 46
|
||||
FrameIndex XZW2 V 0 47
|
||||
FrameIndex XZW2 W 0 48
|
||||
FrameIndex XZW2 X 0 49
|
||||
FrameIndex XZW2 Y 0 50
|
||||
FrameIndex XZW2 Z 0 51
|
||||
FrameIndex XZW3 A 0 52
|
||||
FrameIndex XZW3 B 0 53
|
||||
FrameIndex XZW3 C 0 54
|
||||
FrameIndex XZW3 D 0 55
|
||||
FrameIndex XZW3 E 0 56
|
||||
FrameIndex XZW3 F 0 57
|
||||
FrameIndex XZW3 G 0 58
|
||||
FrameIndex XZW3 H 0 59
|
||||
// Pride
|
||||
Skin 0 "SWWMFlag_Pride.png"
|
||||
FrameIndex XZW3 I 0 0
|
||||
FrameIndex XZW3 J 0 1
|
||||
FrameIndex XZW3 K 0 2
|
||||
FrameIndex XZW3 L 0 3
|
||||
FrameIndex XZW3 M 0 4
|
||||
FrameIndex XZW3 N 0 5
|
||||
FrameIndex XZW3 O 0 6
|
||||
FrameIndex XZW3 P 0 7
|
||||
FrameIndex XZW3 Q 0 8
|
||||
FrameIndex XZW3 R 0 9
|
||||
FrameIndex XZW3 S 0 10
|
||||
FrameIndex XZW3 T 0 11
|
||||
FrameIndex XZW3 U 0 12
|
||||
FrameIndex XZW3 V 0 13
|
||||
FrameIndex XZW3 W 0 14
|
||||
FrameIndex XZW3 X 0 15
|
||||
FrameIndex XZW3 Y 0 16
|
||||
FrameIndex XZW3 Z 0 17
|
||||
FrameIndex XZW4 A 0 18
|
||||
FrameIndex XZW4 B 0 19
|
||||
FrameIndex XZW4 C 0 20
|
||||
FrameIndex XZW4 D 0 21
|
||||
FrameIndex XZW4 E 0 22
|
||||
FrameIndex XZW4 F 0 23
|
||||
FrameIndex XZW4 G 0 24
|
||||
FrameIndex XZW4 H 0 25
|
||||
FrameIndex XZW4 I 0 26
|
||||
FrameIndex XZW4 J 0 27
|
||||
FrameIndex XZW4 K 0 28
|
||||
FrameIndex XZW4 L 0 29
|
||||
FrameIndex XZW4 M 0 30
|
||||
FrameIndex XZW4 N 0 31
|
||||
FrameIndex XZW4 O 0 32
|
||||
FrameIndex XZW4 P 0 33
|
||||
FrameIndex XZW4 Q 0 34
|
||||
FrameIndex XZW4 R 0 35
|
||||
FrameIndex XZW4 S 0 36
|
||||
FrameIndex XZW4 T 0 37
|
||||
FrameIndex XZW4 U 0 38
|
||||
FrameIndex XZW4 V 0 39
|
||||
FrameIndex XZW4 W 0 40
|
||||
FrameIndex XZW4 X 0 41
|
||||
FrameIndex XZW4 Y 0 42
|
||||
FrameIndex XZW4 Z 0 43
|
||||
FrameIndex XZW5 A 0 44
|
||||
FrameIndex XZW5 B 0 45
|
||||
FrameIndex XZW5 C 0 46
|
||||
FrameIndex XZW5 D 0 47
|
||||
FrameIndex XZW5 E 0 48
|
||||
FrameIndex XZW5 F 0 49
|
||||
FrameIndex XZW5 G 0 50
|
||||
FrameIndex XZW5 H 0 51
|
||||
FrameIndex XZW5 I 0 52
|
||||
FrameIndex XZW5 J 0 53
|
||||
FrameIndex XZW5 K 0 54
|
||||
FrameIndex XZW5 L 0 55
|
||||
FrameIndex XZW5 M 0 56
|
||||
FrameIndex XZW5 N 0 57
|
||||
FrameIndex XZW5 O 0 58
|
||||
FrameIndex XZW5 P 0 59
|
||||
// Trans
|
||||
Skin 0 "SWWMFlag_Trans.png"
|
||||
FrameIndex XZW5 Q 0 0
|
||||
FrameIndex XZW5 R 0 1
|
||||
FrameIndex XZW5 S 0 2
|
||||
FrameIndex XZW5 T 0 3
|
||||
FrameIndex XZW5 U 0 4
|
||||
FrameIndex XZW5 V 0 5
|
||||
FrameIndex XZW5 W 0 6
|
||||
FrameIndex XZW5 X 0 7
|
||||
FrameIndex XZW5 Y 0 8
|
||||
FrameIndex XZW5 Z 0 9
|
||||
FrameIndex XZW6 A 0 10
|
||||
FrameIndex XZW6 B 0 11
|
||||
FrameIndex XZW6 C 0 12
|
||||
FrameIndex XZW6 D 0 13
|
||||
FrameIndex XZW6 E 0 14
|
||||
FrameIndex XZW6 F 0 15
|
||||
FrameIndex XZW6 G 0 16
|
||||
FrameIndex XZW6 H 0 17
|
||||
FrameIndex XZW6 I 0 18
|
||||
FrameIndex XZW6 J 0 19
|
||||
FrameIndex XZW6 K 0 20
|
||||
FrameIndex XZW6 L 0 21
|
||||
FrameIndex XZW6 M 0 22
|
||||
FrameIndex XZW6 N 0 23
|
||||
FrameIndex XZW6 O 0 24
|
||||
FrameIndex XZW6 P 0 25
|
||||
FrameIndex XZW6 Q 0 26
|
||||
FrameIndex XZW6 R 0 27
|
||||
FrameIndex XZW6 S 0 28
|
||||
FrameIndex XZW6 T 0 29
|
||||
FrameIndex XZW6 U 0 30
|
||||
FrameIndex XZW6 V 0 31
|
||||
FrameIndex XZW6 W 0 32
|
||||
FrameIndex XZW6 X 0 33
|
||||
FrameIndex XZW6 Y 0 34
|
||||
FrameIndex XZW6 Z 0 35
|
||||
FrameIndex XZW7 A 0 36
|
||||
FrameIndex XZW7 B 0 37
|
||||
FrameIndex XZW7 C 0 38
|
||||
FrameIndex XZW7 D 0 39
|
||||
FrameIndex XZW7 E 0 40
|
||||
FrameIndex XZW7 F 0 41
|
||||
FrameIndex XZW7 G 0 42
|
||||
FrameIndex XZW7 H 0 43
|
||||
FrameIndex XZW7 I 0 44
|
||||
FrameIndex XZW7 J 0 45
|
||||
FrameIndex XZW7 K 0 46
|
||||
FrameIndex XZW7 L 0 47
|
||||
FrameIndex XZW7 M 0 48
|
||||
FrameIndex XZW7 N 0 49
|
||||
FrameIndex XZW7 O 0 50
|
||||
FrameIndex XZW7 P 0 51
|
||||
FrameIndex XZW7 Q 0 52
|
||||
FrameIndex XZW7 R 0 53
|
||||
FrameIndex XZW7 S 0 54
|
||||
FrameIndex XZW7 T 0 55
|
||||
FrameIndex XZW7 U 0 56
|
||||
FrameIndex XZW7 V 0 57
|
||||
FrameIndex XZW7 W 0 58
|
||||
FrameIndex XZW7 X 0 59
|
||||
// Enby
|
||||
Skin 0 "SWWMFlag_Enby.png"
|
||||
FrameIndex XZW7 Y 0 0
|
||||
FrameIndex XZW7 Z 0 1
|
||||
FrameIndex XZW8 A 0 2
|
||||
FrameIndex XZW8 B 0 3
|
||||
FrameIndex XZW8 C 0 4
|
||||
FrameIndex XZW8 D 0 5
|
||||
FrameIndex XZW8 E 0 6
|
||||
FrameIndex XZW8 F 0 7
|
||||
FrameIndex XZW8 G 0 8
|
||||
FrameIndex XZW8 H 0 9
|
||||
FrameIndex XZW8 I 0 10
|
||||
FrameIndex XZW8 J 0 11
|
||||
FrameIndex XZW8 K 0 12
|
||||
FrameIndex XZW8 L 0 13
|
||||
FrameIndex XZW8 M 0 14
|
||||
FrameIndex XZW8 N 0 15
|
||||
FrameIndex XZW8 O 0 16
|
||||
FrameIndex XZW8 P 0 17
|
||||
FrameIndex XZW8 Q 0 18
|
||||
FrameIndex XZW8 R 0 19
|
||||
FrameIndex XZW8 S 0 20
|
||||
FrameIndex XZW8 T 0 21
|
||||
FrameIndex XZW8 U 0 22
|
||||
FrameIndex XZW8 V 0 23
|
||||
FrameIndex XZW8 W 0 24
|
||||
FrameIndex XZW8 X 0 25
|
||||
FrameIndex XZW8 Y 0 26
|
||||
FrameIndex XZW8 Z 0 27
|
||||
FrameIndex XZW9 A 0 28
|
||||
FrameIndex XZW9 B 0 29
|
||||
FrameIndex XZW9 C 0 30
|
||||
FrameIndex XZW9 D 0 31
|
||||
FrameIndex XZW9 E 0 32
|
||||
FrameIndex XZW9 F 0 33
|
||||
FrameIndex XZW9 G 0 34
|
||||
FrameIndex XZW9 H 0 35
|
||||
FrameIndex XZW9 I 0 36
|
||||
FrameIndex XZW9 J 0 37
|
||||
FrameIndex XZW9 K 0 38
|
||||
FrameIndex XZW9 L 0 39
|
||||
FrameIndex XZW9 M 0 40
|
||||
FrameIndex XZW9 N 0 41
|
||||
FrameIndex XZW9 O 0 42
|
||||
FrameIndex XZW9 P 0 43
|
||||
FrameIndex XZW9 Q 0 44
|
||||
FrameIndex XZW9 R 0 45
|
||||
FrameIndex XZW9 S 0 46
|
||||
FrameIndex XZW9 T 0 47
|
||||
FrameIndex XZW9 U 0 48
|
||||
FrameIndex XZW9 V 0 49
|
||||
FrameIndex XZW9 W 0 50
|
||||
FrameIndex XZW9 X 0 51
|
||||
FrameIndex XZW9 Y 0 52
|
||||
FrameIndex XZW9 Z 0 53
|
||||
FrameIndex XZWA A 0 54
|
||||
FrameIndex XZWA B 0 55
|
||||
FrameIndex XZWA C 0 56
|
||||
FrameIndex XZWA D 0 57
|
||||
FrameIndex XZWA E 0 58
|
||||
FrameIndex XZWA F 0 59
|
||||
}
|
||||
Model "Chancebox"
|
||||
{
|
||||
Path "models"
|
||||
|
|
|
|||
BIN
models/SWWMFlag.blend
Normal file
BIN
models/SWWMFlag.blend
Normal file
Binary file not shown.
BIN
models/SWWMFlag.mdd
Normal file
BIN
models/SWWMFlag.mdd
Normal file
Binary file not shown.
BIN
models/SWWMFlag.png
Normal file
BIN
models/SWWMFlag.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 17 KiB |
BIN
models/SWWMFlag.xcf
Normal file
BIN
models/SWWMFlag.xcf
Normal file
Binary file not shown.
BIN
models/SWWMFlag_Enby.png
Normal file
BIN
models/SWWMFlag_Enby.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 16 KiB |
BIN
models/SWWMFlag_Pride.png
Normal file
BIN
models/SWWMFlag_Pride.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 15 KiB |
BIN
models/SWWMFlag_Trans.png
Normal file
BIN
models/SWWMFlag_Trans.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 16 KiB |
BIN
models/SWWMFlag_a.3d
Normal file
BIN
models/SWWMFlag_a.3d
Normal file
Binary file not shown.
BIN
models/SWWMFlag_d.3d
Normal file
BIN
models/SWWMFlag_d.3d
Normal file
Binary file not shown.
|
|
@ -916,6 +916,7 @@ misc/achievement sounds/CTF6.ogg
|
|||
misc/wow sounds/WOW.ogg
|
||||
misc/achievement2 sounds/YAY.ogg
|
||||
misc/orbexplode sounds/ORBEXPLODE.ogg
|
||||
misc/omgfart sounds/omgfart.ogg
|
||||
misc/voice sounds/dlgvoice.ogg
|
||||
misc/gibber1 sounds/general/Gib1.ogg
|
||||
misc/gibber2 sounds/general/Gib2.ogg
|
||||
|
|
|
|||
BIN
sounds/omgfart.ogg
Normal file
BIN
sounds/omgfart.ogg
Normal file
Binary file not shown.
|
|
@ -177,9 +177,19 @@ extend Class SWWMHandler
|
|||
{
|
||||
if ( consoleplayer == e.Args[0] )
|
||||
{
|
||||
Console.Printf("\cyThere are no flags here.\c-");
|
||||
S_StartSound("misc/nocheat",CHAN_ITEM,CHANF_UI);
|
||||
Console.Printf("\cyLet your flag stand proud, Demolitionist.\c-");
|
||||
S_StartSound("menu/buyinv",CHAN_ITEM,CHANF_UI);
|
||||
}
|
||||
let mo = players[e.Args[0]].mo;
|
||||
Actor f = Actor(ThinkerIterator.Create("SWWMFlag").Next());
|
||||
if ( !f ) f = mo.Spawn("SWWMFlag");
|
||||
Vector2 spos = mo.Vec2Offset(cos(mo.angle)*40.,sin(mo.angle)*40.);
|
||||
Sector sat = level.PointInSector(spos);
|
||||
double sz = sat.NextLowestFloorAt(spos.x,spos.y,mo.player.viewz-32.);
|
||||
f.SetOrigin((spos.x,spos.y,sz),false);
|
||||
f.A_SetAngle(mo.angle);
|
||||
f.Spawn("SWWMItemFog",f.pos);
|
||||
f.A_StartSound("bestsound",CHAN_ITEMEXTRA);
|
||||
}
|
||||
else if ( e.Name ~== "swwmballcheat" )
|
||||
{
|
||||
|
|
@ -231,19 +241,30 @@ extend Class SWWMHandler
|
|||
}
|
||||
else if ( e.Name ~== "swwmfartcheat" )
|
||||
{
|
||||
let mo = players[e.Args[0]].mo;
|
||||
if ( consoleplayer == e.Args[0] )
|
||||
{
|
||||
Console.Printf("\cyI'd rather not reimplement that one.\c-");
|
||||
S_StartSound("misc/nocheat",CHAN_ITEM,CHANF_UI);
|
||||
Console.Printf("\cyI regret implementing this.\c-");
|
||||
S_StartSound("menu/buyinv",CHAN_ITEM,CHANF_UI);
|
||||
S_StartSound("misc/omgfart",CHAN_VOICE,CHANF_UI);
|
||||
}
|
||||
else mo.A_StartSound("misc/omgfart",CHAN_VOICE,CHANF_OVERLAP,1.,.5);
|
||||
let f = mo.Spawn("SWWMGasCloudSpawner",mo.Vec3Angle(mo.radius*.5,mo.angle-180,mo.Height*.4));
|
||||
f.target = mo;
|
||||
f.angle = mo.angle+180;
|
||||
f.pitch = -mo.pitch;
|
||||
}
|
||||
else if ( e.Name ~== "swwmsupercheat" )
|
||||
{
|
||||
if ( consoleplayer == e.Args[0] )
|
||||
{
|
||||
Console.Printf("\cyNo, you're the Demolitionist.\c-");
|
||||
S_StartSound("misc/nocheat",CHAN_ITEM,CHANF_UI);
|
||||
Console.Printf("\cyNo, you're the Demolitionist. But with this thing, you'll also be invincible.\c-");
|
||||
S_StartSound("menu/buyinv",CHAN_ITEM,CHANF_UI);
|
||||
S_StartSound("misc/p_pkup",CHAN_VOICE,CHANF_UI);
|
||||
}
|
||||
let i = InvinciballPower(players[e.Args[0]].mo.FindInventory("InvinciballPower"));
|
||||
if ( i ) i.EffectTics += i.default.EffectTics;
|
||||
else players[e.Args[0]].mo.GiveInventory("InvinciballPower",1);
|
||||
}
|
||||
else if ( e.Name ~== "swwmstonecheat" )
|
||||
{
|
||||
|
|
@ -342,11 +363,11 @@ extend Class SWWMHandler
|
|||
if ( kstr != cht[i].Left(kstr.length()) ) continue;
|
||||
matchany = true;
|
||||
if ( kstr != cht[i] ) continue;
|
||||
if ( (i > 4) && !nostalgic )
|
||||
if ( (i > 4) && !swwm_oldcheat )
|
||||
{
|
||||
let m = new("SWWMSecretZanavethMessage").Init();
|
||||
StatusBar.AttachMessage(m,-1232);
|
||||
nostalgic = true;
|
||||
CVar.FindCVar('swwm_oldcheat').SetBool(true);
|
||||
}
|
||||
if ( SWWMUtility.CheatsDisabled(consoleplayer) )
|
||||
{
|
||||
|
|
|
|||
|
|
@ -367,7 +367,7 @@ Class SWWMSecretZanavethMessage : HUDMessageBase
|
|||
int idx = punctuation.IndexOf(ch);
|
||||
if ( idx >= 0 ) delay += (idx*2)+1;
|
||||
charcnt++;
|
||||
if ( charcnt >= TotalLength() ) delay += 90;
|
||||
if ( charcnt >= TotalLength() ) delay += (seqnum==5)?90:40;
|
||||
}
|
||||
|
||||
override bool Tick()
|
||||
|
|
|
|||
|
|
@ -163,6 +163,134 @@ Class FroggyChair : Actor
|
|||
}
|
||||
}
|
||||
|
||||
// a flag
|
||||
Class SWWMFlag : Actor
|
||||
{
|
||||
int seq;
|
||||
|
||||
override bool Used( Actor user )
|
||||
{
|
||||
seq = (seq+1)%4;
|
||||
switch ( seq )
|
||||
{
|
||||
case 0:
|
||||
SetStateLabel("Spawn");
|
||||
break;
|
||||
case 1:
|
||||
SetStateLabel("FlagPride");
|
||||
break;
|
||||
case 2:
|
||||
SetStateLabel("FlagTrans");
|
||||
break;
|
||||
case 3:
|
||||
SetStateLabel("FlagEnby");
|
||||
break;
|
||||
}
|
||||
A_StartSound("bestsound",CHAN_BODY,CHANF_OVERLAP);
|
||||
return true;
|
||||
}
|
||||
Default
|
||||
{
|
||||
+SOLID;
|
||||
+NOTELEPORT;
|
||||
+DONTSPLASH;
|
||||
Radius 2;
|
||||
Height 104;
|
||||
}
|
||||
States
|
||||
{
|
||||
Spawn:
|
||||
XZW1 ABCDEFGHIJKLMNOPQRSTUVWXYZ 2;
|
||||
XZW2 ABCDEFGHIJKLMNOPQRSTUVWXYZ 2;
|
||||
XZW3 ABCDEFGH 2;
|
||||
Loop;
|
||||
FlagPride:
|
||||
XZW3 IJKLMNOPQRSTUVWXYZ 2;
|
||||
XZW4 ABCDEFGHIJKLMNOPQRSTUVWXYZ 2;
|
||||
XZW5 ABCDEFGHIJKLMNOP 2;
|
||||
Loop;
|
||||
FlagTrans:
|
||||
XZW5 QRSTUVWXYZ 2;
|
||||
XZW6 ABCDEFGHIJKLMNOPQRSTUVWXYZ 2;
|
||||
XZW7 ABCDEFGHIJKLMNOPQRSTUVWX 2;
|
||||
Loop;
|
||||
FlagEnby:
|
||||
XZW7 YZ 2;
|
||||
XZW8 ABCDEFGHIJKLMNOPQRSTUVWXYZ 2;
|
||||
XZW9 ABCDEFGHIJKLMNOPQRSTUVWXYZ 2;
|
||||
XZWA ABCDEF 2;
|
||||
Loop;
|
||||
}
|
||||
}
|
||||
|
||||
// oof
|
||||
Class SWWMGasCloudSpawner : Actor
|
||||
{
|
||||
Default
|
||||
{
|
||||
Radius .1;
|
||||
Height 0.;
|
||||
+NOBLOCKMAP;
|
||||
+NOTELEPORT;
|
||||
+DONTSPLASH;
|
||||
+NOINTERACTION;
|
||||
}
|
||||
override void Tick()
|
||||
{
|
||||
if ( !(special1%5) )
|
||||
{
|
||||
Vector3 x, y, z;
|
||||
[x, y, z] = swwm_CoordUtil.GetAxes(pitch,angle,roll);
|
||||
let c = Spawn("SWWMGasCloud",level.Vec3Offset(pos,x*(20+special1*12)));
|
||||
c.target = target;
|
||||
c.specialf1 = 1+special1/10.;
|
||||
}
|
||||
special1++;
|
||||
if ( special1 > 20 ) Destroy();
|
||||
}
|
||||
}
|
||||
|
||||
Class SWWMGasCloud : Actor
|
||||
{
|
||||
Default
|
||||
{
|
||||
Radius .1;
|
||||
Height 0.;
|
||||
+NOBLOCKMAP;
|
||||
+NOTELEPORT;
|
||||
+DONTSPLASH;
|
||||
+NOINTERACTION;
|
||||
}
|
||||
override void Tick()
|
||||
{
|
||||
for ( int i=0; i<2; i++ )
|
||||
{
|
||||
let e = Spawn("SWWMFart",level.Vec3Offset(pos,specialf1*(FRandom[ExploS](-20,20),FRandom[ExploS](-20,20),FRandom[ExploS](-20,20))));
|
||||
e.target = target;
|
||||
e.scale *= specialf1;
|
||||
}
|
||||
SWWMUtility.DoExplosion(self,Random[ExploS](2,6),0,60*specialf1,40,DE_NOBLEED|DE_NOSPLASH|DE_THRUWALLS|DE_HOWL,'Gas',target);
|
||||
special1++;
|
||||
if ( special1 >= 90 ) Destroy();
|
||||
}
|
||||
}
|
||||
|
||||
Class SWWMFart : SWWMHalfSmoke
|
||||
{
|
||||
Default
|
||||
{
|
||||
RenderStyle "Add";
|
||||
Alpha .1;
|
||||
}
|
||||
States
|
||||
{
|
||||
Spawn:
|
||||
FRT1 ABCDEFGHIJKLMNOPQRSTUVWXYZ 2 Bright;
|
||||
FRT2 ABCDEFGHI 2 Bright;
|
||||
Stop;
|
||||
}
|
||||
}
|
||||
|
||||
// yay!
|
||||
Class FancyConfetti : Actor
|
||||
{
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue