Pārlūkot izejas kodu

Fixes Sharp Shooting ammo consumption (#5883)

* Follow up to 9616362.
* Fixes Sharp Shooting not consuming an arrow on usage.
Aleos 4 gadi atpakaļ
vecāks
revīzija
d47be50f12
2 mainītis faili ar 3 papildinājumiem un 3 dzēšanām
  1. 1 1
      src/map/battle.cpp
  2. 2 2
      src/map/skill.cpp

+ 1 - 1
src/map/battle.cpp

@@ -4122,7 +4122,7 @@ static int battle_calc_attack_skill_ratio(struct Damage* wd, struct block_list *
 			break;
 		case SN_SHARPSHOOTING:
 			if (src->type == BL_MOB) { // TODO: Did these formulas change in the renewal balancing?
-				if (wd->miscflag & 1) // Splash damage bonus
+				if (wd->miscflag & 2) // Splash damage bonus
 					skillratio += -100 + 140 * skill_lv;
 				else
 					skillratio += 100 + 50 * skill_lv;

+ 2 - 2
src/map/skill.cpp

@@ -4933,7 +4933,7 @@ int skill_castend_damage_id (struct block_list* src, struct block_list *bl, uint
 		break;
 
 	case SN_SHARPSHOOTING:
-		flag |= 1; // Flag for specific mob damage formula
+		flag |= 2; // Flag for specific mob damage formula
 	case MA_SHARPSHOOTING:
 	case NJ_KAMAITACHI:
 	case NPC_DARKPIERCING:
@@ -4949,7 +4949,7 @@ int skill_castend_damage_id (struct block_list* src, struct block_list *bl, uint
 			   skill_get_splash(skill_id, skill_lv), skill_get_maxcount(skill_id, skill_lv), 0, splash_target(src),
 			   skill_get_type(skill_id), src, src, skill_id, skill_lv, tick, flag, BCT_ENEMY))) {
 			   	if (skill_id == SN_SHARPSHOOTING)
-			   		flag &= ~1; // Only targets in the splash area are affected
+			   		flag &= ~2; // Only targets in the splash area are affected
 
 				//These skills hit at least the target if the AoE doesn't hit
 				skill_attack(skill_get_type(skill_id), src, src, bl, skill_id, skill_lv, tick, flag);