summaryrefslogtreecommitdiff
path: root/src/emap/skill.h
blob: a273121bcf8cae929a08e3f4ff73b50a6512f3f4 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
// 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