mirror of
https://github.com/SapphireServer/Sapphire.git
synced 2025-05-03 09:17:47 +00:00
minor cleanup and track house zone player activity
This commit is contained in:
parent
c13a0b14ed
commit
76662f6e2c
3 changed files with 18 additions and 9 deletions
|
@ -35,6 +35,7 @@ public:
|
||||||
ident.landId = eobj.getHousingLink() >> 8;
|
ident.landId = eobj.getHousingLink() >> 8;
|
||||||
ident.territoryTypeId = zone->getTerritoryTypeId();
|
ident.territoryTypeId = zone->getTerritoryTypeId();
|
||||||
ident.wardNum = zone->getWardNum();
|
ident.wardNum = zone->getWardNum();
|
||||||
|
ident.worldId = 67;
|
||||||
|
|
||||||
auto internalZone = terriMgr->findOrCreateHousingInterior( ident );
|
auto internalZone = terriMgr->findOrCreateHousingInterior( ident );
|
||||||
if( internalZone )
|
if( internalZone )
|
||||||
|
|
|
@ -35,7 +35,7 @@ Housing::HousingInteriorTerritory::HousingInteriorTerritory( Common::LandIdent i
|
||||||
Zone( territoryTypeId, guId, internalName, contentName ),
|
Zone( territoryTypeId, guId, internalName, contentName ),
|
||||||
m_landIdent( ident )
|
m_landIdent( ident )
|
||||||
{
|
{
|
||||||
|
m_lastActivityTime = static_cast< uint32_t >( Util::getTimeSeconds() );
|
||||||
}
|
}
|
||||||
|
|
||||||
Housing::HousingInteriorTerritory::~HousingInteriorTerritory()
|
Housing::HousingInteriorTerritory::~HousingInteriorTerritory()
|
||||||
|
@ -79,22 +79,27 @@ void Housing::HousingInteriorTerritory::onPlayerZoneIn( Entity::Player& player )
|
||||||
|
|
||||||
for( yardPacketNum = 0; yardPacketNum < yardPacketTotal; yardPacketNum++ )
|
for( yardPacketNum = 0; yardPacketNum < yardPacketTotal; yardPacketNum++ )
|
||||||
{
|
{
|
||||||
auto housingObjectInitializPacket = makeZonePacket< FFXIVIpcHousingObjectInitialize >( player.getId() );
|
auto objectInitPacket = makeZonePacket< FFXIVIpcHousingObjectInitialize >( player.getId() );
|
||||||
memcpy( &housingObjectInitializPacket->data().landIdent, &m_landIdent, sizeof( Common::LandIdent ) );
|
memcpy( &objectInitPacket->data().landIdent, &m_landIdent, sizeof( Common::LandIdent ) );
|
||||||
housingObjectInitializPacket->data().landIdent.worldId = 67;
|
objectInitPacket->data().u1 = 0;
|
||||||
housingObjectInitializPacket->data().u1 = 0;
|
objectInitPacket->data().u2 = 100;
|
||||||
housingObjectInitializPacket->data().u2 = 100;
|
objectInitPacket->data().packetNum = yardPacketNum;
|
||||||
housingObjectInitializPacket->data().packetNum = yardPacketNum;
|
objectInitPacket->data().packetTotal = yardPacketTotal;
|
||||||
housingObjectInitializPacket->data().packetTotal = yardPacketTotal;
|
|
||||||
|
|
||||||
//TODO: Add Objects here
|
//TODO: Add Objects here
|
||||||
|
|
||||||
player.queuePacket( housingObjectInitializPacket );
|
player.queuePacket( objectInitPacket );
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void Housing::HousingInteriorTerritory::onUpdate( uint32_t currTime )
|
void Housing::HousingInteriorTerritory::onUpdate( uint32_t currTime )
|
||||||
{
|
{
|
||||||
|
if( m_playerMap.size() > 0 )
|
||||||
|
m_lastActivityTime = currTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
uint32_t Housing::HousingInteriorTerritory::getLastActivityTime() const
|
||||||
|
{
|
||||||
|
return m_lastActivityTime;
|
||||||
}
|
}
|
|
@ -18,7 +18,10 @@ namespace Sapphire::World::Territory::Housing
|
||||||
void onPlayerZoneIn( Entity::Player& player ) override;
|
void onPlayerZoneIn( Entity::Player& player ) override;
|
||||||
void onUpdate( uint32_t currTime ) override;
|
void onUpdate( uint32_t currTime ) override;
|
||||||
|
|
||||||
|
uint32_t getLastActivityTime() const;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
Common::LandIdent m_landIdent;
|
Common::LandIdent m_landIdent;
|
||||||
|
uint32_t m_lastActivityTime;
|
||||||
};
|
};
|
||||||
}
|
}
|
Loading…
Add table
Reference in a new issue