From 9e22af7b482fb3c0dc5d9c77fbce7967e514bb29 Mon Sep 17 00:00:00 2001 From: Mordred Date: Thu, 22 Nov 2018 23:59:42 +0100 Subject: [PATCH 1/5] Minor changes --- .../sapphire_zone/Event/EventHelper.cpp | Bin 2765 -> 3067 bytes .../sapphire_zone/Network/GameConnection.h | 3 +-- .../Network/Handlers/EventHandlers.cpp | 5 ++--- 3 files changed, 3 insertions(+), 5 deletions(-) diff --git a/src/servers/sapphire_zone/Event/EventHelper.cpp b/src/servers/sapphire_zone/Event/EventHelper.cpp index 8243599c034b73f4f4ef7feb023633da55cc198d..11b17e0810bf73ed62fc3def6b4e91c8b22e0c66 100644 GIT binary patch literal 3067 zcmb_e&2HN`5Zl5K zpC>|#=O{538sjaOH#$j&{AI>#!NId!EO4pvv%x&5k3T&}sb654VcuvFGESYT+v#?2 zr7@QPHERM+`3{O#;r{5{I z2W2AlgZonr$Qe#z*z0yKyBz>gY6Y1S0uIgG1B!hNtV|egO9Z3d9!(4e@!(;Fczlr| zMOWyf5ga@;`MDWNc_!6Tl1nY&O9{~rv_E2vZbt1UcOc&vy^gdic+I+{+-}XgsdzcKkbk1y zj!@4rztGsoSr}_OWsg!P{VVLRp3%$f8cxsd=QSp6!eSk{t3=?96+yr6ok^muOh3VW zGJcZe7-^L^l8=mRbTVVP}|s~|Mk1wTajmt+Aqn_E!06ow(K*&1Vi${-XX!5v;T`@6%tB I>5D@_uAXUbh)NUP*YmZ4$ zs95m;VYWO8NT?fjROJEK@&H{{-Eb%VsS#dSll$}KoZ~sG9!*`i?s%3PbqRj7Li>H{ z)$OIxMQs|L*IzKlofj`?p;5c~@w}(4z9Sx6C$3L|x~=`!FukrDcMu}`j07HDp#d?B zwZQC?0S$KX_EvAuL9~Wno zw)m|z5&tad{F`(S=qJ)#ynO(m27g*qQmmjC{N_qzn4+E{;S;KH{?0KDbL~r6A%_b+}dNp zY{;DmS0aPh#aB6VaU{RywaOj-va-s*RCNBMqF?!!AwEj7j6??ND>Lwo@yw8KC{GrW zagpc%TCwb;h;gb!Y<0|iM{9zcM$U=)+@=}t;Y90__?Y4mzz}*#4sCQ5;)Eo$mg9<@ z)Y5poOL}JHvQ*chGBufs2G{5S@jqxiy*N8+YZ( eventId >> 16 ); - std::string eventName = "onShop"; + std::string eventName = "onOpen"; std::string objName = Event::getEventName( eventId ); player.sendDebug( "EventId: " + std::to_string( eventId ) + " (0x" + Util::intToHexString( static_cast< uint64_t >( eventId & 0xFFFFFFF ), 8 ) + ")" ); - player.sendDebug( "Calling: " + objName + "." + eventName ); - player.eventStart( 0, eventId, Event::EventHandler::UI, 0, 0 ); + player.eventStart( 0, eventId, Event::EventHandler::UI, 0, packet.data().param ); } From 59e7dd39dc673470b9d79cf5d63772fb4d76cd9c Mon Sep 17 00:00:00 2001 From: NotAdam Date: Fri, 23 Nov 2018 16:48:32 +1100 Subject: [PATCH 2/5] Store instance guid in db when zoning into an instance --- src/servers/sapphire_zone/Zone/TerritoryMgr.cpp | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/servers/sapphire_zone/Zone/TerritoryMgr.cpp b/src/servers/sapphire_zone/Zone/TerritoryMgr.cpp index 2cbd4789..d8cb748e 100644 --- a/src/servers/sapphire_zone/Zone/TerritoryMgr.cpp +++ b/src/servers/sapphire_zone/Zone/TerritoryMgr.cpp @@ -410,14 +410,18 @@ bool Core::TerritoryMgr::movePlayer( ZonePtr pZone, Core::Entity::PlayerPtr pPla if( isHousingTerritory( pZone->getTerritoryTypeId() ) ) { auto pHousing = std::dynamic_pointer_cast< HousingZone >( pZone ); - if( pHousing ) + if( pHousing ) pPlayer->setTerritoryId( pHousing->getLandSetId() ); - } + } + else if( isInstanceContentTerritory( pZone->getTerritoryTypeId() ) ) + { + pPlayer->setTerritoryId( pZone->getGuId() ); + } else { pPlayer->setTerritoryId( 0 ); } - + // mark character as zoning in progress pPlayer->setLoadingComplete( false ); From 8360c74acdf3ae94290b110f0dfc95db050004d0 Mon Sep 17 00:00:00 2001 From: NotAdam Date: Fri, 23 Nov 2018 16:51:07 +1100 Subject: [PATCH 3/5] somehow eventhelper.cpp got really fucked up --- .../sapphire_zone/Event/EventHelper.cpp | Bin 3067 -> 2957 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/src/servers/sapphire_zone/Event/EventHelper.cpp b/src/servers/sapphire_zone/Event/EventHelper.cpp index 11b17e0810bf73ed62fc3def6b4e91c8b22e0c66..37f7bcfec5f592362e8b20b06ea061d1b9bf7b50 100644 GIT binary patch delta 856 zcmZXSO>fgc5QY`!dm{A$C@C%KVgfh?l14?MBq%B>{X8Hd0vtf9OtNX*I(D$vq$sU8 zapVx@$}a&4^}-EQu1H+@0X-rv%*J+_iiT4NhgT|V zj^5>c+u36~+wFc806f>Qc9=zJx2HFGQ0LD?x+_|hiYpu{8lDst7+^WGgfAl3B7pBA zH)a4BbNhy9b~MK2P>nY|&I*(r;Bn+mf&v*%DQnqL$e7XA*yUFqcg3dFwpjs>qcf?x z{8y`h9~2EgD~m)wQSyHGA%V*HFq#Qrdi2rkB&_MV!tOS7b8k$%PJlnrQh?fy-JV2! zi={%;uh>>@0%iBOMNR|Ea$Lou)HEK%)06FA;t;m~h&S+RB9B{%Sr%X%E<9SddY_99 z?VU?katFSPPl>UM?}_JFNZ!P!$yNNA)bMLkyLgr%FC}OOxr59z-RV_EH3QsCJy;0J zhVB?&ho134fmtn^{QCLZumkS{iT9TQg4O$T5TX*R5E1xvF_5pX0J%-IQODnwOcE4s#Sgs}j&mLslhZ?S_-PSh)~J%wi1z zs(Ht%A_p@_L7^zMq_ikcLCG<-BqOz`vLsc>ns>4un-szrKQeh5#G8 zAebdQS&Q8W$ckat0Fo{28gRp*M&~8wrdq>-1Q-Rt@a7FqEGj?*Hxq}8ILt+$;4TNs z!u%D@Aq_OvkX3SWKZgV`qCqiK3yR5g9A*e-z2a~O#x^h4 Date: Fri, 23 Nov 2018 17:37:46 +1100 Subject: [PATCH 4/5] Remove old tables from update.sql --- sql/update.sql | 6 ------ 1 file changed, 6 deletions(-) diff --git a/sql/update.sql b/sql/update.sql index ce4c3fd9..21bc893c 100644 --- a/sql/update.sql +++ b/sql/update.sql @@ -19,12 +19,6 @@ MODIFY COLUMN UPDATE_DATE DATETIME NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURR ALTER TABLE charainfosearch MODIFY COLUMN UPDATE_DATE DATETIME NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP; -ALTER TABLE charaitemcrystal -MODIFY COLUMN UPDATE_DATE DATETIME NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP; - -ALTER TABLE charaitemcurrency -MODIFY COLUMN UPDATE_DATE DATETIME NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP; - ALTER TABLE charaitemgearset MODIFY COLUMN UPDATE_DATE DATETIME NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP; From 320422cb6d6dc2537cb33724bfc748ccbc9872bd Mon Sep 17 00:00:00 2001 From: NotAdam Date: Fri, 23 Nov 2018 17:45:37 +1100 Subject: [PATCH 5/5] correctly check state when sending ward info --- src/servers/sapphire_zone/Zone/HousingMgr.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/servers/sapphire_zone/Zone/HousingMgr.cpp b/src/servers/sapphire_zone/Zone/HousingMgr.cpp index e882eca1..c9d50ca0 100644 --- a/src/servers/sapphire_zone/Zone/HousingMgr.cpp +++ b/src/servers/sapphire_zone/Zone/HousingMgr.cpp @@ -240,8 +240,13 @@ void Core::HousingMgr::sendWardLandInfo( Entity::Player& player, uint8_t wardId, auto& entry = wardInfoPacket->data().houseInfoEntry[ i ]; + // retail always sends the house price in this packet, even after the house has been sold + // so I guess we do the same entry.housePrice = land->getCurrentPrice(); + if( land->getState() == Common::HouseState::forSale ) + continue; + switch( land->getLandType() ) { case LandType::FreeCompany: