mirror of
https://github.com/SapphireServer/Sapphire.git
synced 2025-05-03 01:07:47 +00:00
Merge pull request #435 from NotAdam/housing
Misc fixes/improvements & new packet
This commit is contained in:
commit
8456be8e7e
5 changed files with 16 additions and 5 deletions
|
@ -295,7 +295,7 @@ enum ActorControlType : uint16_t
|
||||||
RequestWardLandInfo = 0x453,
|
RequestWardLandInfo = 0x453,
|
||||||
RequestLandRelinquish = 0x454,
|
RequestLandRelinquish = 0x454,
|
||||||
RequestEstateRename = 0x45A,
|
RequestEstateRename = 0x45A,
|
||||||
RequestEstateGreeting = 0x45C,
|
RequestEstateGreeting = 0x45C, // sends FFXIVIpcHousingEstateGreeting in return
|
||||||
RequestHousingItemUI = 0x463,
|
RequestHousingItemUI = 0x463,
|
||||||
RequestSharedEstateSettings = 0x46F,
|
RequestSharedEstateSettings = 0x46F,
|
||||||
|
|
||||||
|
|
|
@ -191,6 +191,8 @@ namespace Core::Network::Packets
|
||||||
LandInfoSign = 0x0225, // updated 4.4
|
LandInfoSign = 0x0225, // updated 4.4
|
||||||
LandRename = 0x0226, // updated 4.4
|
LandRename = 0x0226, // updated 4.4
|
||||||
|
|
||||||
|
HousingEstateGreeting = 0x0227, // updated 4.4
|
||||||
|
|
||||||
LandPermissionSlot = 0x0228, // updated 4.4
|
LandPermissionSlot = 0x0228, // updated 4.4
|
||||||
LandPermission = 0x0229, // updated 4.4
|
LandPermission = 0x0229, // updated 4.4
|
||||||
|
|
||||||
|
|
|
@ -1738,6 +1738,15 @@ struct FFXIVIpcHousingWardInfo : FFXIVIpcBasePacket< HousingWardInfo >
|
||||||
} houseInfoEntry[60];
|
} houseInfoEntry[60];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
struct FFXIVIpcHousingEstateGreeting : FFXIVIpcBasePacket< HousingEstateGreeting >
|
||||||
|
{
|
||||||
|
uint8_t plotId;
|
||||||
|
uint8_t pad[3]; // unsure
|
||||||
|
uint16_t territoryTypeId;
|
||||||
|
uint16_t unk;
|
||||||
|
char message[200];
|
||||||
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Structural representation of the packet sent by the server
|
* Structural representation of the packet sent by the server
|
||||||
* to show the current shared estate settings
|
* to show the current shared estate settings
|
||||||
|
|
|
@ -25,7 +25,7 @@ void Sapphire::World::Manager::PlayerMgr::movePlayerToLandDestination( Core::Ent
|
||||||
if( terriPos )
|
if( terriPos )
|
||||||
{
|
{
|
||||||
// check if its a housing zone, zoning is different here
|
// check if its a housing zone, zoning is different here
|
||||||
if( terriMgr->isHousingTerritory( terriPos->getTargetZoneId() ) && param != 0 )
|
if( terriMgr->isHousingTerritory( terriPos->getTargetZoneId() ) )
|
||||||
{
|
{
|
||||||
auto housingMgr = g_fw.get< Core::HousingMgr >();
|
auto housingMgr = g_fw.get< Core::HousingMgr >();
|
||||||
auto landSetId = housingMgr->toLandSetId( terriPos->getTargetZoneId(), param );
|
auto landSetId = housingMgr->toLandSetId( terriPos->getTargetZoneId(), param );
|
||||||
|
|
|
@ -168,7 +168,7 @@ void Core::Scripting::ScriptMgr::onPlayerFirstEnterWorld( Entity::Player& player
|
||||||
|
|
||||||
bool Core::Scripting::ScriptMgr::onTalk( Entity::Player& player, uint64_t actorId, uint32_t eventId )
|
bool Core::Scripting::ScriptMgr::onTalk( Entity::Player& player, uint64_t actorId, uint32_t eventId )
|
||||||
{
|
{
|
||||||
auto script = m_nativeScriptMgr->getScript< Sapphire::ScriptAPI::EventScript >( eventId & 0xFFFF0000 );
|
auto script = m_nativeScriptMgr->getScript< Sapphire::ScriptAPI::EventScript >( eventId );
|
||||||
if( script )
|
if( script )
|
||||||
{
|
{
|
||||||
script->onTalk( eventId, player, actorId );
|
script->onTalk( eventId, player, actorId );
|
||||||
|
@ -176,7 +176,7 @@ bool Core::Scripting::ScriptMgr::onTalk( Entity::Player& player, uint64_t actorI
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
auto script = m_nativeScriptMgr->getScript< Sapphire::ScriptAPI::EventScript >( eventId );
|
auto script = m_nativeScriptMgr->getScript< Sapphire::ScriptAPI::EventScript >( eventId & 0xFFFF0000 );
|
||||||
if( !script )
|
if( !script )
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
|
@ -184,7 +184,7 @@ bool Core::Scripting::ScriptMgr::onTalk( Entity::Player& player, uint64_t actorI
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
return true;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool Core::Scripting::ScriptMgr::onEnterTerritory( Entity::Player& player, uint32_t eventId,
|
bool Core::Scripting::ScriptMgr::onEnterTerritory( Entity::Player& player, uint32_t eventId,
|
||||||
|
|
Loading…
Add table
Reference in a new issue