diff options
author | Haru <haru@dotalux.com> | 2016-01-12 16:56:33 +0100 |
---|---|---|
committer | Haru <haru@dotalux.com> | 2016-01-12 17:28:40 +0100 |
commit | ed05ed85c0bc44980168f730d02dfd379a2bfda9 (patch) | |
tree | ad2e3ef67876d58982eb355cab55f8b9a2551585 | |
parent | c01f74557fb80e8d99fa54140d4741d34a4d5019 (diff) | |
download | hercules-ed05ed85c0bc44980168f730d02dfd379a2bfda9.tar.gz hercules-ed05ed85c0bc44980168f730d02dfd379a2bfda9.tar.bz2 hercules-ed05ed85c0bc44980168f730d02dfd379a2bfda9.tar.xz hercules-ed05ed85c0bc44980168f730d02dfd379a2bfda9.zip |
Replaced 22-bit mask entry with a regular uint32 in the noviewid mapflag implementation
As per ultramage's suggestion in #926
Signed-off-by: Haru <haru@dotalux.com>
-rw-r--r-- | src/common/mmo.h | 1 | ||||
-rw-r--r-- | src/map/atcommand.c | 2 | ||||
-rw-r--r-- | src/map/map.h | 2 | ||||
-rw-r--r-- | src/map/script.c | 4 |
4 files changed, 5 insertions, 4 deletions
diff --git a/src/common/mmo.h b/src/common/mmo.h index 17e6078fc..37fc63e29 100644 --- a/src/common/mmo.h +++ b/src/common/mmo.h @@ -268,6 +268,7 @@ struct item { //Equip position constants enum equip_pos { + EQP_NONE = 0x000000, EQP_HEAD_LOW = 0x000001, EQP_HEAD_MID = 0x000200, //512 EQP_HEAD_TOP = 0x000100, //256 diff --git a/src/map/atcommand.c b/src/map/atcommand.c index 9d03dd057..e223f698c 100644 --- a/src/map/atcommand.c +++ b/src/map/atcommand.c @@ -3917,7 +3917,7 @@ ACMD(mapinfo) strcat(atcmd_output, msg_fd(fd,1096)); // PartyLock | if (map->list[m_id].flag.guildlock) strcat(atcmd_output, msg_fd(fd,1097)); // GuildLock | - if (map->list[m_id].flag.noviewid) + if (map->list[m_id].flag.noviewid != EQP_NONE) strcat(atcmd_output, msg_fd(fd,1079)); // NoViewID | clif->message(fd, atcmd_output); diff --git a/src/map/map.h b/src/map/map.h index 13b7880bd..ff7ca2d38 100644 --- a/src/map/map.h +++ b/src/map/map.h @@ -716,7 +716,7 @@ struct map_data { unsigned noknockback : 1; unsigned notomb : 1; unsigned nocashshop : 1; - unsigned noviewid : 22; + uint32 noviewid; ///< noviewid (bitmask - @see enum equip_pos) } flag; struct point save; struct npc_data *npc[MAX_NPC_PER_MAP]; diff --git a/src/map/script.c b/src/map/script.c index befb85304..5752c8a31 100644 --- a/src/map/script.c +++ b/src/map/script.c @@ -11808,7 +11808,7 @@ BUILDIN(setmapflag) { case MF_RESET: map->list[m].flag.reset = 1; break; case MF_NOTOMB: map->list[m].flag.notomb = 1; break; case MF_NOCASHSHOP: map->list[m].flag.nocashshop = 1; break; - case MF_NOVIEWID: map->list[m].flag.noviewid = (val <= 0) ? 0 : val; break; + case MF_NOVIEWID: map->list[m].flag.noviewid = (val <= 0) ? EQP_NONE : val; break; } } @@ -11895,7 +11895,7 @@ BUILDIN(removemapflag) { case MF_RESET: map->list[m].flag.reset = 0; break; case MF_NOTOMB: map->list[m].flag.notomb = 0; break; case MF_NOCASHSHOP: map->list[m].flag.nocashshop = 0; break; - case MF_NOVIEWID: map->list[m].flag.noviewid = 0; break; + case MF_NOVIEWID: map->list[m].flag.noviewid = EQP_NONE; break; } } |