Files
Tower-Defense2/include/td/Types.h
2024-10-25 17:12:13 +02:00

72 lines
876 B
C++

#pragma once
#include <cstdint>
#include <fpm/fixed.hpp>
namespace td {
using FpFloat = fpm::fixed_16_16;
enum class Team : std::uint8_t {
Blue = 0,
Red,
};
enum class TowerType : 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 TowerID = std::uint16_t;
using PlayerID = std::uint8_t;
using EntityID = std::uint16_t;
struct TowerCoords {
std::int16_t x;
std::int16_t y;
};
struct EntityCoords {
FpFloat x;
FpFloat y;
};
using PeerID = std::uint16_t;
using StepsType = std::uint16_t;
} // namespace td