Removed useless sd check
This commit is contained in:
parent
2aa0335165
commit
0a9e1cd977
@ -2956,7 +2956,7 @@ static bool is_attack_critical(struct Damage* wd, struct block_list *src, struct
|
||||
return false;
|
||||
case SH_CHUL_HO_SONIC_CLAW:
|
||||
case SH_HOGOGONG_STRIKE:
|
||||
if (!(sd && pc_checkskill(sd, SH_COMMUNE_WITH_CHUL_HO)) || !(sc && sc->getSCE(SC_TEMPORARY_COMMUNION)))
|
||||
if (pc_checkskill(sd, SH_COMMUNE_WITH_CHUL_HO) == 0 || !(sc && sc->getSCE(SC_TEMPORARY_COMMUNION)))
|
||||
return false;
|
||||
break;
|
||||
}
|
||||
@ -5751,45 +5751,39 @@ static int battle_calc_attack_skill_ratio(struct Damage* wd, struct block_list *
|
||||
case ABR_INFINITY_BUSTER:// Need official formula.
|
||||
skillratio += -100 + 50000;
|
||||
break;
|
||||
case SH_CHUL_HO_SONIC_CLAW: {
|
||||
int tmp_val = (sd ? pc_checkskill(sd, SH_MYSTICAL_CREATURE_MASTERY) : 0);
|
||||
case SH_CHUL_HO_SONIC_CLAW:
|
||||
skillratio += -100 + 850 + 1650 * skill_lv;
|
||||
skillratio += 50 * tmp_val;
|
||||
skillratio += 50 * pc_checkskill(sd, SH_MYSTICAL_CREATURE_MASTERY);
|
||||
skillratio += 5 * sstatus->pow;
|
||||
|
||||
if ((sd && pc_checkskill(sd, SH_COMMUNE_WITH_CHUL_HO)) || (sc && sc->getSCE(SC_TEMPORARY_COMMUNION))) {
|
||||
if (pc_checkskill(sd, SH_COMMUNE_WITH_CHUL_HO) > 0 || (sc && sc->getSCE(SC_TEMPORARY_COMMUNION))) {
|
||||
skillratio += 100 + 400 * skill_lv;
|
||||
skillratio += 50 * tmp_val;
|
||||
skillratio += 50 * pc_checkskill(sd, SH_MYSTICAL_CREATURE_MASTERY);
|
||||
}
|
||||
RE_LVL_DMOD(100);
|
||||
break;
|
||||
}
|
||||
case SH_HOWLING_OF_CHUL_HO: {
|
||||
int tmp_val = (sd ? pc_checkskill(sd, SH_MYSTICAL_CREATURE_MASTERY) : 0);
|
||||
case SH_HOWLING_OF_CHUL_HO:
|
||||
skillratio += -100 + 600 + 1050 * skill_lv;
|
||||
skillratio += 50 * tmp_val;
|
||||
skillratio += 50 * pc_checkskill(sd, SH_MYSTICAL_CREATURE_MASTERY);
|
||||
skillratio += 5 * sstatus->pow;
|
||||
|
||||
if ((sd && pc_checkskill(sd, SH_COMMUNE_WITH_CHUL_HO)) || (sc && sc->getSCE(SC_TEMPORARY_COMMUNION))) {
|
||||
if (pc_checkskill(sd, SH_COMMUNE_WITH_CHUL_HO) > 0 || (sc && sc->getSCE(SC_TEMPORARY_COMMUNION))) {
|
||||
skillratio += 100 + 100 * skill_lv;
|
||||
skillratio += 50 * tmp_val;
|
||||
skillratio += 50 * pc_checkskill(sd, SH_MYSTICAL_CREATURE_MASTERY);
|
||||
}
|
||||
RE_LVL_DMOD(100);
|
||||
break;
|
||||
}
|
||||
case SH_HOGOGONG_STRIKE: {
|
||||
int tmp_val = (sd ? pc_checkskill(sd, SH_MYSTICAL_CREATURE_MASTERY) : 0);
|
||||
case SH_HOGOGONG_STRIKE:
|
||||
skillratio += -100 + 180 + 200 * skill_lv;
|
||||
skillratio += 10 * tmp_val;
|
||||
skillratio += 10 * pc_checkskill(sd, SH_MYSTICAL_CREATURE_MASTERY);
|
||||
skillratio += 5 * sstatus->pow;
|
||||
|
||||
if ((sd && pc_checkskill(sd, SH_COMMUNE_WITH_CHUL_HO)) || (sc && sc->getSCE(SC_TEMPORARY_COMMUNION))) {
|
||||
if (pc_checkskill(sd, SH_COMMUNE_WITH_CHUL_HO) > 0 || (sc && sc->getSCE(SC_TEMPORARY_COMMUNION))) {
|
||||
skillratio += 70 + 150 * skill_lv;
|
||||
skillratio += 10 * tmp_val;
|
||||
skillratio += 10 * pc_checkskill(sd, SH_MYSTICAL_CREATURE_MASTERY);
|
||||
}
|
||||
RE_LVL_DMOD(100);
|
||||
break;
|
||||
}
|
||||
}
|
||||
return skillratio;
|
||||
}
|
||||
@ -8173,32 +8167,28 @@ struct Damage battle_calc_magic_attack(struct block_list *src,struct block_list
|
||||
case NPC_RAINOFMETEOR:
|
||||
skillratio += 350; // unknown ratio
|
||||
break;
|
||||
case SH_HYUN_ROKS_BREEZE: {
|
||||
int tmp_val = (sd ? pc_checkskill(sd, SH_MYSTICAL_CREATURE_MASTERY) : 0);
|
||||
case SH_HYUN_ROKS_BREEZE:
|
||||
skillratio += -100 + 650 + 750 * skill_lv;
|
||||
skillratio += 20 * tmp_val;
|
||||
skillratio += 20 * pc_checkskill(sd, SH_MYSTICAL_CREATURE_MASTERY);
|
||||
skillratio += 5 * sstatus->spl;
|
||||
|
||||
if ((sd && pc_checkskill(sd, SH_COMMUNE_WITH_HYUN_ROK)) || (sc && sc->getSCE(SC_TEMPORARY_COMMUNION))) {
|
||||
if (pc_checkskill(sd, SH_COMMUNE_WITH_HYUN_ROK) > 0 || (sc && sc->getSCE(SC_TEMPORARY_COMMUNION))) {
|
||||
skillratio += 100 + 200 * skill_lv;
|
||||
skillratio += 20 * tmp_val;
|
||||
skillratio += 20 * pc_checkskill(sd, SH_MYSTICAL_CREATURE_MASTERY);
|
||||
}
|
||||
RE_LVL_DMOD(100);
|
||||
break;
|
||||
}
|
||||
case SH_HYUN_ROK_CANNON: {
|
||||
int tmp_val = (sd ? pc_checkskill(sd, SH_MYSTICAL_CREATURE_MASTERY) : 0);
|
||||
case SH_HYUN_ROK_CANNON:
|
||||
skillratio += -100 + 1050 + 1550 * skill_lv;
|
||||
skillratio += 50 * tmp_val;
|
||||
skillratio += 50 * pc_checkskill(sd, SH_MYSTICAL_CREATURE_MASTERY);
|
||||
skillratio += 5 * sstatus->spl;
|
||||
|
||||
if ((sd && pc_checkskill(sd, SH_COMMUNE_WITH_HYUN_ROK)) || (sc && sc->getSCE(SC_TEMPORARY_COMMUNION))) {
|
||||
if (pc_checkskill(sd, SH_COMMUNE_WITH_HYUN_ROK) > 0 || (sc && sc->getSCE(SC_TEMPORARY_COMMUNION))) {
|
||||
skillratio += 300 * skill_lv;
|
||||
skillratio += 25 * tmp_val;
|
||||
skillratio += 25 * pc_checkskill(sd, SH_MYSTICAL_CREATURE_MASTERY);
|
||||
}
|
||||
RE_LVL_DMOD(100);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (sc) {// Insignia's increases the damage of offensive magic by a fixed percentage depending on the element.
|
||||
|
||||
@ -7145,10 +7145,11 @@ int pc_get_skillcooldown(map_session_data *sd, uint16 skill_id, uint16 skill_lv)
|
||||
*------------------------------------------*/
|
||||
uint8 pc_checkskill(map_session_data *sd, uint16 skill_id)
|
||||
{
|
||||
uint16 idx = 0;
|
||||
if (sd == NULL)
|
||||
if (sd == nullptr)
|
||||
return 0;
|
||||
|
||||
uint16 idx = 0;
|
||||
|
||||
#ifdef RENEWAL
|
||||
if ((idx = skill_get_index(skill_id)) == 0) {
|
||||
#else
|
||||
|
||||
@ -12804,7 +12804,7 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, ui
|
||||
|
||||
case SH_HOWLING_OF_CHUL_HO:
|
||||
i = skill_get_splash(skill_id, skill_lv);
|
||||
if ((sd && pc_checkskill(sd, SH_COMMUNE_WITH_CHUL_HO)) || (sc && sc->getSCE(SC_TEMPORARY_COMMUNION)))
|
||||
if (pc_checkskill(sd, SH_COMMUNE_WITH_CHUL_HO) > 0 || (sc && sc->getSCE(SC_TEMPORARY_COMMUNION)))
|
||||
i += 1;
|
||||
skill_area_temp[0] = 0;
|
||||
skill_area_temp[1] = bl->id;
|
||||
@ -12814,7 +12814,7 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, ui
|
||||
break;
|
||||
case SH_HOGOGONG_STRIKE:
|
||||
i = skill_get_splash(skill_id, skill_lv);
|
||||
if( (sd && pc_checkskill(sd, SH_COMMUNE_WITH_CHUL_HO)) || (sc && sc->getSCE(SC_TEMPORARY_COMMUNION)))
|
||||
if( pc_checkskill(sd, SH_COMMUNE_WITH_CHUL_HO) > 0 || (sc && sc->getSCE(SC_TEMPORARY_COMMUNION)))
|
||||
status_heal(src, 0, 0, 1, 0);
|
||||
skill_area_temp[0] = 0;
|
||||
skill_area_temp[1] = bl->id;
|
||||
@ -12825,13 +12825,11 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, ui
|
||||
case SH_KI_SUL_WATER_SPRAYING:
|
||||
if (flag & 1) {
|
||||
int heal = 500 * skill_lv + status_get_int(src) * 5;
|
||||
if (sd)
|
||||
heal += pc_checkskill(sd, SH_MYSTICAL_CREATURE_MASTERY)*100;
|
||||
if ((sd && pc_checkskill(sd, SH_COMMUNE_WITH_KI_SUL)) || (sc && sc->getSCE(SC_TEMPORARY_COMMUNION)))
|
||||
{
|
||||
heal += pc_checkskill(sd, SH_MYSTICAL_CREATURE_MASTERY)*100;
|
||||
|
||||
if (pc_checkskill(sd, SH_COMMUNE_WITH_KI_SUL) > 0 || (sc && sc->getSCE(SC_TEMPORARY_COMMUNION))) {
|
||||
heal += 250 * skill_lv;
|
||||
if (sd)
|
||||
heal += pc_checkskill(sd, SH_MYSTICAL_CREATURE_MASTERY) * 50;
|
||||
heal += pc_checkskill(sd, SH_MYSTICAL_CREATURE_MASTERY) * 50;
|
||||
}
|
||||
heal = heal * (100 + status_get_crt(src)) * status_get_lv(src) / 10000;
|
||||
status_heal(bl, heal, 0, 0, 0);
|
||||
@ -12839,7 +12837,7 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, ui
|
||||
}
|
||||
else {
|
||||
i = skill_get_splash(skill_id, skill_lv);
|
||||
if ((sd && pc_checkskill(sd, SH_COMMUNE_WITH_KI_SUL)) || (sc && sc->getSCE(SC_TEMPORARY_COMMUNION)))
|
||||
if (pc_checkskill(sd, SH_COMMUNE_WITH_KI_SUL) > 0 || (sc && sc->getSCE(SC_TEMPORARY_COMMUNION)))
|
||||
i += 2;
|
||||
|
||||
clif_skill_nodamage(src, bl, skill_id, skill_lv, 1);
|
||||
@ -12850,14 +12848,14 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, ui
|
||||
case SH_SANDY_FESTIVAL_OF_KI_SUL:
|
||||
if (flag & 1) {
|
||||
int time = skill_get_time(skill_id, skill_lv);
|
||||
if ((sd && pc_checkskill(sd, SH_COMMUNE_WITH_KI_SUL)) || (sc && sc->getSCE(SC_TEMPORARY_COMMUNION)))
|
||||
if (pc_checkskill(sd, SH_COMMUNE_WITH_KI_SUL) > 0 || (sc && sc->getSCE(SC_TEMPORARY_COMMUNION)))
|
||||
time *= 2;
|
||||
sc_start(src, bl, type, 100, skill_lv, time);
|
||||
clif_skill_nodamage(src, bl, skill_id, skill_lv, 1);
|
||||
}
|
||||
else {
|
||||
i = skill_get_splash(skill_id, skill_lv);
|
||||
if ((sd && pc_checkskill(sd, SH_COMMUNE_WITH_KI_SUL)) || (sc && sc->getSCE(SC_TEMPORARY_COMMUNION)))
|
||||
if (pc_checkskill(sd, SH_COMMUNE_WITH_KI_SUL) > 0 || (sc && sc->getSCE(SC_TEMPORARY_COMMUNION)))
|
||||
i += 2;
|
||||
|
||||
map_foreachinrange(skill_area_sub, bl, i, BL_CHAR, src, skill_id, skill_lv, tick, flag | BCT_PARTY | SD_SPLASH | 1, skill_castend_nodamage_id);
|
||||
@ -12866,7 +12864,7 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, ui
|
||||
case SH_KI_SUL_RAMPAGE:
|
||||
if (flag & 1) {
|
||||
if (!(src == bl)) {
|
||||
if ((sd && pc_checkskill(sd, SH_COMMUNE_WITH_KI_SUL)) || (sc && sc->getSCE(SC_TEMPORARY_COMMUNION)))
|
||||
if (pc_checkskill(sd, SH_COMMUNE_WITH_KI_SUL) > 0 || (sc && sc->getSCE(SC_TEMPORARY_COMMUNION)))
|
||||
status_heal(bl, 0, 0, 4, 0);
|
||||
else
|
||||
status_heal(bl, 0, 0, 2, 0);
|
||||
@ -12880,7 +12878,7 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, ui
|
||||
for(i = SC_COLORS_OF_HYUN_ROK_1; i < SC_COLORS_OF_HYUN_ROK_1+6; i++)
|
||||
status_change_end(src, (sc_type)i);
|
||||
if (skill_lv < 7) {
|
||||
if ((sd && pc_checkskill(sd, SH_COMMUNE_WITH_HYUN_ROK)) || (sc && sc->getSCE(SC_TEMPORARY_COMMUNION)))
|
||||
if (pc_checkskill(sd, SH_COMMUNE_WITH_HYUN_ROK) > 0 || (sc && sc->getSCE(SC_TEMPORARY_COMMUNION)))
|
||||
sc_start(src, bl, type, 100, skill_lv, skill_get_time(skill_id, skill_lv));
|
||||
sc_start(src, bl, (sc_type)(SC_COLORS_OF_HYUN_ROK_1+skill_lv-1), 100, skill_lv, skill_get_time(skill_id, skill_lv));
|
||||
}
|
||||
@ -13281,7 +13279,7 @@ TIMER_FUNC(skill_castend_id){
|
||||
}
|
||||
break;
|
||||
case SH_HYUN_ROK_CANNON:
|
||||
if (pc_checkskill(sd, SH_COMMUNE_WITH_HYUN_ROK) || (sc && sc->getSCE(SC_TEMPORARY_COMMUNION)))
|
||||
if (pc_checkskill(sd, SH_COMMUNE_WITH_HYUN_ROK) > 0 || (sc && sc->getSCE(SC_TEMPORARY_COMMUNION)))
|
||||
add_ap += 1;
|
||||
break;
|
||||
}
|
||||
@ -17914,7 +17912,7 @@ bool skill_check_condition_castbegin(map_session_data* sd, uint16 skill_id, uint
|
||||
return false;
|
||||
break;
|
||||
case SH_TEMPORARY_COMMUNION:
|
||||
if (sd && !pc_checkskill(sd, SH_COMMUNE_WITH_CHUL_HO) && !pc_checkskill(sd, SH_COMMUNE_WITH_HYUN_ROK) && !pc_checkskill(sd, SH_COMMUNE_WITH_KI_SUL)) {
|
||||
if (sd && pc_checkskill(sd, SH_COMMUNE_WITH_CHUL_HO) == 0 && pc_checkskill(sd, SH_COMMUNE_WITH_HYUN_ROK) == 0 && pc_checkskill(sd, SH_COMMUNE_WITH_KI_SUL) == 0) {
|
||||
clif_skill_fail(sd,skill_id,USESKILL_FAIL_CONDITION,0);
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -14859,7 +14859,7 @@ TIMER_FUNC(status_change_timer){
|
||||
if (sce->val4-- > 0) {
|
||||
int i = skill_get_splash(SH_KI_SUL_RAMPAGE, sce->val1);
|
||||
int lv = sce->val1;
|
||||
if ((sd && pc_checkskill(sd, SH_COMMUNE_WITH_KI_SUL)) || (sc && sc->getSCE(SC_TEMPORARY_COMMUNION))) {
|
||||
if (pc_checkskill(sd, SH_COMMUNE_WITH_KI_SUL) > 0 || (sc && sc->getSCE(SC_TEMPORARY_COMMUNION))) {
|
||||
i += 2;
|
||||
lv += skill_get_max(SH_KI_SUL_RAMPAGE);
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user