Hmm... either some of my information is outdated or I was simply mistaken. Now I'm finding that the animations are being honored properly if I specify the playerclass explicitly. I quickly drummed up a custom player and had the intermission explicitly call this class.
- Code: Select all • Expand view
ACTOR TheFatGuy : PlayerPawn
{
Scale .25
Speed 1
Health 100
Radius 16
Height 56
Mass 100
PainChance 255
Player.DisplayName "Lardo"
Player.StartItem "Pistol"
Player.StartItem "Fist"
Player.StartItem "Clip", 50
Player.WeaponSlot 1, Fist, Chainsaw
Player.WeaponSlot 2, Pistol
Player.WeaponSlot 3, Shotgun, SuperShotgun
Player.WeaponSlot 4, Chaingun
Player.WeaponSlot 5, RocketLauncher
Player.WeaponSlot 6, PlasmaRifle
Player.WeaponSlot 7, BFG9000
States
{
Spawn:
FATT AB 15
Loop
See:
FATT ABCDEF 8
Loop
Missile:
FATT G 20
Melee:
FATT H 10 BRIGHT
FATT I 5
FATT G 6
Goto Spawn
Pain:
FATT J 3
FATT J 3 A_Pain
Goto Spawn
Death:
FATT K 6
FATT L 6 A_Scream
FATT M 6 A_NoBlocking
FATT NOPQRS 6
FATT T -1
Stop
}
}
I set it to use the Mancubus sprites, including their animations (his walk goes ABCDEF, as opposed to the Marine's ABCD, and the frames run for 8 tics instead of 4). I left most other things identical to a standard playerclass for the sake of simplicity.
My MAPINFO includes only a rewrite of the Doom II Cast Call, like so:
- Code: Select all • Expand view
Intermission Doom2Cast
{
Cast
{
CastClass = "Zombieman"
CastName = "$CC_ZOMBIE"
AttackSound = "Missile",1,"grunt/attack"
}
Cast
{
CastClass = "ShotgunGuy"
CastName = "$CC_SHOTGUN"
AttackSound = "Missile",1,"shotguy/attack"
}
Cast
{
CastClass = "ChaingunGuy"
CastName = "$CC_HEAVY"
AttackSound = "Missile",1,"chainguy/attack"
AttackSound = "Missile",2,"chainguy/attack"
AttackSound = "Missile",3,"chainguy/attack"
}
Cast
{
CastClass = "DoomImp"
CastName = "$CC_IMP"
AttackSound = "Missile",2,"imp/attack"
}
Cast
{
CastClass = "Demon"
CastName = "$CC_DEMON"
AttackSound = "Melee",1,"demon/melee"
}
Cast
{
CastClass = "LostSoul"
CastName = "$CC_LOST"
AttackSound = "Missile",1,"skull/melee"
}
Cast
{
CastClass = "Cacodemon"
CastName = "$CC_CACO"
AttackSound = "Missile",1,"caco/attack"
}
Cast
{
CastClass = "HellKnight"
CastName = "$CC_HELL"
AttackSound = "Missile",1,"baron/attack"
}
Cast
{
CastClass = "BaronOfHell"
CastName = "$CC_BARON"
AttackSound = "Missile",1,"baron/attack"
}
Cast
{
CastClass = "Arachnotron"
CastName = "$CC_ARACH"
AttackSound = "Missile",1,"baby/attack"
}
Cast
{
CastClass = "PainElemental"
CastName = "$CC_PAIN"
AttackSound = "Missile",2,"skull/melee"
}
Cast
{
CastClass = "Revenant"
CastName = "$CC_REVEN"
AttackSound = "Missile",1,"skeleton/attack"
AttackSound = "Melee",1,"skeleton/swing"
AttackSound = "Melee",3,"skeleton/melee"
}
Cast
{
CastClass = "Fatso"
CastName = "$CC_MANCU"
AttackSound = "Missile",1,"fatso/attack"
AttackSound = "Missile",4,"fatso/attack"
AttackSound = "Missile",7,"fatso/attack"
}
Cast
{
CastClass = "Archvile"
CastName = "$CC_ARCH"
AttackSound = "Missile",1,"vile/start"
}
Cast
{
CastClass = "SpiderMastermind"
CastName = "$CC_SPIDER"
AttackSound = "Missile",1,"spider/attack"
AttackSound = "Missile",2,"spider/attack"
}
Cast
{
CastClass = "Cyberdemon"
CastName = "$CC_CYBER"
AttackSound = "Missile",1,"weapons/rocklf"
AttackSound = "Missile",3,"weapons/rocklf"
AttackSound = "Missile",5,"weapons/rocklf"
}
Cast
{
CastClass = "TheFatGuy"
CastName = "This fat thing"
AttackSound = "Missile", 0, "weapons/sshotf"
}
Link = Doom2Cast // restart cast call
}
The only change is that I changed "DoomPlayer" to my new character. When done like this, the only error I'm seeing is that when he comes up in the cast call he's not at .25 scale like he is in the game. His walk is still correct, though (six frames, ABCDEF, at 8 tics each).
However, if I were to forego the MAPINFO, thus running with the default cast call (therefore, have "DoomPlayer" called), what I see is a character using the sprites of the guy I played as (So, Lardo's sprites), but at the animation of DoomPlayer (ABCD, 4 tics each), and once again not scaled to .25. If I had given him his own SoundClass, those sound effects would play instead of the Marine's voice.
I did not alter the PLAY sprites at all, so it must not be using those for this thing I'm seeing.