Ver Fonte

- Removed incorrect "Waterball range+1 when standing on suiton" feature.
- Corrected the Speed update code to prevent sending "walk to xy" packets twice when the affected character is a player.
- Expanded mob can't move warning to print out where this mob was stuck at (map, x,y)


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

skotlex há 19 anos atrás
pai
commit
56580d56f0
4 ficheiros alterados com 12 adições e 5 exclusões
  1. 6 0
      Changelog-Trunk.txt
  2. 1 1
      src/map/mob.c
  3. 0 2
      src/map/skill.c
  4. 5 2
      src/map/status.c

+ 6 - 0
Changelog-Trunk.txt

@@ -4,6 +4,12 @@ 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.
 
 2006/07/31
+	* Removed incorrect "Waterball range+1 when standing on suiton" feature.
+	  [Skotlex]
+	* Corrected the Speed update code to prevent sending "walk to xy" packets
+	  twice when the affected character is a player. [Skotlex]
+	* Expanded mob can't move warning to print out where this mob was stuck at
+	  (map, x,y) [Skotlex]
 	* Fixed segmentation fault in status_change_end, vd wasn't initialized [Toms]
 2006/07/30
 	* NPC_INVISIBLE will now use Cloaking of a level +9 of the used skill

+ 1 - 1
src/map/mob.c

@@ -1012,7 +1012,7 @@ int mob_randomwalk(struct mob_data *md,int tick)
 		md->move_fail_count++;
 		if(md->move_fail_count>1000){
 			if(battle_config.error_log)
-				ShowWarning("MOB cant move. random spawn %d, class = %d\n",md->bl.id,md->class_);
+				ShowWarning("MOB cant move. random spawn %d, class = %d, at %s (%d,%d)\n",md->bl.id,md->class_,map[md->bl.m].name, md->bl.x, md->bl.y);
 			md->move_fail_count=0;
 			mob_spawn(md);
 		}

+ 0 - 2
src/map/skill.c

@@ -3005,8 +3005,6 @@ int skill_castend_damage_id (struct block_list* src, struct block_list *bl, int
 		if (skilllv>1) {
 			int range = skilllv/2;
 			int cnt;
-			// if caster is ONLY on a NJ_SUITON cell, range will be increased by 1 (consuming suiton cells but also deluge cells if there are ones)
-			if ( !map_getcell(src->m,src->x,src->y,CELL_CHKWATER) && !map_find_skill_unit_oncell(src,src->x,src->y,SA_DELUGE,NULL) ) range = skilllv/2+1;
 
 		  	if (sd)
 				cnt = skill_count_water(src,range);

+ 5 - 2
src/map/status.c

@@ -2802,10 +2802,13 @@ void status_calc_bl(struct block_list *bl, unsigned long flag)
 	}
 
 	if(flag&SCB_SPEED) {
-		struct unit_data *ud = unit_bl2ud(bl);
 		status->speed = status_calc_speed(bl, sc, b_status->speed);
-		if (ud && ud->walktimer != -1) //Re-walk to adjust speed. [Skotlex]
+		if (!sd)
+	  	{	//Player speed is updated on calc_bl_sub_pc
+			struct unit_data *ud = unit_bl2ud(bl);
+		  	if (ud && ud->walktimer != -1) //Re-walk to adjust speed. [Skotlex]
 			unit_walktoxy(bl, ud->to_x, ud->to_y, ud->state.walk_easy);
+		}
 	}
 	if(flag&SCB_CRI && b_status->cri) {
 		if (status->luk == b_status->luk)