He rises out of the water, spits two balls at ya, then drops back down in the water and moves to a random location on the "screen"... just like in the real thing.
ACTOR Seabloon 10103
{
Health 200
Radius 32
Height 64
Mass 100
Speed 2
PainChance 255
Damage 1
Monster
Scale 2
+FLOORCLIP
+QUICKTORETALIATE
+LOOKALLAROUND
+JUSTHIT
+NOINFIGHTING
Obituary "%o was pegged by Seabloon."
States
{
Spawn:
TNT1 A 2 A_Look
Loop
See:
SEAB GFEDCBA 3
SEAB A 5
SEAB H 5
SEAB A 5 A_FaceTarget
SEAB H 5 A_CustomMissile("Bloonball", 100, 0, Random(-8, 8), 0)
SEAB A 5
SEAB H 5
SEAB A 5 A_FaceTarget
SEAB H 5 A_CustomMissile("Bloonball", 100, 0, Random(-8, 8), 0)
SEAB A 5
SEAB H 5
SEAB ABCDEFG 3
TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 1 A_Wander
TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 1 A_Wander
Loop
Death:
TNT1 A 1 A_Burst("HereticImpChunk1")
TNT1 A -1
Stop
}
}
ACTOR Bloonball
{
Radius 3
Height 3
Speed 15
Scale 1
Damage 7
Projectile
+RANDOMIZE
+ROCKETTRAIL
+FORCEXYBILLBOARD
DamageType Magic
Obituary "%o was splattered by a bloonball."
States
{
Spawn:
SEAB X 1 Bright
SEAB X 1
Loop
Death:
SEAB X 1 A_FadeOut(0.1)
SEAB X 1 A_FadeOut(0.1)
SEAB X 1 A_FadeOut(0.1)
SEAB X 1 A_FadeOut(0.1)
SEAB X 1 A_FadeOut(0.1)
SEAB X 1 A_FadeOut(0.1)
SEAB X 1 A_FadeOut(0.1)
SEAB X 1 A_FadeOut(0.1)
SEAB X 1 A_FadeOut(0.1)
SEAB X 1 A_FadeOut(0.1)
Stop
}
}
Every screen of the original game is represented by a monster-blocked segment of the map, so enemies can only exist in the "screen" they originally existed on in the real thing... they can never leave the area they're intended to be in. Here's the partially finished map layout for the first sphere that shows what I mean:
The purple lines indicate the "screen" boundaries... they block monsters as well as sounds, so battle sounds can only be heard within the confines of the segment the player is in (for monsters that also activate on sound rather than sight alone). The green lines are horizon lines... that gives the appearance of the infinite sea. The solid white lines are player and monster blocking lines, but since I tweaked the PlayerPawn actor in preparation for the Rainbow Drop, I can remove the player blocking portion since now the player cannot cross lines that link to sectors with more than 32 units of difference in height.