From 4af398b58583dd834090f51b70adc749cd082cbb Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Sat, 14 May 2016 16:54:21 +0300 Subject: Add into tmwa packet SMSG_MAP_SET_TILES_TYPE. Change protocol version to 7. --- src/net/eathena/maprecv.cpp | 27 +-------------------------- src/net/eathena/maprecv.h | 1 - src/net/eathena/network.cpp | 1 + src/net/eathena/packetsin.inc | 2 +- 4 files changed, 3 insertions(+), 28 deletions(-) (limited to 'src/net/eathena') diff --git a/src/net/eathena/maprecv.cpp b/src/net/eathena/maprecv.cpp index 44afba62d..dc72c65cd 100644 --- a/src/net/eathena/maprecv.cpp +++ b/src/net/eathena/maprecv.cpp @@ -20,12 +20,10 @@ #include "net/eathena/maprecv.h" -#include "gui/viewport.h" +#include "logger.h" #include "net/messagein.h" -#include "resources/map/map.h" - #include "debug.h" namespace EAthena @@ -59,29 +57,6 @@ void MapRecv::processInstanceDelete(Net::MessageIn &msg) msg.readInt32("unused"); } -void MapRecv::processSetTilesType(Net::MessageIn &msg) -{ - const int x1 = msg.readInt16("x1"); - const int y1 = msg.readInt16("y1"); - const int x2 = msg.readInt16("x2"); - const int y2 = msg.readInt16("y2"); - const BlockTypeT mask = static_cast(msg.readInt32("mask")); - const int layer = msg.readInt32("layer"); - const std::string name = msg.readString(16, "map name"); - if (layer) - return; - Map *const map = viewport->getMap(); - if (map && map->getGatName() == name) - { - for (int y = y1; y <= y2; y ++) - { - for (int x = x1; x <= x2; x ++) - map->setBlockMask(x, y, mask); - } - map->updateConditionLayers(); - } -} - void MapRecv::processAddMapMarker(Net::MessageIn &msg) { UNIMPLIMENTEDPACKET; diff --git a/src/net/eathena/maprecv.h b/src/net/eathena/maprecv.h index 4fd740c75..31bcb6129 100644 --- a/src/net/eathena/maprecv.h +++ b/src/net/eathena/maprecv.h @@ -34,7 +34,6 @@ namespace EAthena void processInstanceCreate(Net::MessageIn &msg); void processInstanceInfo(Net::MessageIn &msg); void processInstanceDelete(Net::MessageIn &msg); - void processSetTilesType(Net::MessageIn &msg); void processAddMapMarker(Net::MessageIn &msg); } // namespace MapRecv } // namespace EAthena diff --git a/src/net/eathena/network.cpp b/src/net/eathena/network.cpp index 96bebd320..2511f8e57 100644 --- a/src/net/eathena/network.cpp +++ b/src/net/eathena/network.cpp @@ -36,6 +36,7 @@ #include "net/ea/inventoryrecv.h" #include "net/ea/itemrecv.h" #include "net/ea/loginrecv.h" +#include "net/ea/maprecv.h" #include "net/ea/npcrecv.h" #include "net/ea/partyrecv.h" #include "net/ea/playerrecv.h" diff --git a/src/net/eathena/packetsin.inc b/src/net/eathena/packetsin.inc index 7fd62d8cc..8bd9143cc 100644 --- a/src/net/eathena/packetsin.inc +++ b/src/net/eathena/packetsin.inc @@ -798,7 +798,7 @@ if (serverVersion > 0) packet(SMSG_ITEM_VISIBLE2, 0x0b18, 28, &ItemRecv::processItemVisible2, 0); packet(SMSG_ITEM_DROPPED2, 0x0b19, 28, &ItemRecv::processItemDropped2, 0); packet(SMSG_BATTLE_EMBLEM2, 0x0b1a, 34, &BattleGroundRecv::processBattleEmblem2, 0); - packet(SMSG_MAP_SET_TILES_TYPE, 0x0b1b, 34, &MapRecv::processSetTilesType, 0); + packet(SMSG_MAP_SET_TILES_TYPE, 0x0b1b, 34, &Ea::MapRecv::processSetTilesType, 0); packet(SMSG_NPC_SKIN, 0x0b1c, -1, &NpcRecv::processNpcSkin, 0); packet(SMSG_PLAYER_KILLED_BY, 0x0b1d, 6, &PlayerRecv::processKilledBy, 0); -- cgit v1.2.3-60-g2f50