Jelajahi Sumber

- Various GS skill requirement corrections:
- All coin related skills can be used with any weapon. Those that require ammo can be used with any ammo.
- Added support for specifying ammo type = 99 in the skill_require_db file, it can be used to specify that any kind of ammo can be used with the skill, but you NEED to have ammo equipped.


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

skotlex 18 tahun lalu
induk
melakukan
1c5fbb2231
4 mengubah file dengan 18 tambahan dan 9 penghapusan
  1. 3 0
      Changelog-Trunk.txt
  2. 2 0
      db/Changelog.txt
  3. 8 8
      db/skill_require_db.txt
  4. 5 1
      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/11/21
+	* Added support for specifying ammo type = 99 in the skill_require_db file,
+	  it can be used to specify that any kind of ammo can be used with the skill,
+	  but you NEED to have ammo equipped. [Skotlex]
 	* Corrected GS_DISARM, it is now a normal attack, which, when it connects,
 	  has a chance to do strip weapon at a 3*lv% rate (modified by dex) [Skotlex]
 	* Fixed GS_PIERCINGSHOT, it should ignore defense [Skotlex]

+ 2 - 0
db/Changelog.txt

@@ -20,6 +20,8 @@
 
 ========================
 11/21
+	* All coin related skills can be used with any weapon. Those that require
+	  ammo can be used with any ammo. [Skotlex]
 	* Fixed all cast times and delays of Gunslinger skills [Playtester]
 	- cast time of Dust is reduced by dex
 	- Tracking cast time cannot be reduced by anything

+ 8 - 8
db/skill_require_db.txt

@@ -393,14 +393,14 @@
 498,0,0,200,0,0,0,99,0,0,none,0,7134,200,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0//AM_TWILIGHT3##
 499,0,0,8,0,0,0,11,1,1,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0	//HT_POWER##
 500,0,0,2,0,0,1,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0	//GS_GLITTERING
-501,0,0,10,0,0,0,17:18:19:20:21,0,0,none,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0	//GS_FLING
-502,0,0,20,0,0,0,17:18:19:20:21,0,0,none,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0	//GS_TRIPLEACTION
-503,0,0,30,0,0,0,17:18:19:20:21,0,0,none,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0	//GS_BULLSEYE
-504,0,0,30,0,0,0,17:18:19:20:21,0,0,none,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0	//GS_MADNESSCANCEL
-505,0,0,15,0,0,0,17:18:19:20:21,0,0,none,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0	//GS_ADJUSTMENT
-506,0,0,30,0,0,0,17:18:19:20:21,0,0,none,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0	//GS_INCREASING
-507,0,0,7,0,0,0,17:18:19:20:21,0,0,none,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0	//GS_MAGICALBULLET
-508,0,0,10,0,0,0,17:18:19:20:21,3:5,1,none,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0	//GS_CRACKER
+501,0,0,10,0,0,0,99,0,0,none,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0	//GS_FLING
+502,0,0,20,0,0,0,99,99,1,none,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0	//GS_TRIPLEACTION
+503,0,0,30,0,0,0,99,99,1,none,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0	//GS_BULLSEYE
+504,0,0,30,0,0,0,99,0,0,none,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0	//GS_MADNESSCANCEL
+505,0,0,15,0,0,0,99,0,0,none,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0	//GS_ADJUSTMENT
+506,0,0,30,0,0,0,99,0,0,none,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0	//GS_INCREASING
+507,0,0,7,0,0,0,99,0,0,none,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0	//GS_MAGICALBULLET
+508,0,0,10,0,0,0,99,99,1,none,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0	//GS_CRACKER
 512,0,0,15:20:25:30:35:40:45:50:55:60,0,0,0,17:18,3,1,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0	//GS_TRACKING
 513,0,0,15:20:25:30:35,0,0,0,17:18,3,1,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0	//GS_DISARM
 514,0,0,11:12:13:14:15,0,0,0,17:18,3,1,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0	//GS_PIERCINGSHOT

+ 5 - 1
src/map/skill.c

@@ -11285,7 +11285,11 @@ int skill_readdb (void)
 		p = split[8];
 		for(j=0;j<32;j++){
 			l = atoi(p);
-			if (l)
+			if (l==99) {
+				skill_db[i].ammo = 0xffffffff;
+				break;
+			}
+			else if (l)
 				skill_db[i].ammo |= 1<<l;
 			p=strchr(p,':');
 			if(!p)