squad-proto/generated/monster_sprites.h

77 lines
3.6 KiB
C
Raw Permalink Normal View History

/* Generated by tools/monster_assets.py sync. Do not edit. */
#pragma once
#include <cstdint>
#include "render/anim.h"
#include "sim/target.h"
constexpr uint32_t MONSTER_ASSET_SHAMBLER_WALK = UINT32_C(0xDA564B3B);
constexpr uint32_t MONSTER_ASSET_SHAMBLER_ATTACK = UINT32_C(0x2821014E);
constexpr uint32_t MONSTER_ASSET_SHAMBLER_HIT = UINT32_C(0x8498BC33);
constexpr uint32_t MONSTER_ASSET_SHAMBLER_DEATH = UINT32_C(0x0B950530);
constexpr uint32_t MONSTER_ASSET_RUSHER_WALK = UINT32_C(0x442741A8);
constexpr uint32_t MONSTER_ASSET_RUSHER_ATTACK = UINT32_C(0x219BA505);
constexpr uint32_t MONSTER_ASSET_RUSHER_HIT = UINT32_C(0x3404E732);
constexpr uint32_t MONSTER_ASSET_RUSHER_DEATH = UINT32_C(0xAEBDED05);
constexpr uint32_t MONSTER_ASSET_SPITTER_WALK = UINT32_C(0xE887C90E);
constexpr uint32_t MONSTER_ASSET_SPITTER_ATTACK = UINT32_C(0x02D54BDB);
constexpr uint32_t MONSTER_ASSET_SPITTER_HIT = UINT32_C(0x84B7B754);
constexpr uint32_t MONSTER_ASSET_SPITTER_DEATH = UINT32_C(0x9142CAF7);
constexpr uint32_t MONSTER_ASSET_BRUTE_WALK = UINT32_C(0xC97ABA5D);
constexpr uint32_t MONSTER_ASSET_BRUTE_ATTACK = UINT32_C(0xE166F8E8);
constexpr uint32_t MONSTER_ASSET_BRUTE_HIT = UINT32_C(0xBC752911);
constexpr uint32_t MONSTER_ASSET_BRUTE_DEATH = UINT32_C(0x3D96DA4E);
constexpr uint32_t MONSTER_ASSET_LURKER_WALK = UINT32_C(0x8FF69CC2);
constexpr uint32_t MONSTER_ASSET_LURKER_ATTACK = UINT32_C(0x9A5A0F2F);
constexpr uint32_t MONSTER_ASSET_LURKER_HIT = UINT32_C(0xFF50F498);
constexpr uint32_t MONSTER_ASSET_LURKER_DEATH = UINT32_C(0xA573E6AB);
// AnimKind::IDLE у тварей нет: покоя у них не бывает, стоящая тварь
// показывает первый кадр шага.
constexpr uint32_t MonsterAsset(EnemyKind kind, AnimKind anim)
{
switch (kind) {
case EnemyKind::SHAMBLER:
switch (anim) {
case AnimKind::WALK: return MONSTER_ASSET_SHAMBLER_WALK;
case AnimKind::ATTACK: return MONSTER_ASSET_SHAMBLER_ATTACK;
case AnimKind::HURT: return MONSTER_ASSET_SHAMBLER_HIT;
case AnimKind::DIE: return MONSTER_ASSET_SHAMBLER_DEATH;
default: return MONSTER_ASSET_SHAMBLER_WALK;
}
case EnemyKind::RUSHER:
switch (anim) {
case AnimKind::WALK: return MONSTER_ASSET_RUSHER_WALK;
case AnimKind::ATTACK: return MONSTER_ASSET_RUSHER_ATTACK;
case AnimKind::HURT: return MONSTER_ASSET_RUSHER_HIT;
case AnimKind::DIE: return MONSTER_ASSET_RUSHER_DEATH;
default: return MONSTER_ASSET_RUSHER_WALK;
}
case EnemyKind::SPITTER:
switch (anim) {
case AnimKind::WALK: return MONSTER_ASSET_SPITTER_WALK;
case AnimKind::ATTACK: return MONSTER_ASSET_SPITTER_ATTACK;
case AnimKind::HURT: return MONSTER_ASSET_SPITTER_HIT;
case AnimKind::DIE: return MONSTER_ASSET_SPITTER_DEATH;
default: return MONSTER_ASSET_SPITTER_WALK;
}
case EnemyKind::BRUTE:
switch (anim) {
case AnimKind::WALK: return MONSTER_ASSET_BRUTE_WALK;
case AnimKind::ATTACK: return MONSTER_ASSET_BRUTE_ATTACK;
case AnimKind::HURT: return MONSTER_ASSET_BRUTE_HIT;
case AnimKind::DIE: return MONSTER_ASSET_BRUTE_DEATH;
default: return MONSTER_ASSET_BRUTE_WALK;
}
case EnemyKind::LURKER:
switch (anim) {
case AnimKind::WALK: return MONSTER_ASSET_LURKER_WALK;
case AnimKind::ATTACK: return MONSTER_ASSET_LURKER_ATTACK;
case AnimKind::HURT: return MONSTER_ASSET_LURKER_HIT;
case AnimKind::DIE: return MONSTER_ASSET_LURKER_DEATH;
default: return MONSTER_ASSET_LURKER_WALK;
}
default: return 0;
}
}