From 821a51521b537dc8b95d97a578321f68a3b9e26b Mon Sep 17 00:00:00 2001
From: gumi <git@gumi.ca>
Date: Sun, 4 Mar 2018 17:22:02 -0500
Subject: allow @goto and @chareffect on higher GM levels if not hidden

---
 src/map/atcommand.cpp | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/map/atcommand.cpp b/src/map/atcommand.cpp
index 7167b63..81b0e2b 100644
--- a/src/map/atcommand.cpp
+++ b/src/map/atcommand.cpp
@@ -674,7 +674,7 @@ ATCE atcommand_goto(Session *s, dumb_ptr<map_session_data> sd,
     }
 
     dumb_ptr<map_session_data> pl_sd = map_nick2sd(character);
-    if (pl_sd != nullptr && pc_isGM(sd).detects(pc_isGM(pl_sd)))
+    if (pl_sd != nullptr && (!bool(pl_sd->status.option & Opt0::HIDE) || pc_isGM(sd).detects(pc_isGM(pl_sd))))
     {
         if (pl_sd->bl_m->flag.get(MapFlag::NOWARPTO)
             && !(pc_isGM(sd).satisfies(battle_config.any_warp_GM_min_level)))
@@ -4316,7 +4316,7 @@ ATCE atcommand_chareffect(Session *s, dumb_ptr<map_session_data> sd,
         return ATCE::USAGE;
 
     dumb_ptr<map_session_data> pl_sd = map_nick2sd(target);
-    if (pl_sd == nullptr || (pl_sd != nullptr && !(pc_isGM(sd).detects(pc_isGM(pl_sd)))))
+    if (pl_sd == nullptr || (bool(pl_sd->status.option & Opt0::HIDE) && !pc_isGM(sd).detects(pc_isGM(pl_sd))))
         return ATCE::EXIST;
 
     clif_specialeffect(pl_sd, type, 0);
-- 
cgit v1.2.3-70-g09d2