summaryrefslogtreecommitdiff
path: root/src/map/status.h
diff options
context:
space:
mode:
authorsmokexyz <sagunkho@hotmail.com>2017-05-21 12:00:05 +0800
committersmokexyz <sagunkho@hotmail.com>2017-05-21 12:00:05 +0800
commite171deb58c7ebbc010d0a40b0e2e66651a0d7913 (patch)
tree08250f1ebcba2e0e03f2ad0a164f44a110d15de1 /src/map/status.h
parentbe118c7fad6df29dc691452ef511ac12fea37a06 (diff)
downloadhercules-e171deb58c7ebbc010d0a40b0e2e66651a0d7913.tar.gz
hercules-e171deb58c7ebbc010d0a40b0e2e66651a0d7913.tar.bz2
hercules-e171deb58c7ebbc010d0a40b0e2e66651a0d7913.tar.xz
hercules-e171deb58c7ebbc010d0a40b0e2e66651a0d7913.zip
Refine rate correction from kRO.
Normal Ores: http://ro.gnjoy.com/news/probability/View.asp?category=4&seq=1941553&curpage=1 Enriched Ores: http://ro.gnjoy.com/news/probability/View.asp?category=4&seq=1941565&curpage=1 Event Normal Ores: http://ro.gnjoy.com/news/probability/View.asp?category=4&seq=1941558&curpage=1 Event Enriched Ores: http://ro.gnjoy.com/news/probability/View.asp?category=4&seq=1941567&curpage=1
Diffstat (limited to 'src/map/status.h')
-rw-r--r--src/map/status.h12
1 files changed, 10 insertions, 2 deletions
diff --git a/src/map/status.h b/src/map/status.h
index 1496429a8..de21fa16c 100644
--- a/src/map/status.h
+++ b/src/map/status.h
@@ -2233,9 +2233,17 @@ struct status_change {
#define status_calc_elemental(ed, opt) (status->calc_bl_(&(ed)->bl, SCB_ALL, (opt)))
#define status_calc_npc(nd, opt) (status->calc_bl_(&(nd)->bl, SCB_ALL, (opt)))
+enum refine_chance_type {
+ REFINE_CHANCE_TYPE_NORMAL = 0, // Normal Chance
+ REFINE_CHANCE_TYPE_ENRICHED = 1, // Enriched Ore Chance
+ REFINE_CHANCE_TYPE_E_NORMAL = 2, // Event Normal Ore Chance
+ REFINE_CHANCE_TYPE_E_ENRICHED = 3, // Event Enriched Ore Chance
+ REFINE_CHANCE_TYPE_MAX
+};
+
// bonus values and upgrade chances for refining equipment
struct s_refine_info {
- int chance[MAX_REFINE]; // success chance
+ int chance[REFINE_CHANCE_TYPE_MAX][MAX_REFINE]; // success chance
int bonus[MAX_REFINE]; // cumulative fixed bonus damage
int randombonus_max[MAX_REFINE]; // cumulative maximum random bonus damage
};
@@ -2283,7 +2291,7 @@ struct status_interface {
int (*init) (bool minimal);
void (*final) (void);
/* funcs */
- int (*get_refine_chance) (enum refine_type wlv, int refine);
+ int (*get_refine_chance) (enum refine_type wlv, int refine, enum refine_chance_type type);
// for looking up associated data
sc_type (*skill2sc) (int skill_id);
int (*sc2skill) (sc_type sc);