1
Fork 0
mirror of https://github.com/SapphireServer/Sapphire.git synced 2025-05-02 08:57:44 +00:00

minor cleanup and track house zone player activity

This commit is contained in:
NotAdam 2018-12-02 17:27:59 +11:00
parent c13a0b14ed
commit 76662f6e2c
3 changed files with 18 additions and 9 deletions

View file

@ -35,6 +35,7 @@ public:
ident.landId = eobj.getHousingLink() >> 8;
ident.territoryTypeId = zone->getTerritoryTypeId();
ident.wardNum = zone->getWardNum();
ident.worldId = 67;
auto internalZone = terriMgr->findOrCreateHousingInterior( ident );
if( internalZone )

View file

@ -35,7 +35,7 @@ Housing::HousingInteriorTerritory::HousingInteriorTerritory( Common::LandIdent i
Zone( territoryTypeId, guId, internalName, contentName ),
m_landIdent( ident )
{
m_lastActivityTime = static_cast< uint32_t >( Util::getTimeSeconds() );
}
Housing::HousingInteriorTerritory::~HousingInteriorTerritory()
@ -79,22 +79,27 @@ void Housing::HousingInteriorTerritory::onPlayerZoneIn( Entity::Player& player )
for( yardPacketNum = 0; yardPacketNum < yardPacketTotal; yardPacketNum++ )
{
auto housingObjectInitializPacket = makeZonePacket< FFXIVIpcHousingObjectInitialize >( player.getId() );
memcpy( &housingObjectInitializPacket->data().landIdent, &m_landIdent, sizeof( Common::LandIdent ) );
housingObjectInitializPacket->data().landIdent.worldId = 67;
housingObjectInitializPacket->data().u1 = 0;
housingObjectInitializPacket->data().u2 = 100;
housingObjectInitializPacket->data().packetNum = yardPacketNum;
housingObjectInitializPacket->data().packetTotal = yardPacketTotal;
auto objectInitPacket = makeZonePacket< FFXIVIpcHousingObjectInitialize >( player.getId() );
memcpy( &objectInitPacket->data().landIdent, &m_landIdent, sizeof( Common::LandIdent ) );
objectInitPacket->data().u1 = 0;
objectInitPacket->data().u2 = 100;
objectInitPacket->data().packetNum = yardPacketNum;
objectInitPacket->data().packetTotal = yardPacketTotal;
//TODO: Add Objects here
player.queuePacket( housingObjectInitializPacket );
player.queuePacket( objectInitPacket );
}
}
void Housing::HousingInteriorTerritory::onUpdate( uint32_t currTime )
{
if( m_playerMap.size() > 0 )
m_lastActivityTime = currTime;
}
uint32_t Housing::HousingInteriorTerritory::getLastActivityTime() const
{
return m_lastActivityTime;
}

View file

@ -18,7 +18,10 @@ namespace Sapphire::World::Territory::Housing
void onPlayerZoneIn( Entity::Player& player ) override;
void onUpdate( uint32_t currTime ) override;
uint32_t getLastActivityTime() const;
private:
Common::LandIdent m_landIdent;
uint32_t m_lastActivityTime;
};
}