Added missing Elemental Resist Potion icon

* Fixes #1898.
* Separated the SC_ARMOR_ELEMENT to each element (Water, Earth, Fire, Wind).
* Added the status icon for the respective element.
Thanks to @zackdreaver!
This commit is contained in:
aleos89
2017-02-02 12:19:04 -05:00
parent bb42b3183c
commit 84df1708ee
6 changed files with 57 additions and 19 deletions

View File

@@ -4681,10 +4681,10 @@
12115,Elemental_Water,Elemental Converter,11,2,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ itemskill "ITEM_ENCHANTARMS",2; },{},{}
12116,Elemental_Earth,Elemental Converter,11,2,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ itemskill "ITEM_ENCHANTARMS",3; },{},{}
12117,Elemental_Wind,Elemental Converter,11,2,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ itemskill "ITEM_ENCHANTARMS",5; },{},{}
12118,Resist_Fire,Fireproof Potion,2,2,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ sc_start4 SC_ARMOR_ELEMENT,1200000,-15,0,20,0; },{},{}
12119,Resist_Water,Coldproof Potion,2,2,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ sc_start4 SC_ARMOR_ELEMENT,1200000,20,0,0,-15; },{},{}
12120,Resist_Earth,Earthproof Potion,2,2,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ sc_start4 SC_ARMOR_ELEMENT,1200000,0,20,-15,0; },{},{}
12121,Resist_Wind,Thunderproof Potion,2,2,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ sc_start4 SC_ARMOR_ELEMENT,1200000,0,-15,0,20; },{},{}
12118,Resist_Fire,Fireproof Potion,2,2,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ sc_start4 SC_ARMOR_ELEMENT_FIRE,1200000,-15,0,20,0; },{},{}
12119,Resist_Water,Coldproof Potion,2,2,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ sc_start4 SC_ARMOR_ELEMENT_WATER,1200000,20,0,0,-15; },{},{}
12120,Resist_Earth,Earthproof Potion,2,2,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ sc_start4 SC_ARMOR_ELEMENT_EARTH,1200000,0,20,-15,0; },{},{}
12121,Resist_Wind,Thunderproof Potion,2,2,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ sc_start4 SC_ARMOR_ELEMENT_WIND,1200000,0,-15,0,20; },{},{}
12122,Sesame_Pastry,Sesame Pastry,2,2,,70,,,,,0xFFFFFFFF,7,2,,,,,,{ sc_start SC_HITFOOD,1200000,30; },{},{}
12123,Honey_Pastry,Honey Pastry,2,2,,70,,,,,0xFFFFFFFF,7,2,,,,,,{ sc_start SC_FLEEFOOD,1200000,30; },{},{}
12124,Rainbow_Cake,Rainbow Cake,2,2,,70,,,,,0xFFFFFFFF,7,2,,,,,,{ sc_start SC_BATKFOOD,1200000,10; sc_start SC_MATKFOOD,120000,10; },{},{}

View File

