Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
75 changes: 75 additions & 0 deletions db/re/item_db_equip.yml
Original file line number Diff line number Diff line change
Expand Up @@ -160173,6 +160173,9 @@ Body:
Locations:
Costume_Head_Mid: true
ArmorLevel: 1
Trade:
NoMail: true
NoAuction: true
- Id: 31852
AegisName: C_WitchManteau
Name: Costume Witch's Cloak
Expand Down Expand Up @@ -180295,6 +180298,30 @@ Body:
NoAuction: true
ArmorLevel: 1
View: 2805
- Id: 401246
AegisName: aegis_401246
Name: Costume Fafnir Helm
Type: Armor
Locations:
Costume_Head_Top: true
ArmorLevel: 1
View: 2149
- Id: 401247
AegisName: aegis_401247
Name: Costume Wolf Rayet
Type: Armor
Locations:
Costume_Head_Top: true
ArmorLevel: 1
View: 2487
- Id: 401248
AegisName: C_Apprentice_Witch_Hat
Name: Costume Apprentice Witch Hat # !todo check english name
Type: Armor
Locations:
Costume_Head_Top: true
ArmorLevel: 1
View: 2814
- Id: 410000
AegisName: Resonate_Taego_J
Name: Ancient Resonance
Expand Down Expand Up @@ -182663,6 +182690,11 @@ Body:
Type: Armor
Locations:
Costume_Head_Mid: true
Trade:
NoSell: true
NoMail: true
NoAuction: true
NoGuildStorage: true
ArmorLevel: 1
View: 2363
- Id: 410202
Expand Down Expand Up @@ -184815,6 +184847,14 @@ Body:
Costume_Head_Mid: true
ArmorLevel: 1
View: 2795
- Id: 410582
AegisName: C_Nursing_Poring
Name: Costume Nursing Poring # !todo check english name
Type: Armor
Locations:
Costume_Head_Mid: true
ArmorLevel: 1
View: 2817
- Id: 420000
AegisName: Isabella_Carrot
Name: Isabella Carrot
Expand Down Expand Up @@ -187828,6 +187868,9 @@ Body:
Type: Armor
Locations:
Costume_Head_Low: true
Trade:
NoDrop: true
NoSell: true
ArmorLevel: 1
Script: |
hateffect HAT_EF_C_ANCIENT_RUNE,true;
Expand Down Expand Up @@ -188927,6 +188970,22 @@ Body:
hateffect HAT_EF_C_CLB_GAT_DOC,true;
UnEquipScript: |
hateffect HAT_EF_C_CLB_GAT_DOC,false;
- Id: 420750
AegisName: C_Seyren_Hair
Name: Costume Seyren Hair # !todo check english name
Type: Armor
Locations:
Costume_Head_Low: true
ArmorLevel: 1
View: 2815
- Id: 420751
AegisName: C_Magaleta_Hair
Name: Costume Magaleta Hair # !todo check english name
Type: Armor
Locations:
Costume_Head_Low: true
ArmorLevel: 1
View: 2816
- Id: 430001
AegisName: C_Helm_Of_Ra
Name: Costume Hat of the Sun God
Expand Down Expand Up @@ -218620,6 +218679,22 @@ Body:
Costume_Garment: true
ArmorLevel: 1
View: 298
- Id: 480747
AegisName: C_Knights_Sword_Shield
Name: Costume Knights Sword Shield # !todo check english name
Type: Armor
Locations:
Costume_Garment: true
ArmorLevel: 1
View: 300
- Id: 480748
AegisName: C_Doram_Paw_Hammer
Name: Costume Doram Paw Hammer # !todo check english name
Type: Armor
Locations:
Costume_Garment: true
ArmorLevel: 1
View: 301
- Id: 490004
AegisName: Atker_Ring
Name: Attacker Booster Ring
Expand Down
12 changes: 7 additions & 5 deletions src/map/skills/merchant/advanceprotection.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -9,13 +9,15 @@
SkillAdvanceProtection::SkillAdvanceProtection() : StatusSkillImpl(BO_ADVANCE_PROTECTION) {
}

void SkillAdvanceProtection::castendNoDamageId(block_list *src, block_list *target, uint16 skill_lv, t_tick tick, int32& flag) const {
map_session_data* sd = BL_CAST(BL_PC, src);
void SkillAdvanceProtection::castendNoDamageId(block_list* src, block_list* target, uint16 skill_lv, t_tick tick, int32& flag) const {
map_session_data* dstsd = BL_CAST(BL_PC, target);

// TODO : Logical error if casted by non-pc
if( sd && ( !dstsd || pc_checkequip( dstsd, EQP_SHADOW_GEAR ) < 0 ) ){
clif_skill_fail( *sd, getSkillId() );
if (dstsd == nullptr || pc_checkequip(dstsd, EQP_SHADOW_GEAR) < 0) {
if (map_session_data* sd = BL_CAST(BL_PC, src); sd != nullptr) {
clif_skill_fail(*sd, getSkillId());

}

// Don't consume item requirements
flag |= SKILL_NOCONSUME_REQ;
return;
Expand Down
2 changes: 1 addition & 1 deletion src/map/skills/merchant/advanceprotection.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -9,5 +9,5 @@ class SkillAdvanceProtection : public StatusSkillImpl {
public:
SkillAdvanceProtection();

void castendNoDamageId(block_list *src, block_list *target, uint16 skill_lv, t_tick tick, int32& flag) const override;
void castendNoDamageId(block_list* src, block_list* target, uint16 skill_lv, t_tick tick, int32& flag) const override;
};
8 changes: 3 additions & 5 deletions src/map/skills/npc/npcvenomimpress.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,9 @@

#include "map/status.hpp"

SkillNpcVenomImpress::SkillNpcVenomImpress() : SkillImpl(NPC_VENOMIMPRESS) {
SkillNpcVenomImpress::SkillNpcVenomImpress() : WeaponSkillImpl(NPC_VENOMIMPRESS) {
}

void SkillNpcVenomImpress::castendDamageId(block_list *src, block_list *target, uint16 skill_lv, t_tick tick, int32& flag) const {
// TODO: refactor to applyAdditionalEffects
if (skill_attack(BF_WEAPON, src, src, target, getSkillId(), skill_lv, tick, flag))
sc_start(src, target, SC_VENOMIMPRESS, 100, skill_lv, skill_get_time(getSkillId(),skill_lv));
void SkillNpcVenomImpress::applyAdditionalEffects(block_list* src, block_list* target, uint16 skill_lv, t_tick tick, int32 attack_type, enum damage_lv dmg_lv) const {
sc_start(src, target, SC_VENOMIMPRESS, 100, skill_lv, skill_get_time(getSkillId(), skill_lv));
}
4 changes: 2 additions & 2 deletions src/map/skills/npc/npcvenomimpress.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,9 @@

#include "../skill_impl.hpp"

class SkillNpcVenomImpress : public SkillImpl {
class SkillNpcVenomImpress : public WeaponSkillImpl {
public:
SkillNpcVenomImpress();

void castendDamageId(block_list *src, block_list *target, uint16 skill_lv, t_tick tick, int32& flag) const override;
void applyAdditionalEffects(block_list* src, block_list* target, uint16 skill_lv, t_tick tick, int32 attack_type, enum damage_lv dmg_lv) const override;
};
Loading