Add hurt, die animation when taking damage
This commit is contained in:
@@ -56,6 +56,10 @@ ecs_entity_t entityCreateBaseUnit(const Position position, f32 size, Player play
|
||||
ecs_set(ECS, e, AIBlackboard, {.entity = e});
|
||||
ecs_add_id(ECS, e, Selectable);
|
||||
ecs_set(ECS, e, Unit, {
|
||||
.attackElapsed = 0.0f,
|
||||
.attackCooldown = 1.0f,
|
||||
.minDamage = 1.0f,
|
||||
.maxDamage = 2.0f,
|
||||
.acceleration = 80.0f,
|
||||
.maxSpeed = 15.0f,
|
||||
.deceleration = 0.1f,
|
||||
@@ -67,6 +71,28 @@ ecs_entity_t entityCreateBaseUnit(const Position position, f32 size, Player play
|
||||
|
||||
ecs_entity_t entityCreateSoldier(const Position position, Player player, Game *game) {
|
||||
ecs_entity_t e = entityCreateBaseUnit(position, 10.0f, player, ENTITY_SOLDIER, ANIM_IDLE, game);
|
||||
ecs_set(ECS, e, Health, {
|
||||
.startHP = 40.0f,
|
||||
.hp = 40.0f,
|
||||
.lastChanged = -1.0f
|
||||
});
|
||||
Unit *unit = ecs_get_mut(ECS, e, Unit);
|
||||
unit->minDamage = 5.0f;
|
||||
unit->maxDamage = 10.0f;
|
||||
unit->attackCooldown = 1.0f;
|
||||
return e;
|
||||
}
|
||||
ecs_entity_t entityCreateWarrior(const Position position, Player player, Game *game) {
|
||||
ecs_entity_t e = entityCreateBaseUnit(position, 10.0f, player, ENTITY_WARRIOR, ANIM_IDLE, game);
|
||||
ecs_set(ECS, e, Health, {
|
||||
.startHP = 80.0f,
|
||||
.hp = 80.0f,
|
||||
.lastChanged = -1.0f
|
||||
});
|
||||
Unit *unit = ecs_get_mut(ECS, e, Unit);
|
||||
unit->minDamage = 8.0f;
|
||||
unit->maxDamage = 22.0f;
|
||||
unit->attackCooldown = 1.8f;
|
||||
return e;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user