So the player spawns the Starter, the Starter spawns the Snow Spawner, and the Snow Spawn spawns the Snow and Clouds. That's three levels of spawning because that's how I know how to do it.
I tried putting that SXF_SETMASTER flag on pretty much everything to see if that did anything but nothing changed. The player still gets hurt. First starting off with just adding it to the first call upon firing the weapon, then also adding it to the SnowStart's, and so on and so forth. I've tried the master child thing before but I couldn't, and still can't, seem to really understand how to work it properly.
I would greatly appreciate any help with this. Thank you.
Code: Select all
Actor SnowTest : Weapon //Rename this!!!
{
Scale 0.75
Obituary "%o was splattered by %k pistol"
Radius 20
Height 16
AttackSound "Weapon/PistolFire"
Inventory.pickupmessage "You got the Pistol"
Weapon.SelectionOrder 400
Weapon.SlotNumber 2
Weapon.kickback 100
Weapon.ammotype "CLIP"
Weapon.ammouse 1
Weapon.ammogive 25
States
{
Spawn:
2PIS E -1
Loop
Ready:
2PIS A 2 A_WeaponReady
Loop
Deselect:
2PIS D 1 A_Lower
Loop
Select:
2PIS F 1 A_Raise
Loop
Fire:
2PIS A 1
2PIS B 4 bright A_SpawnItemEx("SnowStart",0,0,0,0,0,10,0,SXF_SETMASTER)
2PIS C 4
2PIS F 4
2PIS D 4 A_ReFire
Goto Ready
AltFire:
2PIS A 1
2PIS B 4 bright A_SpawnItemEx("Snowcloud",0,0,0,0,0,5)
2PIS C 4
2PIS F 4
2PIS D 4 A_ReFire
Goto Ready
}
}
Actor SnowStart
{
Radius 1
Height 1
Speed 5
RenderStyle Translucent
Alpha 0.0
Scale 0.6
Projectile
+MISSILE
+NOBLOCKMAP
+NOGRAVITY
States
{
Spawn:
SNOW A 1 A_CheckCeiling("Death")
loop
Death:
SNOW A 1
TNT1 AAAAAAAAAA 0 A_SpawnItemEx("SnowSpawner",0,0,0,0,0,0,0,SXF_SETMASTER)
Stop
}
}
Actor SnowParticle
{
Radius 1
Height 1
Damage 1
DamageType Ice
RenderStyle Translucent
Alpha 0
Scale 0.6
Projectile
+MISSILE
+NOBLOCKMAP
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_SetScale(frandom(0.3, 0.6))
SNOW AAAAAAA 2 A_FadeIn(0.1)
SNOW A 3
loop
Death:
SNOW A 1 A_FadeOut(0.05)
loop
}
}
Actor SnowSpawner
{
Radius 1
Height 1
+NOBLOCKMAP
+NOGRAVITY
+NOSECTOR
+NOINTERACTION
+NOCLIP
-SOLID
+SPAWNCEILING
States
{
Spawn:
TNT1 AAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx ("Snowcloud", Random(-300, 300), Random(-300, 300), -30, 0, 0, 0, 0, 0, 0)
TNT1 AAAAAAAAAAAAAAAAAAAA 5 A_SpawnItemEx ("SnowParticle", Random(-300, 300), Random(-300, 300), 0, frandom(-1.0, 1.0), frandom(-1.0, 1.0), frandom(-1.0, -3.0), 0, SXF_SETMASTER, 0)
TNT1 AAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx ("Snowcloud", Random(-300, 300), Random(-300, 300), -30, 0, 0, 0, 0, 0, 0)
TNT1 AAAAAAAAAAAAAAAAAAAA 5 A_SpawnItemEx ("SnowParticle", Random(-300, 300), Random(-300, 300), 0, frandom(-1.0, 1.0), frandom(-1.0, 1.0), frandom(-1.0, -3.0), 0, SXF_SETMASTER, 0)
TNT1 AAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx ("Snowcloud", Random(-300, 300), Random(-300, 300), -30, 0, 0, 0, 0, 0, 0)
TNT1 AAAAAAAAAAAAAAAAAAAA 5 A_SpawnItemEx ("SnowParticle", Random(-300, 300), Random(-300, 300), 0, frandom(-1.0, 1.0), frandom(-1.0, 1.0), frandom(-1.0, -3.0), 0, SXF_SETMASTER, 0)
TNT1 AAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx ("Snowcloud", Random(-300, 300), Random(-300, 300), -30, 0, 0, 0, 0, 0, 0)
TNT1 AAAAAAAAAAAAAAAAAAAA 5 A_SpawnItemEx ("SnowParticle", Random(-300, 300), Random(-300, 300), 0, frandom(-1.0, 1.0), frandom(-1.0, 1.0), frandom(-1.0, -3.0), 0, SXF_SETMASTER, 0)
TNT1 AAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx ("Snowcloud", Random(-300, 300), Random(-300, 300), -30, 0, 0, 0, 0, 0, 0)
TNT1 AAAAAAAAAAAAAAAAAAAA 5 A_SpawnItemEx ("SnowParticle", Random(-300, 300), Random(-300, 300), 0, frandom(-1.0, 1.0), frandom(-1.0, 1.0), frandom(-1.0, -3.0), 0, SXF_SETMASTER, 0)
TNT1 AAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx ("Snowcloud", Random(-300, 300), Random(-300, 300), -30, 0, 0, 0, 0, 0, 0)
TNT1 AAAAAAAAAAAAAAAAAAAA 5 A_SpawnItemEx ("SnowParticle", Random(-300, 300), Random(-300, 300), 0, frandom(-1.0, 1.0), frandom(-1.0, 1.0), frandom(-1.0, -3.0), 0, SXF_SETMASTER, 0)
TNT1 AAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx ("Snowcloud", Random(-300, 300), Random(-300, 300), -30, 0, 0, 0, 0, 0, 0)
TNT1 AAAAAAAAAAAAAAAAAAAA 5 A_SpawnItemEx ("SnowParticle", Random(-300, 300), Random(-300, 300), 0, frandom(-1.0, 1.0), frandom(-1.0, 1.0), frandom(-1.0, -3.0), 0, SXF_SETMASTER, 0)
TNT1 AAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx ("Snowcloud", Random(-300, 300), Random(-300, 300), -30, 0, 0, 0, 0, 0, 0)
TNT1 AAAAAAAAAAAAAAAAAAAA 5 A_SpawnItemEx ("SnowParticle", Random(-300, 300), Random(-300, 300), 0, frandom(-1.0, 1.0), frandom(-1.0, 1.0), frandom(-1.0, -3.0), 0, SXF_SETMASTER, 0)
TNT1 AAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx ("Snowcloud", Random(-300, 300), Random(-300, 300), -30, 0, 0, 0, 0, 0, 0)
TNT1 AAAAAAAAAAAAAAAAAAAA 5 A_SpawnItemEx ("SnowParticle", Random(-300, 300), Random(-300, 300), 0, frandom(-1.0, 1.0), frandom(-1.0, 1.0), frandom(-1.0, -3.0), 0, SXF_SETMASTER, 0)
TNT1 AAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx ("Snowcloud", Random(-300, 300), Random(-300, 300), -30, 0, 0, 0, 0, 0, 0)
TNT1 AAAAAAAAAAAAAAAAAAAA 5 A_SpawnItemEx ("SnowParticle", Random(-300, 300), Random(-300, 300), 0, frandom(-1.0, 1.0), frandom(-1.0, 1.0), frandom(-1.0, -3.0), 0, SXF_SETMASTER, 0)
Stop
}
}
Actor Snowcloud
{
Radius 0
Height 0
RenderStyle Translucent
Alpha 0.0
Scale 1
+NoGravity
+NoBlockmap
+NoInteraction
-Solid
States
{
Spawn:
SNCL ABCDEABCDE 7 A_FadeIn(0.1) //fades from 0% to 100%
SNCL ABCDEABCDEABCDE 7
SNCL ABCDEABCDE 7 A_FadeOut(0.1) //fades from 100% to 0%
Stop
}
}