@@ -6252,10 +6252,10 @@
12115,Elemental_Water,Elemental Converter,11,2,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ itemskill "ITEM_ENCHANTARMS",2; },{},{}
12116,Elemental_Earth,Elemental Converter,11,2,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ itemskill "ITEM_ENCHANTARMS",3; },{},{}
12117,Elemental_Wind,Elemental Converter,11,2,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ itemskill "ITEM_ENCHANTARMS",5; },{},{}
12118,Resist_Fire,Fireproof Potion,2,2,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ sc_start4 SC_ARMOR_ELEMENT,1200000,-15,0,20,0; },{},{}
12119,Resist_Water,Coldproof Potion,2,2,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ sc_start4 SC_ARMOR_ELEMENT,1200000,20,0,0,-15; },{},{}
12120,Resist_Earth,Earthproof Potion,2,2,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ sc_start4 SC_ARMOR_ELEMENT,1200000,0,20,-15,0; },{},{}
12121,Resist_Wind,Thunderproof Potion,2,2,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ sc_start4 SC_ARMOR_ELEMENT,1200000,0,-15,0,20; },{},{}
12118,Resist_Fire,Fireproof Potion,2,2,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ sc_start4 SC_ARMOR_ELEMENT_FIRE,1200000,-15,0,20,0; },{},{}
12119,Resist_Water,Coldproof Potion,2,2,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ sc_start4 SC_ARMOR_ELEMENT_WATER,1200000,20,0,0,-15; },{},{}
12120,Resist_Earth,Earthproof Potion,2,2,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ sc_start4 SC_ARMOR_ELEMENT_EARTH,1200000,0,20,-15,0; },{},{}
12121,Resist_Wind,Thunderproof Potion,2,2,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ sc_start4 SC_ARMOR_ELEMENT_WIND,1200000,0,-15,0,20; },{},{}
12122,Sesame_Pastry,Sesame Pastry,2,2,,70,,,,,0xFFFFFFFF,63,2,,,,,,{ sc_start SC_HITFOOD,180000,30; },{},{}
12123,Honey_Pastry,Honey Pastry,2,2,,70,,,,,0xFFFFFFFF,63,2,,,,,,{ sc_start SC_FLEEFOOD,180000,30; },{},{}
12124,Rainbow_Cake,Rainbow Cake,2,2,,70,,,,,0xFFFFFFFF,63,2,,,,,,{ sc_start SC_BATKFOOD,60000,10; sc_start SC_MATKFOOD,60000,10; },{},{}

View File

@@ -876,7 +876,7 @@
export_constant(SC_VIOLENTGALE);
export_constant(SC_WATK_ELEMENT);
export_constant(SC_ARMOR);
export_constant(SC_ARMOR_ELEMENT);
export_constant(SC_ARMOR_ELEMENT_WATER);
export_constant(SC_NOCHAT);
export_constant(SC_BABY);
export_constant(SC_AURABLADE);
@@ -1439,6 +1439,9 @@
export_constant(SC_GEFFEN_MAGIC2);
export_constant(SC_GEFFEN_MAGIC3);
export_constant(SC_MAXPAIN);
export_constant(SC_ARMOR_ELEMENT_EARTH);
export_constant(SC_ARMOR_ELEMENT_FIRE);
export_constant(SC_ARMOR_ELEMENT_WIND);
#ifdef RENEWAL
export_constant(SC_EXTREMITYFIST2);
#endif

View File

@@ -7891,7 +7891,7 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, ui
case SC_MTF_ASPD2: case SC_MTF_RANGEATK2: case SC_MTF_MATK2:
case SC_2011RWC_SCROLL: case SC_JP_EVENT04: case SC_MTF_MHP:
case SC_MTF_MSP: case SC_MTF_PUMPKIN: case SC_MTF_HITFLEE:
case SC_ATTHASTE_CASH: case SC_ARMOR_ELEMENT: case SC_REUSE_REFRESH:
case SC_ATTHASTE_CASH: case SC_ARMOR_ELEMENT_WATER: case SC_REUSE_REFRESH:
case SC_REUSE_LIMIT_A: case SC_REUSE_LIMIT_B: case SC_REUSE_LIMIT_C:
case SC_REUSE_LIMIT_D: case SC_REUSE_LIMIT_E: case SC_REUSE_LIMIT_F:
case SC_REUSE_LIMIT_G: case SC_REUSE_LIMIT_H: case SC_REUSE_LIMIT_MTF:
@@ -7899,6 +7899,7 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, ui
case SC_REUSE_STORMBLAST: case SC_ALL_RIDING_REUSE_LIMIT:
case SC_SPRITEMABLE: case SC_BITESCAR: case SC_CRUSHSTRIKE:
case SC_QUEST_BUFF1: case SC_QUEST_BUFF2: case SC_QUEST_BUFF3:
case SC_ARMOR_ELEMENT_EARTH: case SC_ARMOR_ELEMENT_FIRE: case SC_ARMOR_ELEMENT_WIND:
// Clans
case SC_CLAN_INFO:
case SC_SWORDCLAN:

