summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorskotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec>2006-05-03 00:33:37 +0000
committerskotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec>2006-05-03 00:33:37 +0000
commitc6b4414211979c7607110293f1d0f34b7c1ade5e (patch)
tree3b6bbeaab86112ae04effd5379a11f6a843cbafc
parent6e83d85081e03ba8d3af7dbee836f2ea4760cf12 (diff)
downloadhercules-c6b4414211979c7607110293f1d0f34b7c1ade5e.tar.gz
hercules-c6b4414211979c7607110293f1d0f34b7c1ade5e.tar.bz2
hercules-c6b4414211979c7607110293f1d0f34b7c1ade5e.tar.xz
hercules-c6b4414211979c7607110293f1d0f34b7c1ade5e.zip
- Implemented desperado as explained by Rockman-EXE.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6454 54d463be-8e91-2dee-dedb-b68131a5f0ec
-rw-r--r--Changelog-Trunk.txt3
-rw-r--r--db/skill_cast_db.txt2
-rw-r--r--db/skill_db.txt2
-rw-r--r--db/skill_unit_db.txt2
-rw-r--r--src/map/skill.c11
-rw-r--r--src/map/skill.h6
6 files changed, 16 insertions, 10 deletions
diff --git a/Changelog-Trunk.txt b/Changelog-Trunk.txt
index 2eefd8e49..eaac28d00 100644
--- a/Changelog-Trunk.txt
+++ b/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/05/02
+ * Implemented desperado as explained by Rockman-EXE. The skill-effect is
+ not showing up though, I'll need some logged packets to see what's missing.
+ [Skotlex]
* Removed the unit_can_move checks in skill cast-end, they should be
performed in skill_check_require when the skill's state is move_enabled.
[Skotlex]
diff --git a/db/skill_cast_db.txt b/db/skill_cast_db.txt
index d81d50c9f..535d06db7 100644
--- a/db/skill_cast_db.txt
+++ b/db/skill_cast_db.txt
@@ -839,7 +839,7 @@
//-- GS_RAPIDSHOWER
515,0,1000,0,0,0
//-- GS_DESPERADO
-516,0,1000,0,0,0
+516,0,1000,1000,1000,0
//-- GS_GATLINGFEVER
517,0,1000,0,30000:45000:60000:75000:90000:105000:120000:135000:150000:160000,0
//-- GS_DUST
diff --git a/db/skill_db.txt b/db/skill_db.txt
index a17adea55..44f9c6900 100644
--- a/db/skill_db.txt
+++ b/db/skill_db.txt
@@ -536,7 +536,7 @@
513,-3,6,1,0,0,0,5,1,no,0,0,0,weapon,0 //GS_DISARM#Disarm#
514,3,6,1,0,0,0,5,1,no,0,0,0,weapon,0 //GS_PIERCINGSHOT#Piercing Shot#
515,3,8,1,0,0,0,10,5,no,0,0,0,weapon,0 //GS_RAPIDSHOWER#Rapid Shower#
-516,-5,8,4,0,2,2,10,-10,no,0,0,0,weapon,0 //GS_DESPERADO#Desperado#
+516,-5,8,4,0,2,2,10,1,no,0,0,0,weapon,0 //GS_DESPERADO#Desperado#
517,0,6,4,0,1,0,10,1,no,0,0,0,weapon,0 //GS_GATLINGFEVER#Gatling Fever#
518,-3,6,1,0,0,0,10,1,no,0,0,0,weapon,0 //GS_DUST#Dust#
519,3,6,1,0,0,0,10,1,no,0,0,0,weapon,0 //GS_FULLBUSTER#Full Buster#
diff --git a/db/skill_unit_db.txt b/db/skill_unit_db.txt
index 9614505cb..0f2bdb651 100644
--- a/db/skill_unit_db.txt
+++ b/db/skill_unit_db.txt
@@ -86,7 +86,7 @@
430,0x86, , 0, 1, 500,enemy, 0x000 //SG_STAR_WARM
484,0xb8, , 2, 0,1000,enemy, 0x808 //HW_GRAVITATION
488,0xb9, , 3, 0, -1,all, 0x100 //CG_HERMODE
-516,0xbc, , 0, 3,1000,enemy,0x000,GS_DESPERADO#デスペラード
+516,0xba, , 0, 3, 100,enemy,0x000,GS_DESPERADO#デスペラード
521,0xbd, , 0, 1,1000,enemy,0x006,GS_GROUNDDRIFT#グラウンドドリフト
535,0x86, , 0, 2,2000,enemy,0x008,NJ_KAENSIN#火炎陣#
536,0x86, , 0, 2, 300,enemy,0x008,NJ_BAKUENRYU#爆炎龍#
diff --git a/src/map/skill.c b/src/map/skill.c
index 162f47fd7..751f576d8 100644
--- a/src/map/skill.c
+++ b/src/map/skill.c
@@ -1932,7 +1932,6 @@ int skill_attack( int attack_type, struct block_list* src, struct block_list *ds
case SM_MAGNUM:
case AS_SPLASHER:
case ASC_METEORASSAULT:
- case GS_DESPERADO:
case GS_SPREADATTACK:
dmg.dmotion = clif_skill_damage(dsrc,bl,tick,dmg.amotion,dmg.dmotion, damage, dmg.div_, skillid, -1, 5);
break;
@@ -3205,8 +3204,8 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, in
case CR_GRANDCROSS:
case NPC_GRANDDARKNESS:
//Until they're at right position - gs_ground- [Vicious]
+ case GS_DESPERADO:
case NJ_KAENSIN: /*火炎陣*/
- case GS_DESPERADO: /*デスペラード*/
case NJ_HYOUSYOURAKU:
case NJ_RAIGEKISAI:
return skill_castend_pos2(src,src->x,src->y,skillid,skilllv,tick,0);
@@ -3968,7 +3967,6 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, in
break;
case ASC_METEORASSAULT: /* ?テオアサルト */
- case GS_DESPERADO:
case GS_SPREADATTACK:
clif_skill_nodamage(src,bl,skillid,skilllv,1);
map_foreachinrange(skill_area_sub, src,
@@ -5976,6 +5974,7 @@ int skill_castend_pos2( struct block_list *src, int x,int y,int skillid,int skil
case WE_CALLPARENT:
case WE_CALLBABY:
case AC_SHOWER: //Ground-placed skill implementation.
+ case GS_DESPERADO:
skill_unitsetting(src,skillid,skilllv,x,y,0);
break;
@@ -6154,7 +6153,6 @@ int skill_castend_pos2( struct block_list *src, int x,int y,int skillid,int skil
break;
//Until they're at right position - gs_unit- [Vicious]
- case GS_DESPERADO: /* デスペラード*/
case GS_GROUNDDRIFT: /* グラウンドドリフト*/
case NJ_KAENSIN: /* 火炎陣*/
case NJ_BAKUENRYU: /* 爆炎龍*/
@@ -6871,6 +6869,11 @@ int skill_unit_onplace_timer(struct skill_unit *src,struct block_list *bl,unsign
skill_attack(skill_get_type(sg->skill_id),ss,&src->bl,bl,sg->skill_id,sg->skill_lv,tick,0);
}
break;
+ case UNT_DESPERADO:
+ if (!(rand()%10)) //Has a low chance of connecting. [Skotlex]
+ skill_attack(BF_WEAPON,ss,&src->bl,bl,sg->skill_id,sg->skill_lv,tick,0);
+ break;
+
case UNT_FIREPILLAR_WAITING:
skill_unitsetting(ss,sg->skill_id,sg->skill_lv,src->bl.x,src->bl.y,1);
skill_delunit(src);
diff --git a/src/map/skill.h b/src/map/skill.h
index e57aba0be..0c1777699 100644
--- a/src/map/skill.h
+++ b/src/map/skill.h
@@ -931,10 +931,10 @@ enum {
UNT_SPIDERWEB,
UNT_GRAVITATION,
UNT_HERMODE,
-
- UNT_KAENSIN,
+ UNT_DESPERADO,
UNT_SUITON,
-
+ UNT_TATAMIGAESHI,
+ UNT_KAENSIN,
};
#endif