Browse Source

Fixed bugreport:5681 Sorcerer Striking may now only be cast on self or party members, SP upkeep updated.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@16058 54d463be-8e91-2dee-dedb-b68131a5f0ec
shennetsind 13 years ago
parent
commit
0801d23cf2
2 changed files with 6 additions and 1 deletions
  1. 5 1
      src/map/skill.c
  2. 1 0
      src/map/status.c

+ 5 - 1
src/map/skill.c

@@ -5137,7 +5137,11 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, in
 		if (sd) {
 		if (sd) {
 			int bonus = 25 + 10 * skilllv;
 			int bonus = 25 + 10 * skilllv;
 			bonus += (pc_checkskill(sd, SA_FLAMELAUNCHER)+pc_checkskill(sd, SA_FROSTWEAPON)+pc_checkskill(sd, SA_LIGHTNINGLOADER)+pc_checkskill(sd, SA_SEISMICWEAPON))*5;
 			bonus += (pc_checkskill(sd, SA_FLAMELAUNCHER)+pc_checkskill(sd, SA_FROSTWEAPON)+pc_checkskill(sd, SA_LIGHTNINGLOADER)+pc_checkskill(sd, SA_SEISMICWEAPON))*5;
-			clif_skill_nodamage( src, bl, skillid, skilllv, sc_start2(bl, type, 100, skilllv, bonus, skill_get_time(skillid,skilllv)) );
+			clif_skill_nodamage( src, bl, skillid, skilllv,
+								battle_check_target(src,bl,BCT_PARTY) ?
+								sc_start2(bl, type, 100, skilllv, bonus, skill_get_time(skillid,skilllv)) :
+								0
+				);
 		}
 		}
 		break;			
 		break;			
 			
 			

+ 1 - 0
src/map/status.c

@@ -7543,6 +7543,7 @@ int status_change_start(struct block_list* bl,enum sc_type type,int rate,int val
 			status_change_end(bl, SC_CRYSTALIZE, INVALID_TIMER);
 			status_change_end(bl, SC_CRYSTALIZE, INVALID_TIMER);
 			break;
 			break;
 		case SC_STRIKING:
 		case SC_STRIKING:
+			val1 = 6 - val1;//spcost = 6 - level (lvl1:5 ... lvl 5: 1)
 			val4 = tick / 1000;
 			val4 = tick / 1000;
 			tick_time = 1000; // [GodLesZ] tick time
 			tick_time = 1000; // [GodLesZ] tick time
 			break;
 			break;