#include "common/hercules.h" #include "map/pc.h" #include "map/mob.h" #include "map/mapreg.h" #include "map/battle.h" #include "plugins/HPMHooking.h" #include "common/HPMDataCheck.h" HPExport struct hplugin_info pinfo = { "koe_char", SERVER_TYPE_MAP, "0.2", HPM_VERSION, }; int battle_check_target_post( int retVal, struct block_list *src, struct block_list *target, int flag ) { if ( retVal == 1 ) { struct block_list *s_bl = src; if ( ( s_bl = battle->get_master(src) ) == NULL ) s_bl = src; if ( s_bl->type == BL_PC && target->type == BL_MOB ) { TBL_PC *sd = BL_CAST( BL_PC, s_bl ); TBL_MOB *md = BL_CAST( BL_MOB, target ); if ( ( ( md->class_ == MOBID_EMPELIUM || md->class_ == MOBID_BARRICADE_ ) && !strcmp( mapindex_id2name(sd->mapindex), "ordeal_1-1" ) ) && ( sd->status.account_id == mapreg->readreg( script->add_str("$koeaid") ) || battle->get_current_skill(src) > 0 ) ) return 0; } } return retVal; } HPExport void plugin_init (void) { addHookPost( battle, check_target, battle_check_target_post ); }