69 lines
829 B
C++
69 lines
829 B
C++
#pragma once
|
|
|
|
#include <cstdint>
|
|
#include <fpm/fixed.hpp>
|
|
|
|
namespace td {
|
|
|
|
enum class Team : std::uint8_t {
|
|
Blue = 0,
|
|
Red,
|
|
};
|
|
|
|
enum class CastleType : std::uint8_t {
|
|
Archer = 0,
|
|
Leach,
|
|
Artillery,
|
|
Mage,
|
|
Ice,
|
|
Poison,
|
|
Quake,
|
|
Sorcerer,
|
|
Zeus,
|
|
Necromancer,
|
|
Turret,
|
|
};
|
|
|
|
enum class EntityType : std::uint8_t {
|
|
Zombie = 0,
|
|
Spider,
|
|
Pigman,
|
|
Skeleton,
|
|
Creeper,
|
|
Silverfish,
|
|
Blaze,
|
|
Witch,
|
|
Slime,
|
|
Giant,
|
|
Wither,
|
|
// And passive animals
|
|
};
|
|
|
|
enum class ShopItem : std::uint8_t {
|
|
Goldmine = 0,
|
|
Inferno,
|
|
Meteor,
|
|
Zeus,
|
|
Freeze,
|
|
Speed,
|
|
Heal,
|
|
};
|
|
|
|
using CastleID = std::uint16_t;
|
|
using PlayerID = std::uint8_t;
|
|
using EntityID = std::uint16_t;
|
|
|
|
struct CastleCoords {
|
|
std::int16_t x;
|
|
std::int16_t y;
|
|
};
|
|
|
|
struct EntityCoords {
|
|
fpm::fixed_16_16 x;
|
|
fpm::fixed_16_16 y;
|
|
};
|
|
|
|
using PeerID = std::uint16_t;
|
|
|
|
} // namespace td
|