Browse Source

* [Fixed]:
- clif_parse_GetCharNameRequest displaying false alarm for legitimate GM snooping.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@7129 54d463be-8e91-2dee-dedb-b68131a5f0ec

Lance 19 years ago
parent
commit
6dd1c22d41
2 changed files with 8 additions and 4 deletions
  1. 3 0
      Changelog-Trunk.txt
  2. 5 4
      src/map/clif.c

+ 3 - 0
Changelog-Trunk.txt

@@ -4,6 +4,9 @@ AS OF SVN REV. 5091, WE ARE NOW USING TRUNK.  ALL UNTESTED BUGFIXES/FEATURES GO
 IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK.
 IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK.
 
 
 2006/06/13
 2006/06/13
+	* [Fixed]:
+	  - clif_parse_GetCharNameRequest displaying false alarm for legitimate GM snooping.
+	    [Lance]
 	* Added support for reading correctly status change data from Guild and
 	* Added support for reading correctly status change data from Guild and
 	  Homun skills. [Skotlex]
 	  Homun skills. [Skotlex]
 	* Added support for reading Homun skill data (which means the HM skills are
 	* Added support for reading Homun skill data (which means the HM skills are

+ 5 - 4
src/map/clif.c

@@ -8367,8 +8367,9 @@ void clif_parse_GetCharNameRequest(int fd, struct map_session_data *sd) {
 	if (!bl) return;
 	if (!bl) return;
 
 
 	sc = status_get_sc(bl);
 	sc = status_get_sc(bl);
-	if (sc && sc->option&OPTION_INVISIBLE && !disguised(bl))
+	if (sc && sc->option&OPTION_INVISIBLE && !disguised(bl) && pc_isGM(sd) >= battle_config.hack_info_GM_level)
 	{
 	{
+		//GM characters (with client side GM enabled are able to see invisible stuff) [Lance]
 		//Asked name of invisible player, this shouldn't be possible!
 		//Asked name of invisible player, this shouldn't be possible!
 		//Possible bot? Thanks to veider and qspirit
 		//Possible bot? Thanks to veider and qspirit
 		//FIXME: Still isn't perfected as clients keep asking for this on legitimate situations.
 		//FIXME: Still isn't perfected as clients keep asking for this on legitimate situations.
@@ -8483,7 +8484,7 @@ void clif_parse_GlobalMessage(int fd, struct map_session_data *sd) { // S 008c <
 				if (skillnotok(MO_EXPLOSIONSPIRITS,sd))
 				if (skillnotok(MO_EXPLOSIONSPIRITS,sd))
 					break; //Do not override the noskill mapflag. [Skotlex]
 					break; //Do not override the noskill mapflag. [Skotlex]
 				clif_skill_nodamage(&sd->bl,&sd->bl,MO_EXPLOSIONSPIRITS,-1,
 				clif_skill_nodamage(&sd->bl,&sd->bl,MO_EXPLOSIONSPIRITS,-1,
-					sc_start(&sd->bl,SkillStatusChangeTable(MO_EXPLOSIONSPIRITS),100,
+					sc_start(&sd->bl,SkillStatusChangeTable[MO_EXPLOSIONSPIRITS],100,
 						17,skill_get_time(MO_EXPLOSIONSPIRITS,1))); //Lv17-> +50 critical (noted by Poki) [Skotlex]
 						17,skill_get_time(MO_EXPLOSIONSPIRITS,1))); //Lv17-> +50 critical (noted by Poki) [Skotlex]
 				sd->state.snovice_flag = 0;
 				sd->state.snovice_flag = 0;
 				break;
 				break;
@@ -10781,7 +10782,7 @@ void clif_parse_NoviceDoriDori(int fd, struct map_session_data *sd) {
 	
 	
 	if ((sd->class_&MAPID_BASEMASK) == MAPID_TAEKWON
 	if ((sd->class_&MAPID_BASEMASK) == MAPID_TAEKWON
 		&& sd->state.rest && (level = pc_checkskill(sd,TK_SPTIME)))
 		&& sd->state.rest && (level = pc_checkskill(sd,TK_SPTIME)))
-		sc_start(&sd->bl,SkillStatusChangeTable(TK_SPTIME),100,level,skill_get_time(TK_SPTIME, level));
+		sc_start(&sd->bl,SkillStatusChangeTable[TK_SPTIME],100,level,skill_get_time(TK_SPTIME, level));
 	return;
 	return;
 }
 }
 /*==========================================
 /*==========================================
@@ -10800,7 +10801,7 @@ void clif_parse_NoviceExplosionSpirits(int fd, struct map_session_data *sd)
 		}
 		}
 		if((sd->class_&MAPID_UPPERMASK) == MAPID_SUPER_NOVICE && sd->status.base_exp > 0 && nextbaseexp > 0 && (int)((double)1000*sd->status.base_exp/nextbaseexp)%100==0){
 		if((sd->class_&MAPID_UPPERMASK) == MAPID_SUPER_NOVICE && sd->status.base_exp > 0 && nextbaseexp > 0 && (int)((double)1000*sd->status.base_exp/nextbaseexp)%100==0){
 			clif_skill_nodamage(&sd->bl,&sd->bl,MO_EXPLOSIONSPIRITS,5,
 			clif_skill_nodamage(&sd->bl,&sd->bl,MO_EXPLOSIONSPIRITS,5,
-				sc_start(&sd->bl,SkillStatusChangeTable(MO_EXPLOSIONSPIRITS),100,
+				sc_start(&sd->bl,SkillStatusChangeTable[MO_EXPLOSIONSPIRITS],100,
 					5,skill_get_time(MO_EXPLOSIONSPIRITS,5)));
 					5,skill_get_time(MO_EXPLOSIONSPIRITS,5)));
 		}
 		}
 	}
 	}