فهرست منبع

Fixed Abrakadabra skill
and 2 minor bugs in skills.c (related to consumed items)

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

Lupus 20 سال پیش
والد
کامیت
e0f0b2249b
4فایلهای تغییر یافته به همراه11 افزوده شده و 4 حذف شده
  1. 1 0
      Changelog.txt
  2. 4 0
      db/Changelog.txt
  3. 2 1
      db/skill_require_db.txt
  4. 4 3
      src/map/skill.c

+ 1 - 0
Changelog.txt

@@ -1,5 +1,6 @@
 Date	Added
 11/26   
+	* Fixed Abrakadabra (2 minor bugs of consumed items - they were ignored if placed in 0 pos) [Lupus]
         * Finished Full Strip, Weapon Refine, Slim Pitcher and Full Protection. [celest]
         * Added skill_nocast_db.txt. Use it to set which skills cannot be used in
           which conditions [celest]

+ 4 - 0
db/Changelog.txt

@@ -5,6 +5,10 @@
 	Ayathoya items == Added but no effect ( all are "ect" itens)
 	Skill databases == celest working on them i believe.
 
+11/26	* Fixed Abrakadabra (3 Yellow Gemstones -> Yellow Gemstones 2).
+	  And of course it would still use 1 Yellow even if you have Mistress Card, etc. [Lupus]
+	  TODO: Abrakadabra should also summon Monsters and even MVP by chance...
+
 11/25   * Added element effects to const.txt. [celest]
           Usage example: sc_start SC_Frost,30000,0;
           to change the weapon element to Water for 30 seconds.

+ 2 - 1
db/skill_require_db.txt

@@ -192,7 +192,8 @@
 287,0,0,48:46:44:42:40,0,0,0,99,none,0,715,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0	//SA_VIOLENTGALE#バイオレントゲイル#
 288,0,0,66:62:58:54:50,0,0,0,99,none,0,717,1,715,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0	//SA_LANDPROTECTOR#ランドプロテクタ?#
 289,0,0,1,0,0,0,99,none,0,716,1,715,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0	//SA_DISPELL#ディスペル#
-290,0,0,50,0,0,0,99,none,0,715,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0	//SA_ABRACADABRA#アブラカタブラ#
+290,0,0,50,0,0,0,99,none,0,715,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0	//SA_ABRACADABRA#アブラカタブラ#
+//reduced 2 to 1 Yellow gemstones, because Abrakadabra has extra hardcoded usage of 1 Yellow gemstone [Lupus]
 291,0,0,1,0,0,0,99,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0	//SA_MONOCELL#チェンジポリン#
 292,0,0,1,0,0,0,99,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0	//SA_CLASSCHANGE#クラスチェンジ#
 293,0,0,1,0,0,0,99,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0	//SA_SUMMONMONSTER#サモンモンスタ?#

+ 4 - 3
src/map/skill.c

@@ -2969,11 +2969,12 @@ int skill_castend_nodamage_id( struct block_list *src, struct block_list *bl,int
 		break;
 	case SA_ABRACADABRA:
 		//require 1 yellow gemstone even with mistress card or Into the Abyss
-		if (pc_search_inventory(sd, 715) <= 0 ) {
+		if ((i=pc_search_inventory(sd, 715)) < 0 ) { //bug fixed by Lupus (item pos can be 0, too!)
 			clif_skill_fail(sd,sd->skillid,0,0);
 			break;
 		}
-		pc_delitem(sd, pc_search_inventory(sd, 715), 1, 0);
+		//pc_delitem(sd, pc_search_inventory(sd, 715), 1, 0);
+		pc_delitem(sd, i, 1, 0);
 		//
 		do{
 			abra_skillid=skill_abra_dataset(skilllv);
@@ -3726,7 +3727,7 @@ int skill_castend_nodamage_id( struct block_list *src, struct block_list *bl,int
 	case BS_REPAIRWEAPON:			/* 武器修理 */
 		if(sd) {
 //動作しないのでとりあえずコメントアウト
-			if (pc_search_inventory(sd, 999) <= 0 ) {
+			if (pc_search_inventory(sd, 999) < 0 ) { //fixed by Lupus (item pos can be = 0!)
 				clif_skill_fail(sd,sd->skillid,0,0);
 				map_freeblock_unlock();
 				return 1;