Updates Monster Transform statuses (#5930)
* Fixes #5449. * Updates several Monster Transform items with their updated bonuses. Thanks to @Balferian! Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
This commit is contained in:
parent
202945ab37
commit
58f2d2173f
@ -3312,7 +3312,7 @@ Body:
|
||||
Weight: 30
|
||||
Script: |
|
||||
itemheal 45,0;
|
||||
transform 1507,600000,SC_MTF_MHP,1000;
|
||||
transform 1507,600000,SC_MTF_MHP,20;
|
||||
specialeffect2 EF_CLOAKING;
|
||||
showscript "Trans-Form-!! Bloody Murderer Fo-rm!!";
|
||||
- Id: 11593
|
||||
@ -3323,7 +3323,7 @@ Body:
|
||||
Weight: 30
|
||||
Script: |
|
||||
itemheal 45,0;
|
||||
transform 1102,600000,SC_MTF_MSP,100;
|
||||
transform 1102,600000,SC_MTF_MSP,20;
|
||||
specialeffect2 EF_CLOAKING;
|
||||
showscript "Trans-Form-!!! Bathory Fo-rm!!";
|
||||
- Id: 11594
|
||||
@ -3334,7 +3334,7 @@ Body:
|
||||
Weight: 30
|
||||
Script: |
|
||||
itemheal 45,0;
|
||||
transform 1130,600000,SC_MTF_PUMPKIN,2000;
|
||||
transform 1130,600000,SC_MTF_PUMPKIN,2000,100;
|
||||
specialeffect2 EF_CLOAKING;
|
||||
showscript "Trans-Form-!! Jack Fo-rm!!";
|
||||
- Id: 11595
|
||||
@ -11572,7 +11572,7 @@ Body:
|
||||
NoMail: true
|
||||
NoAuction: true
|
||||
Script: |
|
||||
transform 1002,1200000,SC_MTF_CRIDAMAGE,25;
|
||||
transform 1002,1200000,SC_MTF_CRIDAMAGE,5;
|
||||
showscript "Traaaansformation-!! Poring form!!";
|
||||
- Id: 12664
|
||||
AegisName: Trans_Scroll_Golem
|
||||
|
@ -99,6 +99,7 @@ enum item_itemid : t_itemid
|
||||
ITEMID_FRAGMENT_OF_CRYSTAL = 7321,
|
||||
ITEMID_SKULL_ = 7420,
|
||||
ITEMID_TRAP_ALLOY = 7940,
|
||||
ITEMID_COOKIE_BAT = 11605,
|
||||
ITEMID_MERCENARY_RED_POTION = 12184,
|
||||
ITEMID_MERCENARY_BLUE_POTION = 12185,
|
||||
ITEMID_GIANT_FLY_WING = 12212,
|
||||
|
@ -9228,8 +9228,12 @@ int pc_itemheal(struct map_session_data *sd, t_itemid itemid, int hp, int sp)
|
||||
if (sd->sc.data[SC_INCHEALRATE])
|
||||
bonus += bonus * sd->sc.data[SC_INCHEALRATE]->val1 / 100;
|
||||
// 2014 Halloween Event : Pumpkin Bonus
|
||||
if (sd->sc.data[SC_MTF_PUMPKIN] && itemid == ITEMID_PUMPKIN)
|
||||
bonus += bonus * sd->sc.data[SC_MTF_PUMPKIN]->val1 / 100;
|
||||
if (sd->sc.data[SC_MTF_PUMPKIN]) {
|
||||
if (itemid == ITEMID_PUMPKIN)
|
||||
bonus += bonus * sd->sc.data[SC_MTF_PUMPKIN]->val1 / 100;
|
||||
else if (itemid == ITEMID_COOKIE_BAT)
|
||||
bonus += sd->sc.data[SC_MTF_PUMPKIN]->val2;
|
||||
}
|
||||
|
||||
tmp = hp * bonus / 100; // Overflow check
|
||||
if (bonus != 100 && tmp > hp)
|
||||
|
@ -1861,7 +1861,7 @@ void initChangeTables(void)
|
||||
StatusChangeFlagTable[SC_MTF_ASPD2] |= SCB_ASPD|SCB_HIT;
|
||||
StatusChangeFlagTable[SC_MTF_MATK2] |= SCB_MATK;
|
||||
StatusChangeFlagTable[SC_2011RWC_SCROLL] |= SCB_BATK|SCB_MATK|SCB_STR|SCB_AGI|SCB_VIT|SCB_INT|SCB_DEX|SCB_LUK;
|
||||
StatusChangeFlagTable[SC_MTF_HITFLEE] |= SCB_HIT|SCB_FLEE;
|
||||
StatusChangeFlagTable[SC_MTF_HITFLEE] |= SCB_HIT|SCB_FLEE|SCB_CRI;
|
||||
StatusChangeFlagTable[SC_MTF_MHP] |= SCB_MAXHP;
|
||||
StatusChangeFlagTable[SC_MTF_MSP] |= SCB_MAXSP;
|
||||
|
||||
@ -3700,8 +3700,6 @@ static int status_get_hpbonus(struct block_list *bl, enum e_status_bonus type) {
|
||||
bonus += sc->data[SC_PROMOTE_HEALTH_RESERCH]->val3;
|
||||
if(sc->data[SC_SOLID_SKIN_OPTION])
|
||||
bonus += 2000;
|
||||
if(sc->data[SC_MTF_MHP])
|
||||
bonus += sc->data[SC_MTF_MHP]->val1;
|
||||
if(sc->data[SC_MARIONETTE])
|
||||
bonus -= 1000;
|
||||
if(sc->data[SC_SWORDCLAN])
|
||||
@ -3769,6 +3767,8 @@ static int status_get_hpbonus(struct block_list *bl, enum e_status_bonus type) {
|
||||
bonus += sc->data[SC_LUNARSTANCE]->val2;
|
||||
if (sc->data[SC_LUXANIMA])
|
||||
bonus += sc->data[SC_LUXANIMA]->val3;
|
||||
if (sc->data[SC_MTF_MHP])
|
||||
bonus += sc->data[SC_MTF_MHP]->val1;
|
||||
|
||||
//Decreasing
|
||||
if (sc->data[SC_VENOMBLEED] && sc->data[SC_VENOMBLEED]->val3 == 1)
|
||||
@ -3865,8 +3865,6 @@ static int status_get_spbonus(struct block_list *bl, enum e_status_bonus type) {
|
||||
bonus += sc->data[SC_INCMSP]->val1;
|
||||
if(sc->data[SC_EARTH_INSIGNIA] && sc->data[SC_EARTH_INSIGNIA]->val1 == 3)
|
||||
bonus += 50;
|
||||
if(sc->data[SC_MTF_MSP])
|
||||
bonus += sc->data[SC_MTF_MSP]->val1;
|
||||
if(sc->data[SC_SWORDCLAN])
|
||||
bonus += 10;
|
||||
if(sc->data[SC_ARCWANDCLAN])
|
||||
@ -3911,6 +3909,8 @@ static int status_get_spbonus(struct block_list *bl, enum e_status_bonus type) {
|
||||
bonus += sc->data[SC_MERC_SPUP]->val2;
|
||||
if (sc->data[SC_LUXANIMA])
|
||||
bonus += sc->data[SC_LUXANIMA]->val3;
|
||||
if (sc->data[SC_MTF_MSP])
|
||||
bonus += sc->data[SC_MTF_MSP]->val1;
|
||||
|
||||
//Decreasing
|
||||
if (sc->data[SC_MELODYOFSINK])
|
||||
@ -7137,6 +7137,8 @@ static signed short status_calc_critical(struct block_list *bl, struct status_ch
|
||||
critical += 10 * sc->data[SC_SOULSHADOW]->val3;
|
||||
if(sc->data[SC_BEYONDOFWARCRY])
|
||||
critical += sc->data[SC_BEYONDOFWARCRY]->val3;
|
||||
if (sc->data[SC_MTF_HITFLEE])
|
||||
critical += sc->data[SC_MTF_HITFLEE]->val1;
|
||||
|
||||
return (short)cap_value(critical,10,SHRT_MAX);
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user