summaryrefslogblamecommitdiff
path: root/src/emap/skill.h
blob: a273121bcf8cae929a08e3f4ff73b50a6512f3f4 (plain) (tree)
1
2
3
4
5
6
7
8
9
                                                                         
                                            



                      
                                     
                                        
 
                                                   
                                                   

                                                         
 






                                                               





















































                                                                      
                                                                        








                                                                 







                                                        






                                                                     






                                                                   



                                                                                  

















                                                                       
                         
// Copyright (c) Copyright (c) Hercules Dev Team, licensed under GNU GPL.
// Copyright (c) 2014 - 2015 Evol developers

#ifndef EVOL_MAP_SKILL
#define EVOL_MAP_SKILL

int eskill_get_index_post(int retVal,
                          int skill_id);

int eskill_check_condition_castend_post(int retVal,
                                        TBL_PC* sd,
                                        uint16 skill_id,
                                        uint16 skill_lv);

bool eskill_castend_nodamage_id_unknown(struct block_list *src,
                                        struct block_list *bl,
                                        uint16 *skill_id,
                                        uint16 *skill_lv,
                                        int64 *tick,
                                        int *flag);

void eskill_additional_effect_unknown(struct block_list* src,
                                      struct block_list *bl,
                                      uint16 *skill_id,
                                      uint16 *skill_lv,
                                      int *attack_type,
                                      int *dmg_lv,
                                      int64 *tick);

void eskill_counter_additional_effect_unknown(struct block_list* src,
                                              struct block_list *bl,
                                              uint16 *skill_id,
                                              uint16 *skill_lv,
                                              int *attack_type,
                                              int64 *tick);

void eskill_attack_combo2_unknown(int *attack_type,
                                  struct block_list *src,
                                  struct block_list *dsrc,
                                  struct block_list *bl,
                                  uint16 *skill_id,
                                  uint16 *skill_lv,
                                  int64 *tick,
                                  int *flag,
                                  int *combo);

void eskill_attack_post_unknown(int *attack_type,
                                struct block_list *src,
                                struct block_list *dsrc,
                                struct block_list *bl,
                                uint16 *skill_id,
                                uint16 *skill_lv,
                                int64 *tick,
                                int *flag);

void eskill_timerskill_notarget_unknown(int tid,
                                        int64 tick,
                                        struct block_list *src,
                                        struct unit_data *ud,
                                        struct skill_timerskill *skl);

void eskill_unitsetting1_unknown(struct block_list *src,
                                 uint16 *skill_id,
                                 uint16 *skill_lv,
                                 int16 *x,
                                 int16 *y,
                                 int *flag,
                                 int *val1,
                                 int *val2,
                                 int *val3);

void eskill_unit_onplace_unknown(struct skill_unit *src,
                                 struct block_list *bl,
                                 int64 *tick);

bool eskill_check_condition_castend_unknown(struct map_session_data *sd,
                                            uint16 *skill_id,
                                            uint16 *skill_lv);

void eskill_get_requirement_unknown(struct status_change *sc,
                                    struct map_session_data *sd,
                                    uint16 *skill_id,
                                    uint16 *skill_lv,
                                    struct skill_condition *req);

bool eskill_castend_pos2_unknown(struct block_list* src,
                                 int *x,
                                 int *y,
                                 uint16 *skill_id,
                                 uint16 *skill_lv,
                                 int64 *tick,
                                 int *flag);

void eskill_validate_additional_fields(struct config_setting_t *conf,
                                       struct s_skill_db *sk);

bool eskill_lookup_const(const struct config_setting_t *it,
                         const char *name,
                         int *value);

int eskill_calc_heal_post(int retVal,
                          struct block_list *src,
                          struct block_list *target,
                          uint16 skill_id,
                          uint16 skill_lv __attribute__ ((unused)),
                          bool heal __attribute__ ((unused)));

int eskill_consume_requirement_post(int retVal,
                                    struct map_session_data *sd,
                                    uint16 skill_id, uint16 skill_lv, short type);

/*
void eskill_castend_type_post(int type __attribute__ ((unused)),
                             struct block_list *src,
                             struct block_list *bl,
                             uint16 skill_id __attribute__ ((unused)),
                             uint16 skill_lv __attribute__ ((unused)),
                             int64 tick __attribute__ ((unused)),
                             int flag __attribute__ ((unused)));

void eskill_castend_type_pre(int *type __attribute__ ((unused)),
                             struct block_list **src,
                             struct block_list **blPtr,
                             uint16 *skill_id __attribute__ ((unused)),
                             uint16 *skill_lv __attribute__ ((unused)),
                             int64 *tick __attribute__ ((unused)),
                             int *flag __attribute__ ((unused)));
*/

#endif  // EVOL_MAP_SKILL