View File

@@ -1061,6 +1061,10 @@ void initChangeTables(void)
StatusIconChangeTable[SC_GVG_CURSE] = SI_GVG_CURSE;
StatusIconChangeTable[SC_GVG_SILENCE] = SI_GVG_SILENCE;
StatusIconChangeTable[SC_GVG_BLIND] = SI_GVG_BLIND;
StatusIconChangeTable[SC_ARMOR_ELEMENT_WATER] = SI_RESIST_PROPERTY_WATER;
StatusIconChangeTable[SC_ARMOR_ELEMENT_EARTH] = SI_RESIST_PROPERTY_EARTH;
StatusIconChangeTable[SC_ARMOR_ELEMENT_FIRE] = SI_RESIST_PROPERTY_FIRE;
StatusIconChangeTable[SC_ARMOR_ELEMENT_WIND] = SI_RESIST_PROPERTY_WIND;
// Costumes
StatusIconChangeTable[SC_MOONSTAR] = SI_MOONSTAR;
@@ -1154,7 +1158,10 @@ void initChangeTables(void)
StatusChangeFlagTable[SC_BATKFOOD] |= SCB_BATK;
StatusChangeFlagTable[SC_WATKFOOD] |= SCB_WATK;
StatusChangeFlagTable[SC_MATKFOOD] |= SCB_MATK;
StatusChangeFlagTable[SC_ARMOR_ELEMENT] |= SCB_ALL;
StatusChangeFlagTable[SC_ARMOR_ELEMENT_WATER] |= SCB_ALL;
StatusChangeFlagTable[SC_ARMOR_ELEMENT_EARTH] |= SCB_ALL;
StatusChangeFlagTable[SC_ARMOR_ELEMENT_FIRE] |= SCB_ALL;
StatusChangeFlagTable[SC_ARMOR_ELEMENT_WIND] |= SCB_ALL;
StatusChangeFlagTable[SC_ARMOR_RESIST] |= SCB_ALL;
StatusChangeFlagTable[SC_SPCOST_RATE] |= SCB_ALL;
StatusChangeFlagTable[SC_WALKSPEED] |= SCB_SPEED;
@@ -4051,11 +4058,29 @@ int status_calc_pc_(struct map_session_data* sd, enum e_status_calc_opt opt)
sd->subrace[RC_PLAYER] += sc->data[SC_GEFFEN_MAGIC3]->val1;
sd->subrace[RC_DEMIHUMAN] += sc->data[SC_GEFFEN_MAGIC3]->val1;
}
if(sc->data[SC_ARMOR_ELEMENT]) { // This status change should grant card-type elemental resist.
sd->subele[ELE_WATER] += sc->data[SC_ARMOR_ELEMENT]->val1;
sd->subele[ELE_EARTH] += sc->data[SC_ARMOR_ELEMENT]->val2;
sd->subele[ELE_FIRE] += sc->data[SC_ARMOR_ELEMENT]->val3;
sd->subele[ELE_WIND] += sc->data[SC_ARMOR_ELEMENT]->val4;
if(sc->data[SC_ARMOR_ELEMENT_WATER]) { // This status change should grant card-type elemental resist.
sd->subele[ELE_WATER] += sc->data[SC_ARMOR_ELEMENT_WATER]->val1;
sd->subele[ELE_EARTH] += sc->data[SC_ARMOR_ELEMENT_WATER]->val2;
sd->subele[ELE_FIRE] += sc->data[SC_ARMOR_ELEMENT_WATER]->val3;
sd->subele[ELE_WIND] += sc->data[SC_ARMOR_ELEMENT_WATER]->val4;
}
if(sc->data[SC_ARMOR_ELEMENT_EARTH]) { // This status change should grant card-type elemental resist.
sd->subele[ELE_WATER] += sc->data[SC_ARMOR_ELEMENT_EARTH]->val1;
sd->subele[ELE_EARTH] += sc->data[SC_ARMOR_ELEMENT_EARTH]->val2;
sd->subele[ELE_FIRE] += sc->data[SC_ARMOR_ELEMENT_EARTH]->val3;
sd->subele[ELE_WIND] += sc->data[SC_ARMOR_ELEMENT_EARTH]->val4;
}
if(sc->data[SC_ARMOR_ELEMENT_FIRE]) { // This status change should grant card-type elemental resist.
sd->subele[ELE_WATER] += sc->data[SC_ARMOR_ELEMENT_FIRE]->val1;
sd->subele[ELE_EARTH] += sc->data[SC_ARMOR_ELEMENT_FIRE]->val2;
sd->subele[ELE_FIRE] += sc->data[SC_ARMOR_ELEMENT_FIRE]->val3;
sd->subele[ELE_WIND] += sc->data[SC_ARMOR_ELEMENT_FIRE]->val4;
}
if(sc->data[SC_ARMOR_ELEMENT_WIND]) { // This status change should grant card-type elemental resist.
sd->subele[ELE_WATER] += sc->data[SC_ARMOR_ELEMENT_WIND]->val1;
sd->subele[ELE_EARTH] += sc->data[SC_ARMOR_ELEMENT_WIND]->val2;
sd->subele[ELE_FIRE] += sc->data[SC_ARMOR_ELEMENT_WIND]->val3;
sd->subele[ELE_WIND] += sc->data[SC_ARMOR_ELEMENT_WIND]->val4;
}
if(sc->data[SC_ARMOR_RESIST]) { // Undead Scroll
sd->subele[ELE_WATER] += sc->data[SC_ARMOR_RESIST]->val1;
@@ -9070,7 +9095,10 @@ int status_change_start(struct block_list* src, struct block_list* bl,enum sc_ty
case SC_ATKPOTION:
case SC_MATKPOTION:
case SC_ENCHANTARMS:
case SC_ARMOR_ELEMENT:
case SC_ARMOR_ELEMENT_WATER:
case SC_ARMOR_ELEMENT_EARTH:
case SC_ARMOR_ELEMENT_FIRE:
case SC_ARMOR_ELEMENT_WIND:
case SC_ARMOR_RESIST:
case SC_ATTHASTE_CASH:
break;
@@ -9953,7 +9981,10 @@ int status_change_start(struct block_list* src, struct block_list* bl,enum sc_ty
case SC_KAIZEL:
val2 = 10*val1; // % of life to be revived with
break;
// case SC_ARMOR_ELEMENT:
// case SC_ARMOR_ELEMENT_WATER:
// case SC_ARMOR_ELEMENT_EARTH:
// case SC_ARMOR_ELEMENT_FIRE:
// case SC_ARMOR_ELEMENT_WIND:
// case SC_ARMOR_RESIST:
// Mod your resistance against elements:
// val1 = water | val2 = earth | val3 = fire | val4 = wind

View File

@@ -141,7 +141,7 @@ typedef enum sc_type {
SC_VIOLENTGALE,
SC_WATK_ELEMENT,
SC_ARMOR,
SC_ARMOR_ELEMENT,
SC_ARMOR_ELEMENT_WATER,
SC_NOCHAT,
SC_BABY,
SC_AURABLADE,
@@ -794,6 +794,9 @@ typedef enum sc_type {
SC_GEFFEN_MAGIC3,
SC_MAXPAIN,
SC_ARMOR_ELEMENT_EARTH,
SC_ARMOR_ELEMENT_FIRE,
SC_ARMOR_ELEMENT_WIND,
#ifdef RENEWAL
SC_EXTREMITYFIST2, //! NOTE: This SC should be right before SC_MAX, so it doesn't disturb if RENEWAL is disabled