Old animations removed, now in the UnitType struct.

This commit is contained in:
johns 2000-04-06 22:06:02 +00:00
parent 0908011f71
commit 3cf174942b
7 changed files with 207 additions and 289 deletions

View file

@ -155,6 +155,8 @@ global char UnitCorpse[UnitTypeInternalMax] = {
#endif
extern Animation ** UnitCorpse;
/**
** Unit dies!
**
@ -180,8 +182,8 @@ global int HandleActionDie(Unit* unit)
break;
default:
if( type<UnitTypeInternalMax && UnitDie[type] ) {
UnitShowAnimation(unit,UnitDie[type]);
if( unit->Type->Animations ) {
UnitShowAnimation(unit,unit->Type->Animations->Die);
} else {
DebugLevel0("FIXME: die animation missing\n");
unit->Reset=1;
@ -201,7 +203,7 @@ global int HandleActionDie(Unit* unit)
return 1;
}
unit->SubAction=type;
unit->Type=&UnitTypes[UnitDeadBody];
unit->Type=UnitTypeByIdent("unit-dead-body");
unit->Frame=0;
unit->State=0;
unit->Reset=0;

View file

@ -167,8 +167,10 @@ local int MineInGoldmine(Unit* unit)
} else if( unit->Type->Type==UnitPeasant ) {
unit->Type=&UnitTypes[UnitPeasantWithGold];
} else {
DebugLevel0("Wrong unit for mining gold %d\n"
,unit->Type->Type);
DebugLevel0("Wrong unit (%d,%d) for mining gold %d (%s)\n"
,unit->X,unit->Y
,unit->Type->Type
,unit->Type->Name);
}
if( UnitVisible(unit) ) {
MustRedraw|=RedrawMap;
@ -283,8 +285,10 @@ global void HandleActionMineGold(Unit* unit)
} else if( unit->Type->Type==UnitPeasantWithGold ) {
unit->Type=&UnitTypes[UnitPeasant];
} else {
DebugLevel0("Wrong unit for returning gold %d\n"
,unit->Type->Type);
DebugLevel0("Wrong unit (%d,%d) for returning gold %d (%s)\n"
,unit->X,unit->Y
,unit->Type->Type
,unit->Type->Name);
}
if( WAIT_FOR_GOLD<UNIT_MAX_WAIT ) {

View file

@ -17,6 +17,10 @@
//@{
/*----------------------------------------------------------------------------
-- Includes
----------------------------------------------------------------------------*/
#include <stdio.h>
#include <stdlib.h>
@ -33,9 +37,9 @@
#include "sound_server.h"
#include "missile.h"
#ifndef USE_CCL2
extern Animation* UnitStillAnimation[UnitTypeInternalMax];
#endif
/*----------------------------------------------------------------------------
-- Functions
----------------------------------------------------------------------------*/
/**
** Unit stands ground!
@ -60,10 +64,9 @@ global void HandleActionStandGround(Unit* unit)
//
// Still animation
//
DebugCheck( type->Type>=UnitTypeInternalMax
|| !UnitStillAnimation[type->Type] );
DebugCheck( !type->Animations || !type->Animations->Still );
UnitShowAnimation(unit,UnitStillAnimation[type->Type]);
UnitShowAnimation(unit,type->Animations->Still);
//
// FIXME: this a workaround of a bad code.
@ -83,7 +86,7 @@ global void HandleActionStandGround(Unit* unit)
}
//
// Building: burning
// Building: burning FIXME: must moved to general point
//
if( type->Building ) {
if( unit->HP ) {
@ -112,6 +115,8 @@ global void HandleActionStandGround(Unit* unit)
}
}
#if 0
// JOHNS: critters removed here
//
// Critters: are moving random around.
//
@ -160,6 +165,7 @@ global void HandleActionStandGround(Unit* unit)
}
}
#endif
//
// Workers and mage didn't attack automatic

View file

@ -17,6 +17,10 @@
//@{
/*----------------------------------------------------------------------------
-- Includes
----------------------------------------------------------------------------*/
#include <stdio.h>
#include <stdlib.h>
@ -33,166 +37,16 @@
#include "sound_server.h"
#include "missile.h"
#ifndef USE_CCL2
/*----------------------------------------------------------------------------
-- Still
-- Functions
----------------------------------------------------------------------------*/
// Gryphon rider, Kurdan and Sky'ree:
local Animation GryphonRiderStill[] = {
{2, 0, 6, 0}, {2, 0, 6, 5}, {2, 0, 6, 5}, {3, 0, 6, 5}
};
// Dragon, Deathwing:
local Animation DragonStill[] = {
{2, 0, 6, 0}, {2, 0, 6, 5}, {2, 0, 6, 5}, {3, 0, 6, 5}
};
// GnomishFlyingMachine:
local Animation GnomishFlyingMachineStill[] = {
{2, 0, 1, 0}, {2, 0, 1, 5}, {2, 0, 1, 0}, {3, 0, 1,-5}
};
// Daemon:
local Animation DaemonStill[] = {
{2, 0, 4, 0}, {2, 0, 4, 5}, {2, 0, 4, 5}, {3, 0, 4, 5}
};
// Default:
local Animation DefaultStill[] = {
// FIXME: Reset frame 0, wait 1, than endless wait 5
{0, 0, 4, 0}, {3, 0, 1, 0}
};
/*
** Still animation. FIXME: move this to unit-type, CCL configurable
*/
global Animation* UnitStillAnimation[UnitTypeInternalMax] = {
DefaultStill, // UnitFootman
DefaultStill, // UnitGrunt
DefaultStill, // UnitPeasant
DefaultStill, // UnitPeon
DefaultStill, // UnitBallista
DefaultStill, // UnitCatapult
DefaultStill, // UnitKnight
DefaultStill, // UnitOgre
DefaultStill, // UnitArcher
DefaultStill, // UnitAxethrower
DefaultStill, // UnitMage
DefaultStill, // UnitDeathKnight
DefaultStill, // UnitPaladin
DefaultStill, // UnitOgreMage
DefaultStill, // UnitDwarves
DefaultStill, // UnitGoblinSappers
DefaultStill, // UnitAttackPeasant
DefaultStill, // UnitAttackPeon
DefaultStill, // UnitRanger
DefaultStill, // UnitBerserker
DefaultStill, // UnitAlleria
DefaultStill, // UnitTeronGorefiend
GryphonRiderStill, // UnitKurdanAndSky_ree
DefaultStill, // UnitDentarg
DefaultStill, // UnitKhadgar
DefaultStill, // UnitGromHellscream
DefaultStill, // UnitTankerHuman
DefaultStill, // UnitTankerOrc
DefaultStill, // UnitTransportHuman
DefaultStill, // UnitTransportOrc
DefaultStill, // UnitElvenDestroyer
DefaultStill, // UnitTrollDestroyer
DefaultStill, // UnitBattleship
DefaultStill, // UnitJuggernaught
DefaultStill, // UnitNothing
DragonStill, // UnitDeathwing
DefaultStill, // UnitNothing1
DefaultStill, // UnitNothing2
DefaultStill, // UnitGnomishSubmarine
DefaultStill, // UnitGiantTurtle
GnomishFlyingMachineStill, // UnitGnomishFlyingMachine
DefaultStill, // UnitGoblinZeppelin
GryphonRiderStill, // UnitGryphonRider
DragonStill, // UnitDragon
DefaultStill, // UnitTuralyon
DefaultStill, // UnitEyeOfKilrogg
DefaultStill, // UnitDanath
DefaultStill, // UnitKorgathBladefist
DefaultStill, // UnitNothing3
DefaultStill, // UnitCho_gall
DefaultStill, // UnitLothar
DefaultStill, // UnitGul_dan
DefaultStill, // UnitUtherLightbringer
DefaultStill, // UnitZuljin
DefaultStill, // UnitNothing4
DefaultStill, // UnitSkeleton
DaemonStill, // UnitDaemon
DefaultStill, // UnitCritter
DefaultStill, // UnitFarm
DefaultStill, // UnitPigFarm
DefaultStill, // UnitBarracksHuman
DefaultStill, // UnitBarracksOrc
DefaultStill, // UnitChurch
DefaultStill, // UnitAltarOfStorms
DefaultStill, // UnitScoutTowerHuman
DefaultStill, // UnitScoutTowerOrc
DefaultStill, // UnitStables
DefaultStill, // UnitOgreMound
DefaultStill, // UnitGnomishInventor
DefaultStill, // UnitGoblinAlchemist
DefaultStill, // UnitGryphonAviary
DefaultStill, // UnitDragonRoost
DefaultStill, // UnitShipyardHuman
DefaultStill, // UnitShipyardOrc
DefaultStill, // UnitTownHall
DefaultStill, // UnitGreatHall
DefaultStill, // UnitElvenLumberMill
DefaultStill, // UnitTrollLumberMill
DefaultStill, // UnitFoundryHuman
DefaultStill, // UnitFoundryOrc
DefaultStill, // UnitMageTower
DefaultStill, // UnitTempleOfTheDamned
DefaultStill, // UnitBlacksmithHuman
DefaultStill, // UnitBlacksmithOrc
DefaultStill, // UnitRefineryHuman
DefaultStill, // UnitRefineryOrc
DefaultStill, // UnitOilPlatformHuman
DefaultStill, // UnitOilPlatformOrc
DefaultStill, // UnitKeep
DefaultStill, // UnitStronghold
DefaultStill, // UnitCastle
DefaultStill, // UnitFortress
DefaultStill, // UnitGoldMine
DefaultStill, // UnitOilPatch
DefaultStill, // UnitStartLocationHuman
DefaultStill, // UnitStartLocationOrc
DefaultStill, // UnitGuardTowerHuman
DefaultStill, // UnitGuardTowerOrc
DefaultStill, // UnitCannonTowerHuman
DefaultStill, // UnitCannonTowerOrc
DefaultStill, // UnitCircleofPower
DefaultStill, // UnitDarkPortal
DefaultStill, // UnitRunestone
DefaultStill, // UnitWallHuman
DefaultStill, // UnitWallOrc
DefaultStill, // UnitDeadBody
DefaultStill, // Unit1x1DestroyedPlace
DefaultStill, // Unit2x2DestroyedPlace
DefaultStill, // Unit3x3DestroyedPlace
DefaultStill, // Unit4x4DestroyedPlace
DefaultStill, // UnitPeonWithGold
DefaultStill, // UnitPeasantWithGold
DefaultStill, // UnitPeonWithWood
DefaultStill, // UnitPeasantWithWood
DefaultStill, // UnitTankerHumanFull
DefaultStill, // UnitTankerOrcFull
};
#endif
/**
** Unit stands still!
*/
global void HandleActionStill(Unit* unit)
{
UnitType* type;
const UnitType* type;
Unit* goal;
DebugLevel3(__FUNCTION__": %Zd\n",UnitNumber(unit));
@ -208,10 +62,9 @@ global void HandleActionStill(Unit* unit)
//
// Still animation
//
DebugCheck( type->Type>=UnitTypeInternalMax
|| !UnitStillAnimation[type->Type] );
DebugCheck( !type->Animations || !type->Animations->Still );
UnitShowAnimation(unit,UnitStillAnimation[type->Type]);
UnitShowAnimation(unit,type->Animations->Still);
//
// FIXME: this a workaround of a bad code.
@ -226,12 +79,12 @@ global void HandleActionStill(Unit* unit)
}
if( !unit->Reset ) { // animation can't be aborted
if( !unit->Reset ) { // animation can't be aborted here
return;
}
//
// Building: burning
// Building: burning FIXME: must moved to general point
//
if( type->Building ) {
if( unit->HP ) {
@ -274,9 +127,15 @@ global void HandleActionStill(Unit* unit)
//
// Critters: are moving random around.
//
// FIXME: critters: skeleton and daemon are also critters??????
if( type->Critter ) {
// FIXME: critters: skeleton and daemon are also critters??????
if( type->Type==UnitCritter ) {
static const UnitType* critter;
if( !critter ) {
// FIXME: remove or move the by ident, it is to slow!
critter=UnitTypeByIdent("unit-critter");
}
if( type==critter ) {
int x;
int y;
@ -306,6 +165,7 @@ global void HandleActionStill(Unit* unit)
}
if( x!=unit->X || y!=unit->Y ) {
// FIXME: Don't use pathfinder for this.
// FIXME: atleast prove the field is free.
unit->Command.Action=UnitActionMove;
unit->Command.Data.Move.Fast=1;
unit->Command.Data.Move.Goal=NoUnitP;

View file

@ -341,14 +341,9 @@ struct _unit_type_ {
----------------------------------------------------------------------------*/
extern char UnitTypeType[]; /// unit type type
// FIXME: this limit must be removed!
extern UnitType UnitTypes[UnitTypeInternalMax]; /// all unit types
#ifdef USE_CCL2
extern Animation ** UnitDie;
extern Animation ** UnitCorpse;
extern Animation ** UnitStillAnimation;
#endif
/*----------------------------------------------------------------------------
-- Functions
----------------------------------------------------------------------------*/

View file

@ -650,9 +650,7 @@ local Animation * GetSingleAnimation(SCM list){
}
global Animation ** UnitDie;
global Animation ** UnitCorpse;
global Animation ** UnitStillAnimation;
/**
** Get animation data
@ -682,16 +680,17 @@ local SCM CclAnimType(SCM list)
switch( type ){
case 0:
UnitStillAnimation = whole_animation;
for( i=0; i<UnitTypeInternalMax; ++i ) {
unittype=UnitTypeByWcNum(i);
if( !unittype->Animations ) {
unittype->Animations=calloc(sizeof(*unittype->Animations),1);
}
// FIXME: animations are shared?
CclFree(unittype->Animations->Still);
unittype->Animations->Still=whole_animation[i];
}
DebugLevel2("Loading UnitStillAnimation\n");
free(whole_animation);
break;
case 1:
for( i=0; i<UnitTypeInternalMax; ++i ) {
@ -703,9 +702,9 @@ local SCM CclAnimType(SCM list)
unittype->Animations->Move=whole_animation[i];
}
DebugLevel2("Loading UnitMoveAnimation\n");
free(whole_animation);
break;
case 2:
UnitDie = whole_animation;
for( i=0; i<UnitTypeInternalMax; ++i ) {
unittype=UnitTypeByWcNum(i);
if( !unittype->Animations ) {
@ -715,6 +714,7 @@ local SCM CclAnimType(SCM list)
unittype->Animations->Die=whole_animation[i];
}
DebugLevel2("Loading UnitDie\n");
free(whole_animation);
break;
case 3:
UnitCorpse = whole_animation;
@ -737,9 +737,11 @@ local SCM CclAnimType(SCM list)
unittype->Animations->Attack=whole_animation[i];
}
DebugLevel2("Loading UnitAttack\n");
free(whole_animation);
break;
default:
DebugLevel1(__FUNCTION__":Unknown unit-type %d\n",type);
free(whole_animation);
break;
}
return list;

View file

@ -84,7 +84,7 @@ local ButtonConfig _FootmanButtons[] = {
#define _KurdanAndSky_reeButtons NULL
#define _DentargButtons NULL
#define _KhadgarButtons NULL
#define _GnomHellscreamButtons NULL
#define _GromHellscreamButtons NULL
#define _TankerHumanButtons NULL
#define _TankerOrcButtons NULL
#define _TransportHumanButtons NULL
@ -182,12 +182,36 @@ local ButtonConfig _FootmanButtons[] = {
-- Animations
----------------------------------------------------------------------------*/
/// Default:
local Animation _DefaultStill[] = {
/*----------------------------------------------------------------------------
-- Still
----------------------------------------------------------------------------*/
// Default:
local Animation DefaultStill[] = {
// FIXME: Reset frame 0, wait 1, than endless wait 5
{0, 0, 4, 0}, {3, 0, 1, 0}
};
// Gryphon rider, Kurdan and Sky'ree:
local Animation GryphonRiderStill[] = {
{2, 0, 6, 0}, {2, 0, 6, 5}, {2, 0, 6, 5}, {3, 0, 6, 5}
};
// Dragon, Deathwing:
local Animation DragonStill[] = {
{2, 0, 6, 0}, {2, 0, 6, 5}, {2, 0, 6, 5}, {3, 0, 6, 5}
};
// GnomishFlyingMachine:
local Animation GnomishFlyingMachineStill[] = {
{2, 0, 1, 0}, {2, 0, 1, 5}, {2, 0, 1, 0}, {3, 0, 1,-5}
};
// Daemon:
local Animation DaemonStill[] = {
{2, 0, 4, 0}, {2, 0, 4, 5}, {2, 0, 4, 5}, {3, 0, 4, 5}
};
/*----------------------------------------------------------------------------
-- Move Table
----------------------------------------------------------------------------*/
@ -705,7 +729,7 @@ local Animation DestroyedWaterSiteDie[] = {
#define FootmanAnimations GruntAnimations
/// Footman,Grunt,Grom Hellscream,Danath,Korgath Bladefist
local Animations GruntAnimations[] = {
{ _DefaultStill,
{ DefaultStill,
GruntMove,
GruntAttack,
GruntDie,
@ -715,7 +739,7 @@ local Animations GruntAnimations[] = {
#define PeasantAnimations PeonAnimations
// Peon, Peasant, Attacking Peon, Attacking Peasant.
local Animations PeonAnimations[] = {
{ NULL,
{ DefaultStill,
PeonMove,
PeonAttack,
PeonDie,
@ -723,7 +747,7 @@ local Animations PeonAnimations[] = {
};
local Animations BallistaAnimations[] = {
{ NULL,
{ DefaultStill,
BallistaMove,
BallistaAttack,
NULL,
@ -731,7 +755,7 @@ local Animations BallistaAnimations[] = {
};
local Animations CatapultAnimations[] = {
{ NULL,
{ DefaultStill,
CatapultMove,
CatapultAttack,
NULL,
@ -739,49 +763,49 @@ local Animations CatapultAnimations[] = {
};
local Animations KnightAnimations[] = {
{ NULL,
{ DefaultStill,
KnightMove,
NULL,
KnightAttack,
KnightDie,
NULL }
};
local Animations OgreAnimations[] = {
{ NULL,
{ DefaultStill,
OgreMove,
NULL,
OgreAttack,
OgreDie,
NULL }
};
local Animations ArcherAnimations[] = {
{ NULL,
{ DefaultStill,
ArcherMove,
NULL,
ArcherAttack,
ArcherDie,
NULL }
};
local Animations AxethrowerAnimations[] = {
{ NULL,
{ DefaultStill,
AxethrowerMove,
NULL,
AxethrowerAttack,
AxethrowerDie,
NULL }
};
local Animations MageAnimations[] = {
{ NULL,
{ DefaultStill,
MageMove,
NULL,
MageAttack,
MageDie,
NULL }
};
local Animations DeathKnightAnimations[] = {
{ NULL,
{ DefaultStill,
DeathKnightMove,
NULL,
DeathKnightAttack,
DeathKnightDie,
NULL }
};
@ -790,17 +814,17 @@ local Animations DeathKnightAnimations[] = {
#define OgreMageAnimations OgreAnimations
local Animations DwarvesAnimations[] = {
{ NULL,
{ DefaultStill,
DwarvesMove,
NULL,
DwarvesAttack,
DwarvesDie,
NULL }
};
local Animations GoblinSappersAnimations[] = {
{ NULL,
{ DefaultStill,
GoblinSappersMove,
NULL,
GoblinSappersAttack,
GoblinSappersDie,
NULL }
};
@ -813,43 +837,43 @@ local Animations GoblinSappersAnimations[] = {
#define AlleriaAnimations ArcherAnimations
#define TeronGorefiendAnimations DeathKnightAnimations
#define KurdanAndSky_reeAnimations NULL
#define DentargAnimations NULL
#define KhadgarAnimations NULL
#define GnomHellscreamAnimations NULL
#define KurdanAndSky_reeAnimations GryphonRiderAnimations
#define DentargAnimations OgreAnimations
#define KhadgarAnimations MageAnimations
#define GromHellscreamAnimations GruntAnimations
#define TankerHumanAnimations TankerOrcAnimations
local Animations TankerOrcAnimations[] = {
{ NULL,
{ DefaultStill,
TankerMove,
NULL,
TankerAttack,
TankerDie,
NULL }
};
#define TransportHumanAnimations TransportOrcAnimations
local Animations TransportOrcAnimations[] = {
{ NULL,
{ DefaultStill,
TransportMove,
NULL,
TransportAttack,
TransportDie,
NULL }
};
#define ElvenDestroyerAnimations TrollDestroyerAnimations
local Animations TrollDestroyerAnimations[] = {
{ NULL,
{ DefaultStill,
DestroyerMove,
NULL,
DestroyerAttack,
DestroyerDie,
NULL }
};
#define BattleshipAnimations JuggernaughtAnimations
local Animations JuggernaughtAnimations[] = {
{ NULL,
{ DefaultStill,
BattleshipMove,
NULL,
BattleshipAttack,
BattleshipDie,
NULL }
};
@ -862,41 +886,41 @@ local Animations JuggernaughtAnimations[] = {
#define GnomishSubmarineAnimations GiantTurtleAnimations
local Animations GiantTurtleAnimations[] = {
{ NULL,
{ DefaultStill,
SubmarineMove,
NULL,
SubmarineAttack,
SubmarineDie,
NULL }
};
local Animations GnomishFlyingMachineAnimations[] = {
{ NULL,
{ GnomishFlyingMachineStill,
GnomishFlyingMachineMove,
NULL,
GnomishFlyingMachineAttack,
GnomishFlyingMachineDie,
NULL }
};
local Animations GoblinZeppelinAnimations[] = {
{ NULL,
{ DefaultStill,
GoblinZeppelinMove,
NULL,
GoblinZeppelinAttack,
NULL,
NULL }
};
local Animations GryphonRiderAnimations[] = {
{ NULL,
{ GryphonRiderStill,
GryphonRiderMove,
NULL,
GryphonRiderAttack,
GryphonRiderDie,
NULL }
};
local Animations DragonAnimations[] = {
{ NULL,
{ DragonStill,
DragonMove,
NULL,
DragonAttack,
DragonDie,
NULL }
};
@ -904,9 +928,9 @@ local Animations DragonAnimations[] = {
#define TuralyonAnimations KnightAnimations
local Animations EyeOfKilroggAnimations[] = {
{ NULL,
{ DefaultStill,
EyeOfKilroggMove,
NULL,
EyeOfKilroggAttack,
NULL,
NULL }
};
@ -922,81 +946,106 @@ local Animations EyeOfKilroggAnimations[] = {
#define Nothing4Animations NULL
local Animations SkeletonAnimations[] = {
{ NULL,
{ DefaultStill,
SkeletonMove,
NULL,
SkeletonAttack,
SkeletonDie,
NULL }
};
local Animations DaemonAnimations[] = {
{ NULL,
{ DaemonStill,
DaemonMove,
NULL,
DaemonAttack,
DaemonDie,
NULL }
};
local Animations CritterAnimations[] = {
{ NULL,
{ DefaultStill,
CritterMove,
NULL,
CritterAttack,
CritterDie,
NULL }
};
#define FarmAnimations NULL
#define PigFarmAnimations NULL
#define BarracksHumanAnimations NULL
#define BarracksOrcAnimations NULL
#define ChurchAnimations NULL
#define AltarOfStormsAnimations NULL
#define ScoutTowerHumanAnimations NULL
#define ScoutTowerOrcAnimations NULL
#define StablesAnimations NULL
#define OgreMoundAnimations NULL
#define GnomishInventorAnimations NULL
#define GoblinAlchemistAnimations NULL
#define GryphonAviaryAnimations NULL
#define DragonRoostAnimations NULL
#define ShipyardHumanAnimations NULL
#define ShipyardOrcAnimations NULL
#define TownHallAnimations NULL
#define GreatHallAnimations NULL
#define ElvenLumberMillAnimations NULL
#define TrollLumberMillAnimations NULL
#define FoundryHumanAnimations NULL
#define FoundryOrcAnimations NULL
#define MageTowerAnimations NULL
#define TempleOfTheDamnedAnimations NULL
#define BlacksmithHumanAnimations NULL
#define BlacksmithOrcAnimations NULL
#define RefineryHumanAnimations NULL
#define RefineryOrcAnimations NULL
#define OilPlatformHumanAnimations NULL
#define OilPlatformOrcAnimations NULL
#define KeepAnimations NULL
#define StrongholdAnimations NULL
#define CastleAnimations NULL
#define FortressAnimations NULL
#define GoldMineAnimations NULL
#define OilPatchAnimations NULL
#define StartLocationHumanAnimations NULL
#define StartLocationOrcAnimations NULL
#define GuardTowerHumanAnimations NULL
#define GuardTowerOrcAnimations NULL
#define CannonTowerHumanAnimations NULL
#define CannonTowerOrcAnimations NULL
#define CircleofPowerAnimations NULL
#define DarkPortalAnimations NULL
#define RunestoneAnimations NULL
#define WallHumanAnimations NULL
#define WallOrcAnimations NULL
#define DeadBodyAnimations NULL
#define Destroyed1x1PlaceAnimations NULL
#define Destroyed2x2PlaceAnimations NULL
#define Destroyed3x3PlaceAnimations NULL
#define Destroyed4x4PlaceAnimations NULL
local Animations BuildingAnimations[] = {
{ DefaultStill,
NULL,
NULL,
NULL,
NULL }
};
local Animations GuardTowerAnimations[] = {
{ DefaultStill,
NULL,
GuardTowerAttack,
NULL,
NULL }
};
local Animations CannonTowerAnimations[] = {
{ DefaultStill,
NULL,
CannonTowerAttack,
NULL,
NULL }
};
#define FarmAnimations BuildingAnimations
#define PigFarmAnimations BuildingAnimations
#define BarracksHumanAnimations BuildingAnimations
#define BarracksOrcAnimations BuildingAnimations
#define ChurchAnimations BuildingAnimations
#define AltarOfStormsAnimations BuildingAnimations
#define ScoutTowerHumanAnimations BuildingAnimations
#define ScoutTowerOrcAnimations BuildingAnimations
#define StablesAnimations BuildingAnimations
#define OgreMoundAnimations BuildingAnimations
#define GnomishInventorAnimations BuildingAnimations
#define GoblinAlchemistAnimations BuildingAnimations
#define GryphonAviaryAnimations BuildingAnimations
#define DragonRoostAnimations BuildingAnimations
#define ShipyardHumanAnimations BuildingAnimations
#define ShipyardOrcAnimations BuildingAnimations
#define TownHallAnimations BuildingAnimations
#define GreatHallAnimations BuildingAnimations
#define ElvenLumberMillAnimations BuildingAnimations
#define TrollLumberMillAnimations BuildingAnimations
#define FoundryHumanAnimations BuildingAnimations
#define FoundryOrcAnimations BuildingAnimations
#define MageTowerAnimations BuildingAnimations
#define TempleOfTheDamnedAnimations BuildingAnimations
#define BlacksmithHumanAnimations BuildingAnimations
#define BlacksmithOrcAnimations BuildingAnimations
#define RefineryHumanAnimations BuildingAnimations
#define RefineryOrcAnimations BuildingAnimations
#define OilPlatformHumanAnimations BuildingAnimations
#define OilPlatformOrcAnimations BuildingAnimations
#define KeepAnimations BuildingAnimations
#define StrongholdAnimations BuildingAnimations
#define CastleAnimations BuildingAnimations
#define FortressAnimations BuildingAnimations
#define GoldMineAnimations BuildingAnimations
#define OilPatchAnimations BuildingAnimations
#define StartLocationHumanAnimations BuildingAnimations
#define StartLocationOrcAnimations BuildingAnimations
#define GuardTowerHumanAnimations GuardTowerAnimations
#define GuardTowerOrcAnimations GuardTowerAnimations
#define CannonTowerHumanAnimations CannonTowerAnimations
#define CannonTowerOrcAnimations CannonTowerAnimations
#define CircleofPowerAnimations BuildingAnimations
#define DarkPortalAnimations BuildingAnimations
#define RunestoneAnimations BuildingAnimations
#define WallHumanAnimations BuildingAnimations
#define WallOrcAnimations BuildingAnimations
#define DeadBodyAnimations BuildingAnimations
#define Destroyed1x1PlaceAnimations BuildingAnimations
#define Destroyed2x2PlaceAnimations BuildingAnimations
#define Destroyed3x3PlaceAnimations BuildingAnimations
#define Destroyed4x4PlaceAnimations BuildingAnimations
#define PeasantWithGoldAnimations PeasantAnimations
#define PeonWithGoldAnimations PeonAnimations
@ -1948,7 +1997,7 @@ global UnitType UnitTypes[] = {
,DEFAULT
,DEFAULT }
, 72, 72 // graphic size
,GnomHellscreamAnimations // animations
,GromHellscreamAnimations // animations
,{ "icon-grom-hellscream" }
,{ "missile-none" } // Missile
,CorpseHuman