actor Alien : CustWepClassBase
{
Player.ScoreIcon "C_02J0X"
player.displayname "Alien"
player.soundclass "alienc"

player.maxhealth 1000
health 1000
player.jumpz 10
player.forwardmove 0.8, 0.8
player.sidemove 0.78, 0.78

player.startitem "CBM_BaseFlagPack"

player.startitem "Alien_W"
player.startitem "AlienTrapAmmo", 42
player.startitem "Alien_StaminaFlag", 500
player.startitem "AlienFlightItem"
player.startitem "AlienFlightFlag"


player.startitem "BubbleLeadWeakness"//
player.startitem "RainFlushWeakness"
player.startitem "WaterWaveWeakness"
player.startitem "WaterBalloonWeakness"
player.startitem "BubbleBombWeakness"

States
{
Spawn:
ALIE A 0
ALIE B 1
ALIE A 1
Goto Spawn+2
See:
ALIE BCDE 5
Goto Spawn
Missile:
ALIE F 5
ALIE G 4
goto Spawn
ClassPain:
ALIE H 0
goto MegamanPain
Death.BubbleLead:
ALIE H 0 A_GiveInventory("BubbleLeadAmmo",2)
goto Death
ClassDeath:
ALIE H 0 A_JumpIfInventory("BubbleLeadAmmo",1,2)
ALIE H 0 A_Jump(16,1)
goto MegamanDeath
ALIE H 0 A_JumpIfInventory("ExplodeDeathFlag",1,"MegamanGib")
ALIE H 0 A_JumpIfInventory("FallingDeathFlag",1,"MegamanFall")
ALIE H 0 A_JumpIfInventory("FlingDeathFlag",1,"Alien_MegamanFling")
ALIE H 0 A_JumpIfInventory("RisingDeathFlag",1,"MegamanRise")
ALIE H 0 A_JumpIfInventory("IceDeathFlag",1,"MegamanIce")
ALIE H 1
ALIE Z 0 A_SpawnItemEx("AlienDeath_MainProp")
goto MegamanErase
Alien_MegamanFling:
ALIE HZHZHZHZHZ 2
ALIE Z 0 A_SpawnItemEx("AlienDeath_MainProp")
goto MegamanErase

}
}

actor AlienDeath_MainProp : BasicExplosion
{
var int user_translateLikePlayer;
Translation "192:192=104:104","198:198=110:110"
Scale 2.5
States
{
Spawn:
ALIE H 0
ALIE H 0 A_SpawnItemEx("AlienDeath_UpperPropFX",0,0,128,0,0,0,0,1)

ALIE H 2
TNT1 A 2
ALIE H 2
TNT1 A 2
ALIE H 2
TNT1 A 2
ALIE H 2
TNT1 A 2
ALIE H 2
TNT1 A 2//20

ALIE H 0 A_SpawnItemEx("AlienDeath_LowerPropFX",0,0,0,0,0,0,0,1)

ALIE H 2
TNT1 A 2//ALIF S 2
ALIE H 2
TNT1 A 2//ALIF T 2
ALIE H 2
TNT1 A 2//ALIF S 2
ALIE H 2
TNT1 A 2//ALIF T 2
ALIE H 2
TNT1 A 2//ALIF S 2//20
stop
}
}

actor AlienDeath_LowerPropFX : BasicExplosion
{
States
{
Spawn:
TNT1 A 0

TNT1 A 2
ALIF S 2
TNT1 A 2
ALIF T 2
TNT1 A 2
ALIF S 2
TNT1 A 2
ALIF T 2
TNT1 A 2
ALIF S 2//20

ALIF STSTSTSTSTSTSTS 4//60
TNT1 A 4 A_SpawnItemEx("AlienDeath_LowerPropFX2",0,0,34,0,0,0,0,1)
stop
}
}

actor AlienDeath_LowerPropFX2 : BasicGraphicEffect
{
+FORCEXYBILLBOARD
+BRIGHT
States
{
SpawnFrame:
MMFX BCDE 2
stop
}
}

actor AlienDeath_UpperPropFX : BasicGraphicEffect
{
Alpha 0.1
States
{
SpawnFrame:
TNT1 A 0
TNT1 A 0 A_JumpIfInventory("CriticalDeath",1,1,2)
goto SpawnFrame2
TNT1 A 0 A_SetArg(3,1)
goto SpawnFrame2
SpawnFrame2:
TNT1 A 20
ALIF RQQQQQQQQ 1 A_FadeIn(0.1)
ALIF RQRQRQRQR 8
TNT1 A 0 A_SpawnItemEx("FakeDeathFX",0,0,32)//random(0,359)
TNT1 A 0 A_JumpIf(Args[3],"Gibbed")
TNT1 A 4 A_PlaySoundEx("misc/M1_DIED","SoundSlot6")
stop
Gibbed:
TNT1 A 0 A_SpawnItemEX("CriticalDeathSpawner",0,0,0,0,0,0,0,1)
TNT1 A 4 A_PlaySoundEX("misc/gib","Weapon")
stop
}
}
