1
Fork 0
mirror of https://github.com/SapphireServer/Sapphire.git synced 2025-04-27 14:57:44 +00:00

some housing cleanup and refactoring

This commit is contained in:
NotAdam 2018-12-31 21:54:32 +11:00
parent b7fcf6080c
commit a04d01be90
6 changed files with 30 additions and 30 deletions

View file

@ -866,13 +866,13 @@ namespace Sapphire::Common
Mansion Mansion
}; };
enum HouseState : uint8_t enum HouseStatus : uint8_t
{ {
none, none,
forSale, HouseForSale,
sold, HouseSold,
privateHouse, HousePrivateEstate,
fcHouse, HouseFreeCompanyEstate,
}; };
enum HouseIconAdd : uint8_t enum HouseIconAdd : uint8_t

View file

@ -179,8 +179,8 @@ void Sapphire::World::Manager::HousingMgr::initLandCache()
entry.m_landId = res->getUInt( "LandId" ); entry.m_landId = res->getUInt( "LandId" );
entry.m_type = static_cast< Common::LandType >( res->getUInt( "Type" ) ); entry.m_type = static_cast< Common::LandType >( res->getUInt( "Type" ) );
entry.m_size = res->getUInt8( "Size" ); entry.m_size = static_cast< Common::HouseSize >( res->getUInt8( "Size" ) );
entry.m_status = res->getUInt8( "Status" ); entry.m_status = static_cast< Common::HouseStatus >( res->getUInt8( "Status" ) );
entry.m_currentPrice = res->getUInt64( "LandPrice" ); entry.m_currentPrice = res->getUInt64( "LandPrice" );
entry.m_updateTime = res->getUInt64( "UpdateTime" ); entry.m_updateTime = res->getUInt64( "UpdateTime" );
entry.m_ownerId = res->getUInt64( "OwnerId" ); entry.m_ownerId = res->getUInt64( "OwnerId" );
@ -365,7 +365,7 @@ Sapphire::LandPurchaseResult Sapphire::World::Manager::HousingMgr::purchaseLand(
if( !pLand ) if( !pLand )
return LandPurchaseResult::ERR_INTERNAL; return LandPurchaseResult::ERR_INTERNAL;
if( pLand->getState() != HouseState::forSale ) if( pLand->getStatus() != HouseStatus::HouseForSale )
return LandPurchaseResult::ERR_NOT_AVAILABLE; return LandPurchaseResult::ERR_NOT_AVAILABLE;
if( gilAvailable < plotPrice ) if( gilAvailable < plotPrice )
@ -388,7 +388,7 @@ Sapphire::LandPurchaseResult Sapphire::World::Manager::HousingMgr::purchaseLand(
player.removeCurrency( CurrencyType::Gil, plotPrice ); player.removeCurrency( CurrencyType::Gil, plotPrice );
pLand->setOwnerId( player.getId() ); pLand->setOwnerId( player.getId() );
pLand->setState( HouseState::sold ); pLand->setStatus( HouseStatus::HouseSold );
pLand->setLandType( Common::LandType::Private ); pLand->setLandType( Common::LandType::Private );
player.setLandFlags( LandFlagsSlot::Private, 0x00, pLand->getLandIdent() ); player.setLandFlags( LandFlagsSlot::Private, 0x00, pLand->getLandIdent() );
@ -437,7 +437,7 @@ bool Sapphire::World::Manager::HousingMgr::relinquishLand( Entity::Player& playe
pLand->setCurrentPrice( pLand->getMaxPrice() ); pLand->setCurrentPrice( pLand->getMaxPrice() );
pLand->setOwnerId( 0 ); pLand->setOwnerId( 0 );
pLand->setState( HouseState::forSale ); pLand->setStatus( HouseStatus::HouseForSale );
pLand->setLandType( Common::LandType::none ); pLand->setLandType( Common::LandType::none );
pLand->updateLandDb(); pLand->updateLandDb();
@ -477,11 +477,11 @@ void Sapphire::World::Manager::HousingMgr::sendWardLandInfo( Entity::Player& pla
auto& entry = wardInfoPacket->data().houseInfoEntry[ i ]; auto& entry = wardInfoPacket->data().houseInfoEntry[ i ];
// retail always sends the house price in this packet, even after the house has been sold // retail always sends the house price in this packet, even after the house has been HouseSold
// so I guess we do the same // so I guess we do the same
entry.housePrice = land->getCurrentPrice(); entry.housePrice = land->getCurrentPrice();
if( land->getState() == Common::HouseState::forSale ) if( land->getStatus() == Common::HouseStatus::HouseForSale )
continue; continue;
if( auto house = land->getHouse() ) if( auto house = land->getHouse() )
@ -682,7 +682,7 @@ void Sapphire::World::Manager::HousingMgr::buildPresetEstate( Entity::Player& pl
createHouse( house ); createHouse( house );
pLand->setState( HouseState::privateHouse ); pLand->setStatus( HouseStatus::HousePrivateEstate );
pLand->setLandType( LandType::Private ); pLand->setLandType( LandType::Private );
hZone->sendLandUpdate( plotNum ); hZone->sendLandUpdate( plotNum );

View file

@ -31,8 +31,8 @@ namespace Sapphire::World::Manager
uint16_t m_landId; uint16_t m_landId;
Common::LandType m_type; Common::LandType m_type;
uint8_t m_size; Common::HouseSize m_size;
uint8_t m_status; Common::HouseStatus m_status;
uint64_t m_currentPrice; uint64_t m_currentPrice;

View file

@ -220,7 +220,7 @@ void Sapphire::HousingZone::sendLandSet( Entity::Player& player )
auto& landData = landsetInitializePacket->data().land[ count ]; auto& landData = landsetInitializePacket->data().land[ count ];
landData.plotSize = pLand->getSize(); landData.plotSize = pLand->getSize();
landData.houseState = pLand->getState(); landData.houseState = pLand->getStatus();
landData.iconAddIcon = pLand->getSharing(); landData.iconAddIcon = pLand->getSharing();
landData.fcId = pLand->getFcId(); landData.fcId = pLand->getFcId();
landData.fcIcon = pLand->getFcIcon(); landData.fcIcon = pLand->getFcIcon();
@ -256,7 +256,7 @@ void Sapphire::HousingZone::sendLandUpdate( uint8_t landId )
auto& landData = landUpdatePacket->data().land; auto& landData = landUpdatePacket->data().land;
landData.plotSize = pLand->getSize(); landData.plotSize = pLand->getSize();
landData.houseState = pLand->getState(); landData.houseState = pLand->getStatus();
landData.iconAddIcon = pLand->getSharing(); landData.iconAddIcon = pLand->getSharing();
landData.fcId = pLand->getFcId(); landData.fcId = pLand->getFcId();
landData.fcIcon = pLand->getFcIcon(); landData.fcIcon = pLand->getFcIcon();

View file

@ -54,7 +54,7 @@ Sapphire::Land::Land( uint16_t territoryTypeId, uint8_t wardNum, uint8_t landId,
Sapphire::Land::~Land() = default; Sapphire::Land::~Land() = default;
void Sapphire::Land::init( Common::LandType type, uint8_t size, uint8_t state, uint32_t currentPrice, void Sapphire::Land::init( Common::LandType type, Common::HouseSize size, Common::HouseStatus state, uint32_t currentPrice,
uint64_t ownerId, uint64_t houseId ) uint64_t ownerId, uint64_t houseId )
{ {
m_type = type; m_type = type;
@ -84,12 +84,12 @@ uint32_t Sapphire::Land::getMaxPrice() const
} }
//Primary State //Primary State
void Sapphire::Land::setSize( uint8_t size ) void Sapphire::Land::setSize( Common::HouseSize size )
{ {
m_size = size; m_size = size;
} }
void Sapphire::Land::setState( uint8_t state ) void Sapphire::Land::setStatus( Common::HouseStatus state )
{ {
m_state = state; m_state = state;
} }
@ -104,12 +104,12 @@ void Sapphire::Land::setLandType( Common::LandType type )
m_type = type; m_type = type;
} }
uint8_t Sapphire::Land::getSize() const Sapphire::Common::HouseSize Sapphire::Land::getSize() const
{ {
return m_size; return m_size;
} }
uint8_t Sapphire::Land::getState() const Sapphire::Common::HouseStatus Sapphire::Land::getStatus() const
{ {
return m_state; return m_state;
} }
@ -227,7 +227,7 @@ void Sapphire::Land::updateLandDb()
void Sapphire::Land::update( uint32_t currTime ) void Sapphire::Land::update( uint32_t currTime )
{ {
if( getState() == HouseState::forSale ) if( getStatus() == HouseStatus::HouseForSale )
{ {
if( m_nextDrop < currTime && m_minPrice < m_currentPrice ) if( m_nextDrop < currTime && m_minPrice < m_currentPrice )
{ {

View file

@ -18,20 +18,20 @@ namespace Sapphire
Land( uint16_t zoneId, uint8_t wardNum, uint8_t landId, uint32_t landSetId, Land( uint16_t zoneId, uint8_t wardNum, uint8_t landId, uint32_t landSetId,
Sapphire::Data::HousingLandSetPtr info, FrameworkPtr pFw ); Sapphire::Data::HousingLandSetPtr info, FrameworkPtr pFw );
virtual ~Land(); virtual ~Land();
void init( Common::LandType type, uint8_t size, uint8_t state, uint32_t currentPrice, uint64_t ownerId, uint64_t houseId ); void init( Common::LandType type, Common::HouseSize size, Common::HouseStatus state, uint32_t currentPrice, uint64_t ownerId, uint64_t houseId );
using LandInventoryMap = std::unordered_map< uint16_t, ItemContainerPtr >; using LandInventoryMap = std::unordered_map< uint16_t, ItemContainerPtr >;
using InvMaxItemsPair = std::pair< uint16_t, uint16_t >; using InvMaxItemsPair = std::pair< uint16_t, uint16_t >;
//Primary state //Primary state
void setSize( uint8_t size ); void setSize( Common::HouseSize size );
void setState( uint8_t state ); void setStatus( Common::HouseStatus state );
void setSharing( uint8_t state ); void setSharing( uint8_t state );
void setLandType( Common::LandType type ); void setLandType( Common::LandType type );
//Gerneral //Gerneral
uint8_t getSize() const; Common::HouseSize getSize() const;
uint8_t getState() const; Common::HouseStatus getStatus() const;
uint8_t getSharing() const; uint8_t getSharing() const;
uint32_t getLandSetId() const; uint32_t getLandSetId() const;
Common::LandType getLandType() const; Common::LandType getLandType() const;
@ -71,8 +71,8 @@ namespace Sapphire
Common::LandIdent m_landIdent; Common::LandIdent m_landIdent;
uint32_t m_landSetId; uint32_t m_landSetId;
uint8_t m_size; Common::HouseSize m_size;
uint8_t m_state; Common::HouseStatus m_state;
Common::LandType m_type; Common::LandType m_type;
uint8_t m_iconAddIcon; uint8_t m_iconAddIcon;
uint32_t m_fcId; // unclear, may be wrong uint32_t m_fcId; // unclear, may be wrong