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]
|
[default]
|
||||||
SWWM_MODVER="\chSWWM \czGZ\c- \cw0.9.11b-pre r458 \cu(Thu 29 Apr 23:25:24 CEST 2021)\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 r458 \cu(2021-04-29 23:25:24)\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
|
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"
|
Model "Chancebox"
|
||||||
{
|
{
|
||||||
Path "models"
|
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/wow sounds/WOW.ogg
|
||||||
misc/achievement2 sounds/YAY.ogg
|
misc/achievement2 sounds/YAY.ogg
|
||||||
misc/orbexplode sounds/ORBEXPLODE.ogg
|
misc/orbexplode sounds/ORBEXPLODE.ogg
|
||||||
|
misc/omgfart sounds/omgfart.ogg
|
||||||
misc/voice sounds/dlgvoice.ogg
|
misc/voice sounds/dlgvoice.ogg
|
||||||
misc/gibber1 sounds/general/Gib1.ogg
|
misc/gibber1 sounds/general/Gib1.ogg
|
||||||
misc/gibber2 sounds/general/Gib2.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] )
|
if ( consoleplayer == e.Args[0] )
|
||||||
{
|
{
|
||||||
Console.Printf("\cyThere are no flags here.\c-");
|
Console.Printf("\cyLet your flag stand proud, Demolitionist.\c-");
|
||||||
S_StartSound("misc/nocheat",CHAN_ITEM,CHANF_UI);
|
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" )
|
else if ( e.Name ~== "swwmballcheat" )
|
||||||
{
|
{
|
||||||
|
|
@ -231,19 +241,30 @@ extend Class SWWMHandler
|
||||||
}
|
}
|
||||||
else if ( e.Name ~== "swwmfartcheat" )
|
else if ( e.Name ~== "swwmfartcheat" )
|
||||||
{
|
{
|
||||||
|
let mo = players[e.Args[0]].mo;
|
||||||
if ( consoleplayer == e.Args[0] )
|
if ( consoleplayer == e.Args[0] )
|
||||||
{
|
{
|
||||||
Console.Printf("\cyI'd rather not reimplement that one.\c-");
|
Console.Printf("\cyI regret implementing this.\c-");
|
||||||
S_StartSound("misc/nocheat",CHAN_ITEM,CHANF_UI);
|
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" )
|
else if ( e.Name ~== "swwmsupercheat" )
|
||||||
{
|
{
|
||||||
if ( consoleplayer == e.Args[0] )
|
if ( consoleplayer == e.Args[0] )
|
||||||
{
|
{
|
||||||
Console.Printf("\cyNo, you're the Demolitionist.\c-");
|
Console.Printf("\cyNo, you're the Demolitionist. But with this thing, you'll also be invincible.\c-");
|
||||||
S_StartSound("misc/nocheat",CHAN_ITEM,CHANF_UI);
|
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" )
|
else if ( e.Name ~== "swwmstonecheat" )
|
||||||
{
|
{
|
||||||
|
|
@ -342,11 +363,11 @@ extend Class SWWMHandler
|
||||||
if ( kstr != cht[i].Left(kstr.length()) ) continue;
|
if ( kstr != cht[i].Left(kstr.length()) ) continue;
|
||||||
matchany = true;
|
matchany = true;
|
||||||
if ( kstr != cht[i] ) continue;
|
if ( kstr != cht[i] ) continue;
|
||||||
if ( (i > 4) && !nostalgic )
|
if ( (i > 4) && !swwm_oldcheat )
|
||||||
{
|
{
|
||||||
let m = new("SWWMSecretZanavethMessage").Init();
|
let m = new("SWWMSecretZanavethMessage").Init();
|
||||||
StatusBar.AttachMessage(m,-1232);
|
StatusBar.AttachMessage(m,-1232);
|
||||||
nostalgic = true;
|
CVar.FindCVar('swwm_oldcheat').SetBool(true);
|
||||||
}
|
}
|
||||||
if ( SWWMUtility.CheatsDisabled(consoleplayer) )
|
if ( SWWMUtility.CheatsDisabled(consoleplayer) )
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -367,7 +367,7 @@ Class SWWMSecretZanavethMessage : HUDMessageBase
|
||||||
int idx = punctuation.IndexOf(ch);
|
int idx = punctuation.IndexOf(ch);
|
||||||
if ( idx >= 0 ) delay += (idx*2)+1;
|
if ( idx >= 0 ) delay += (idx*2)+1;
|
||||||
charcnt++;
|
charcnt++;
|
||||||
if ( charcnt >= TotalLength() ) delay += 90;
|
if ( charcnt >= TotalLength() ) delay += (seqnum==5)?90:40;
|
||||||
}
|
}
|
||||||
|
|
||||||
override bool Tick()
|
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!
|
// yay!
|
||||||
Class FancyConfetti : Actor
|
Class FancyConfetti : Actor
|
||||||
{
|
{
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue