//SPRITE_TYPE_ENEMY29, railgun tank;
enemyAnimations = true;
damagedMaterialOffset = 80;
damagedMaterialLife = 100;
dying2 = true;

//SPRITE_ENEMY_ANIM_STANDING;
SpriteAnimationStruct anim;
anim.m_clamp = false;
anim.m_animationSpeed = 1.0;
anim.m_frameAmount = 4;
anim.m_frameOffset = 0;
animations.Push(anim);
anim.m_frameOffset = 4;
animations.Push(anim);
anim.m_frameOffset = 8;
animations.Push(anim);
anim.m_frameOffset = 12;
animations.Push(anim);

//SPRITE_ENEMY_ANIM_RUNNING;
anim.m_animationSpeed = 1.5;
anim.m_frameOffset = 16;
animations.Push(anim);
anim.m_frameOffset = 20;
animations.Push(anim);
anim.m_frameOffset = 24;
animations.Push(anim);
anim.m_frameOffset = 28;
animations.Push(anim);

//SPRITE_ENEMY_ANIM_ATTACKING;
anim.m_animationSpeed = 1.2;
anim.m_frameAmount = 4;
anim.m_clamp = true;
anim.m_frameOffset = 48;
animations.Push(anim);
anim.m_frameOffset = 52;
animations.Push(anim);
anim.m_frameOffset = 56;
animations.Push(anim);
anim.m_frameOffset = 60;
animations.Push(anim);

//SPRITE_ENEMY_ANIM_DYING;
anim.m_frameAmount = 4;
anim.m_animationSpeed = 2.0;
anim.m_frameOffset = 76;
animations.Push(anim);

//SPRITE_ENEMY_ANIM_PAIN;
anim.m_frameAmount = 1;
anim.m_frameOffset = 68;
animations.Push(anim);
anim.m_frameOffset = 69;
animations.Push(anim);
anim.m_frameOffset = 70;
animations.Push(anim);
anim.m_frameOffset = 71;
animations.Push(anim);

//SPRITE_ENEMY_ANIM_YELL;
anim.m_frameOffset = 64;
animations.Push(anim);
anim.m_frameOffset = 65;
animations.Push(anim);
anim.m_frameOffset = 66;
animations.Push(anim);
anim.m_frameOffset = 67;
animations.Push(anim);

//SPRITE_ENEMY_ANIM_ATTACKING2;
anim.m_frameAmount = 4;
anim.m_animationSpeed = 2.5;
anim.m_clamp = false;
anim.m_frameOffset = 32;
animations.Push(anim);
anim.m_frameOffset = 36;
animations.Push(anim);
anim.m_frameOffset = 40;
animations.Push(anim);
anim.m_frameOffset = 44;
animations.Push(anim);

//SPRITE_ENEMY_ANIM_ATTACKING3;
anim.m_animationSpeed = 2.0;
anim.m_frameAmount = 4;
anim.m_clamp = true;
anim.m_frameOffset = 48;
animations.Push(anim);
anim.m_frameOffset = 52;
animations.Push(anim);
anim.m_frameOffset = 56;
animations.Push(anim);
anim.m_frameOffset = 60;
animations.Push(anim);

//SPRITE_ENEMY_ANIM_ATTACKING4;
anim.m_frameOffset = 48;
animations.Push(anim);
anim.m_frameOffset = 49;
animations.Push(anim);
anim.m_frameOffset = 50;
animations.Push(anim);
anim.m_frameOffset = 51;
animations.Push(anim);

//SPRITE_ENEMY_ANIM_ATTACKING5;
anim.m_frameOffset = 48;
animations.Push(anim);
anim.m_frameOffset = 49;
animations.Push(anim);
anim.m_frameOffset = 50;
animations.Push(anim);
anim.m_frameOffset = 51;
animations.Push(anim);

//SPRITE_ENEMY_ANIM_DYING2;
anim.m_animationSpeed = 1.5;
anim.m_frameAmount = 4;
anim.m_frameOffset = 72;
animations.Push(anim);
animations.Push(anim);
animations.Push(anim);
animations.Push(anim);
// All other attacks;
for (15) {;
    animations.Push(anim);
    animations.Push(anim);
    animations.Push(anim);
    animations.Push(anim);
};
//SPRITE_ENEMY_ANIM_NO_HEAD;
anim.m_frameOffset = 80;
anim.m_frameAmount = 1;
anim.m_clamp = true;
animations.Push(anim);
anim.m_frameOffset = 81;
animations.Push(anim);
anim.m_frameOffset = 82;
animations.Push(anim);
anim.m_frameOffset = 83;
animations.Push(anim);
//SPRITE_ENEMY_ANIM_NO_HEAD_DYING2;
anim.m_frameOffset = 84;
anim.m_frameAmount = 4;
anim.m_clamp = true;
animations.Push(anim);
animations.Push(anim);
animations.Push(anim);
animations.Push(anim);
//SPRITE_ENEMY_ANIM_SLICED_TOP;
anim.m_frameAmount = 1;
anim.m_clamp = true;
anim.m_frameOffset = 328;
animations.Push(anim);
anim.m_frameOffset = 329;
animations.Push(anim);
anim.m_frameOffset = 330;
animations.Push(anim);
anim.m_frameOffset = 331;
animations.Push(anim);
//SPRITE_ENEMY_ANIM_SLICED_BOTTOM;
anim.m_frameAmount = 1;
anim.m_clamp = true;
anim.m_frameOffset = 344;
animations.Push(anim);
anim.m_frameOffset = 345;
animations.Push(anim);
anim.m_frameOffset = 346;
animations.Push(anim);
anim.m_frameOffset = 347;
animations.Push(anim);
//SPRITE_ENEMY_ANIM_FEET;
anim.m_frameOffset = 92;
anim.m_frameAmount = 1;
anim.m_clamp = true;
animations.Push(anim);
anim.m_frameOffset = 93;
animations.Push(anim);
anim.m_frameOffset = 94;
animations.Push(anim);
anim.m_frameOffset = 95;
animations.Push(anim);
//SPRITE_ENEMY_ANIM_NO_FEET;
anim.m_frameOffset = 96;
anim.m_frameAmount = 1;
anim.m_clamp = true;
animations.Push(anim);
anim.m_frameOffset = 97;
animations.Push(anim);
anim.m_frameOffset = 98;
animations.Push(anim);
anim.m_frameOffset = 99;
animations.Push(anim);


canBeDamaged = true;
delayKill = 0.025;
flammable = true;
Init(vector(2.7, 2.7, 2.7), 1471, 2, 2, 5, 0);
life = 250;

ai.AddDeathNode(9, 0);
ai.AddNode(17, -1.0, -1.0, 0);
ai.SetLastNodeToRunOnClients();
ai.AddDeathNode(16, 1, 0.0);

partStruct.m_managed = false;
partStruct.m_removeIfTargetBleeds = false;
partStruct.m_normalOffset = 0.0;
partStruct.m_rotate = true;
partStruct.m_type = 1;
partStruct.m_useActorCoordinates = false;
partStruct.m_offset = vector(0.0,0.0,0.0);
bleedParticles.Push(partStruct);
partStruct.m_rotate = false;
partStruct.m_type = 0;
partStruct.m_useActorCoordinates = true;
killParticles.Push(partStruct);

[enemy]

addGib(1080);
addGib(1081);
addGib(1082);
addGib(1083);
headGib = 1551;

attackStruct.m_attackAmount = 3;
attackStruct.m_originalAttackAmount = 3;
attackStruct.m_distancePriority = false;
attackStruct.m_pauseTimerAfter = 1.0;
attackStruct.m_reuseTimer = 0.0;
attackStruct.m_reuseTimerOriginal = 3.5;
attackStruct.m_attackRange = 7.0 * cubeSize;
attackStruct.m_attackDelay = 0.75;
attackStruct.m_attackDelayAfterInitial = 0.5;
attackStruct.m_attackSound.m_sound = 224;
attackStruct.m_attackSound.m_pitchMin = 2.0;
attackStruct.m_attackSound.m_pitchMax = 2.2;
attackStruct.m_enemyAttack = 50;
attackStruct.m_attackAnim = 2;
attackStruct.m_extraAttackAnim = 7;
attackStruct.m_extraAttackAnimOnlyForFirst = true;
attackStruct.m_canBeCancelled = true;
attackStruct.m_lineOfSight = true;
attackStruct.m_attacksLeftCancel = 1;
attackStruct.m_attackBeamTime = 0.0;
attackStruct.m_attackBeamTimer = 0.0;
attackStruct.m_genProjType = 1114;
attackStruct.m_genProjZOffset = -0.1 * cubeSize;
attackStruct.m_genProjVel = 2000.0;
attackStruct.m_genProjPitch = 9.0;
attackStruct.m_genProjSpoken = false;
attackStruct.m_genProjDamage = 1;
attacks.Push(attackStruct);
attackStruct.m_attackAmount = 1;
attackStruct.m_originalAttackAmount = 1;
attackStruct.m_distancePriority = false;
attackStruct.m_pauseTimerAfter = 1.0;
attackStruct.m_reuseTimer = 0.0f;
attackStruct.m_reuseTimerOriginal = 2.5;
attackStruct.m_attackRange = 15.0 * cubeSize;
attackStruct.m_attackDelay = 1.0;
attackStruct.m_attackDelayAfterInitial = 1.0;
attackStruct.m_attackSound.m_sound = 436;
attackStruct.m_attackSound.m_volumeMin = 1.5;
attackStruct.m_attackSound.m_volumeMax = 1.5;
attackStruct.m_enemyAttack = 51;
attackStruct.m_attackAnim = 6;
attackStruct.m_extraAttackAnim = 255;
attackStruct.m_extraAttackAnimOnlyForFirst = false;
attackStruct.m_canBeCancelled = true;
attackStruct.m_lineOfSight = true;
attackStruct.m_attacksLeftCancel = 1;
attackStruct.m_attackBeamTime = 0.0;
attackStruct.m_attackBeamTimer = 0.0;
attackStruct.m_genProjType = 1115;
attackStruct.m_genProjZOffset = 0.1 * cubeSize;
attackStruct.m_genProjVel = 0.0;
attackStruct.m_genProjPitch = 0.0f;
attackStruct.m_genProjSpoken = false;
attackStruct.m_genProjDamage = 35;
attacks.Push(attackStruct);

yellTime = 0.3;
runSpeed = 350.0;
stepDelay = 0.3;
painTreshold = 30;
jumps = false;
flies = false;
headshotHalfAngle = 35;
headshotMinZPercent = 0.375;
headshotMaxZPercent = 0.625;
headshotHeadInFront = true;
turnSpeed = 270.0;
forcedEscapeRange = 2.0 * cubeSize;
stepSound.m_sound = 226;
stepSound.m_volumeMin = 1.0;
stepSound.m_volumeMax = 1.0;
stepSound.m_pitchMin = 0.9;
stepSound.m_pitchMax = 1.0;
idleSound.m_sound = 788;
yellSound.m_sound = 789;
painSound.m_sound = 790;
dieSound.m_sound = 791;
explosiveAmmoLevel = 2;