فهرست منبع

- Added the necessary checks so that Suiton makes Fogwall have double duration, and to make water-requiring skills to consume their cells.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@7813 54d463be-8e91-2dee-dedb-b68131a5f0ec
skotlex 19 سال پیش
والد
کامیت
fc7e47d714
3فایلهای تغییر یافته به همراه12 افزوده شده و 5 حذف شده
  1. 3 0
      Changelog-Trunk.txt
  2. 3 3
      src/map/battle.c
  3. 6 2
      src/map/skill.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.
 
 2006/07/21
+	* Added the necessary checks so that Suiton makes Fogwall have double
+	  duration, and to make water-requiring skills to consume their cells.
+	  [Skotlex]
 	* Corrected the loadmap event description to specify that the mapflag
 	  required is actually "loadevent", NOT "loadmap"! [Skotlex]
 	* Now when the char-txt server does not finds a requested party, it will

+ 3 - 3
src/map/battle.c

@@ -198,11 +198,11 @@ int battle_attr_fix(struct block_list *src, struct block_list *target, int damag
 	ratio = attr_fix_table[def_lv-1][atk_elem][def_type];
 	if (sc && sc->count)
 	{
-		if(sc->data[SC_VOLCANO].timer!=-1 && atk_elem == 3)
+		if(sc->data[SC_VOLCANO].timer!=-1 && atk_elem == ELE_FIRE)
 			ratio += enchant_eff[sc->data[SC_VOLCANO].val1-1];
-		if(sc->data[SC_VIOLENTGALE].timer!=-1 && atk_elem == 4)
+		if(sc->data[SC_VIOLENTGALE].timer!=-1 && atk_elem == ELE_WIND)
 			ratio += enchant_eff[sc->data[SC_VIOLENTGALE].val1-1];
-		if(sc->data[SC_DELUGE].timer!=-1 && atk_elem == 1)
+		if(sc->data[SC_DELUGE].timer!=-1 && atk_elem == ELE_WATER)
 			ratio += enchant_eff[sc->data[SC_DELUGE].val1-1];
 	}
 	if (tsc && tsc->count)

+ 6 - 2
src/map/skill.c

@@ -2434,6 +2434,8 @@ int skill_count_water (struct block_list *src, int range)
 			continue;
 		}
 		unit = map_find_skill_unit_oncell(src,x,y,SA_DELUGE,NULL);
+		if (!unit)
+		  unit = map_find_skill_unit_oncell(src,x,y,NJ_SUITON,NULL);
 		if (unit) {
 			cnt++;
 			skill_delunit(unit);
@@ -6717,8 +6719,10 @@ struct skill_unit_group *skill_unitsetting (struct block_list *src, int skillid,
 		val1 = 55 + skilllv*5;	//Elemental Resistance
 		val2 = skilllv*10;	//Status ailment resistance
 		break;
-	case PF_FOGWALL:	/* フォグウォール */
-		if(sc && sc->data[SC_DELUGE].timer!=-1) limit *= 2;
+	case PF_FOGWALL:
+		if(sc && (
+			sc->data[SC_DELUGE].timer!=-1 || sc->data[SC_SUITON].timer != -1
+		)) limit *= 2;
 		break;
 	case RG_GRAFFITI:			/* Graffiti */
 		count=1;	// Leave this at 1 [Valaris]