1
Fork 0
mirror of https://github.com/SapphireServer/Sapphire.git synced 2025-05-05 10:17:46 +00:00
sapphire/src/servers/sapphire_zone/Zone/House.h

62 lines
1.4 KiB
C
Raw Normal View History

2018-11-19 09:40:44 +01:00
#ifndef SAPPHIRE_HOUSE_H
#define SAPPHIRE_HOUSE_H
#include "Forwards.h"
#include <Common.h>
#include <set>
#include <unordered_map>
namespace Core
{
class House
{
public:
2018-11-19 10:32:58 +01:00
House( uint32_t houseId, uint32_t landSetId, uint8_t landId, uint8_t wardNum, uint16_t territoryTypeId );
2018-11-19 09:40:44 +01:00
virtual ~House();
2018-11-26 23:32:22 +11:00
using HousePart = std::pair< uint32_t, uint8_t >;
using HousePartsArray = std::array< HousePart, 8 >;
2018-11-19 09:40:44 +01:00
//gerneral
2018-11-19 10:32:58 +01:00
uint32_t getLandSetId() const;
uint8_t getLandId() const;
uint8_t getWardNum() const;
uint16_t getTerritoryTypeId() const;
uint32_t getHouseId() const;
2018-11-19 09:40:44 +01:00
2018-11-27 21:11:02 +11:00
const std::string& getHouseName() const;
void setHouseName( std::string& name );
const std::string& getHouseGreeting() const;
void setHouseGreeting( std::string& greeting );
2018-11-19 09:40:44 +01:00
//functions
void setHousePart( Common::HousePartSlot slot, uint32_t id );
void setHousePartColor( Common::HousePartSlot slot, uint32_t id );
2018-11-19 10:32:58 +01:00
uint32_t getHousePart( Common::HousePartSlot slot ) const;
uint8_t getHousePartColor( Common::HousePartSlot slot ) const;
2018-11-19 09:40:44 +01:00
HousePartsArray const& getHouseParts() const;
2018-11-26 23:32:22 +11:00
void updateHouseDb();
2018-11-19 09:40:44 +01:00
private:
uint32_t m_landSetId;
uint8_t m_landId;
uint8_t m_wardNum;
2018-11-19 10:32:58 +01:00
uint16_t m_territoryTypeId;
2018-11-19 09:40:44 +01:00
uint32_t m_houseId;
2018-11-26 23:32:22 +11:00
uint64_t m_buildTime;
HousePartsArray m_houseParts;
2018-11-19 09:40:44 +01:00
2018-11-26 23:32:22 +11:00
std::string m_estateMessage;
std::string m_houseName;
2018-11-19 09:40:44 +01:00
};
}
#endif // SAPPHIRE_HOUSE_H