summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/ints/wrap.hpp17
-rw-r--r--src/map/map.cpp5
-rw-r--r--src/map/script-fun.cpp15
-rw-r--r--src/wire/packets.cpp1
4 files changed, 13 insertions, 25 deletions
diff --git a/src/ints/wrap.hpp b/src/ints/wrap.hpp
index 707c787..25b03c1 100644
--- a/src/ints/wrap.hpp
+++ b/src/ints/wrap.hpp
@@ -64,6 +64,14 @@ namespace ints
}
template<class T>
+ struct Sub : T
+ {
+ constexpr
+ Sub(typename T::wrapped_type v2)
+ : T(v2)
+ {}
+ };
+ template<class T>
constexpr
typename T::wrapped_type unwrap(typename std::enable_if<true, T>::type w)
{
@@ -73,14 +81,7 @@ namespace ints
constexpr
T wrap(typename T::wrapped_type v)
{
- struct Sub : T
- {
- constexpr
- Sub(typename T::wrapped_type v2)
- : T(v2)
- {}
- };
- return Sub(v);
+ return Sub<T>(v);
}
template<class W>
diff --git a/src/map/map.cpp b/src/map/map.cpp
index 7d219a9..0c73b59 100644
--- a/src/map/map.cpp
+++ b/src/map/map.cpp
@@ -183,7 +183,7 @@ int map_addblock(dumb_ptr<block_list> bl)
if (bl->bl_next)
bl->bl_next->bl_prev = bl;
m->blocks.ref(x / BLOCK_SIZE, y / BLOCK_SIZE).normal = bl;
- if (bl->bl_type == BL::PC)
+ if (bl->bl_type == BL::PC && !bool(bl->is_player()->status.option & Opt0::HIDE))
m->users++;
}
@@ -1237,7 +1237,8 @@ int map_setipport(MapName name, IP4Address ip, int port)
mdos->gat = nullptr;
mdos->ip = ip;
mdos->port = port;
- maps_db.put(mdos->name_, std::move(mdos));
+ MapName mName = mdos->name_;
+ maps_db.put(mName, std::move(mdos));
}
}
OMATCH_END ();
diff --git a/src/map/script-fun.cpp b/src/map/script-fun.cpp
index 4ef480a..fd8498c 100644
--- a/src/map/script-fun.cpp
+++ b/src/map/script-fun.cpp
@@ -66,21 +66,6 @@ namespace tmwa
{
namespace map
{
-static
-Array<LString, 11> pos_str //=
-{{
- "Head"_s,
- "Body"_s,
- "Left hand"_s,
- "Right hand"_s,
- "Robe"_s,
- "Shoes"_s,
- "Accessory 1"_s,
- "Accessory 2"_s,
- "Head 2"_s,
- "Head 3"_s,
- "Not Equipped"_s,
-}};
#define AARG(n) (st->stack->stack_datav[st->start + 2 + (n)])
#define HARG(n) (st->end > st->start + 2 + (n))
diff --git a/src/wire/packets.cpp b/src/wire/packets.cpp
index be06283..22a996a 100644
--- a/src/wire/packets.cpp
+++ b/src/wire/packets.cpp
@@ -76,6 +76,7 @@ void packet_dump(Session *s)
if ((i & 15) == 0)
FPRINTF(stderr, "%04X "_fmt, i);
Byte rfifob_ib;
+ rfifob_ib.value = 0;
packet_fetch(s, i, &rfifob_ib, 1);
uint8_t rfifob_i = rfifob_ib.value;
FPRINTF(stderr, "%02x "_fmt, rfifob_i);