Преглед изворни кода

- removed redundant clif_hominfo line in merc_hom_dead (it was sent already from hom_damage)
- Item usage is now blocked while hidden.
- Moved the bladestop/berserk check from clif_parse_EquipItem to pc_equipitem


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

skotlex пре 17 година
родитељ
комит
ace81763bc
3 измењених фајлова са 3 додато и 7 уклоњено
  1. 0 3
      src/map/clif.c
  2. 0 1
      src/map/mercenary.c
  3. 3 3
      src/map/pc.c

+ 0 - 3
src/map/clif.c

@@ -8631,9 +8631,6 @@ void clif_parse_EquipItem(int fd,struct map_session_data *sd)
 	else if (pc_cant_act(sd))
 		return;
 
-	if(sd->sc.data[SC_BLADESTOP] || sd->sc.data[SC_BERSERK])
-		return;
-
 	if(!sd->status.inventory[index].identify) {
 		clif_equipitemack(sd,index,0,0);	// fail
 		return;

+ 0 - 1
src/map/mercenary.c

@@ -76,7 +76,6 @@ int merc_hom_dead(struct homun_data *hd, struct block_list *src)
 	if (!sd) //unit remove map will invoke unit free
 		return 3;
 
-	clif_hominfo(sd,hd,0); // Send dead flag
 	clif_emotion(&sd->bl, 28) ; //sob
 	//Remove from map (if it has no intimacy, it is auto-removed from memory)
 	return 3;

+ 3 - 3
src/map/pc.c

@@ -3079,6 +3079,7 @@ int pc_useitem(struct map_session_data *sd,int n)
 		(sd->sc.data[SC_GRAVITATION] && sd->sc.data[SC_GRAVITATION]->val3 == BCT_SELF) ||
 		sd->sc.data[SC_TRICKDEAD] ||
 		sd->sc.data[SC_BLADESTOP] ||
+		sd->sc.data[SC_HIDING] ||
 		(sd->sc.data[SC_NOCHAT] && sd->sc.data[SC_NOCHAT]->val1&MANNER_NOITEM)
 	))
 		return 0;
@@ -6325,9 +6326,8 @@ int pc_equipitem(struct map_session_data *sd,int n,int req_pos)
 		return 0;
 	}
 
-// -- moonsoul (if player is berserk then cannot equip)
-//
-	if(sd->sc.data[SC_BERSERK]){
+	if(sd->sc.data[SC_BERSERK] || sd->sc.data[SC_BLADESTOP])
+	{
 		clif_equipitemack(sd,n,0,0);	// fail
 		return 0;
 	}