From fb3f83b79ea7db00225d406f6e579c08961e2f38 Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Sun, 1 Mar 2015 22:15:05 +0300 Subject: hide hidden players from online list if player in list have smaller group level than local player. --- src/map/map.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'src/map/map.c') diff --git a/src/map/map.c b/src/map/map.c index 6567337..8b0fd6a 100644 --- a/src/map/map.c +++ b/src/map/map.c @@ -70,7 +70,9 @@ void emap_online_list(int fd) if (!ssd) return; + const bool showVersion = pc_has_permission(ssd, permission_show_client_version_flag); + const int gpoupLevel = pc_get_group_level(ssd); data1->onlinelistlasttime = t; DBIterator* iter = db_iterator(map->pc_db); @@ -83,12 +85,13 @@ void emap_online_list(int fd) if (ptr - buf > 19500) break; + if (pc_isinvisible(sd) && gpoupLevel < pc_get_group_level(sd)) + continue; + struct SessionExt *data = session_get_bysd(sd); if (!data) continue; - // need skip invisible players - uint8 state = data->state; if (sd->status.sex == 1) state |= 128; -- cgit v1.2.3-60-g2f50