#ifndef SKILLS_H
#define SKILLS_H
#include <classes.h>
#define MAX_DISPLAY_SKILL 100
#define MAX_HIDDEN_SKILL 110
#define MAX_UNDEFINED_SKILL 10
#define FIGHTER_RATE (["Longsword" : 10, "Shortsword" : 10, "Axe" : 9,\
"Curved Blade" : 9, "Two Handed Sword" : 9,\
"Two Handed Axe" : 9, "Spear" : 10, "Knife" : 9,\
"Staff" : 9, "Flail" : 9, "Club" : 10,\
"Rapier" : 9, "Polearm" : 9,\
"Exotic" : 7, "Marksmanship" : 9, "Two Weapon": 6,\
"Unarmed" : 10])
#define RANGER_RATE (["Longsword" : 7, "Shortsword" : 8, "Axe" : 7 ,\
"Curved Blade" : 6, "Two Handed Sword" : 5,\
"Two Handed Axe" : 7, "Spear" : 8, "Knife" : 9,\
"Staff" : 5, "Flail" : 4, "Club" : 6,\
"Rapier" : 5, "Polearm" : 5,\
"Exotic" : 4, "Marksmanship" : 10, "Two Weapon": 4,\
"Unarmed" : 8])
#define PALADIN_RATE (["Longsword" : 9, "Shortsword" : 8, "Axe" : 6,\
"Curved Blade" : 7, "Two Handed Sword" : 7,\
"Two Handed Axe" : 5, "Spear" : 6, "Knife" : 5,\
"Staff" : 6, "Flail" : 6, "Club" : 6,\
"Rapier" : 7, "Polearm" : 8,\
"Exotic" : 6, "Marksmanship" : -5, "Two Weapon": 4,\
"Unarmed" : 8])
#define ADVENTURER_RATE (["Longsword" : 6, "Shortsword" : 6, "Axe" : 6 ,\
"Curved Blade" : 6, "Two Handed Sword" : 6,\
"Two Handed Axe" : 6, "Spear" : 6, "Knife" : 6,\
"Staff" : 6, "Flail" : 6, "Club" : 6,\
"Rapier" : 6, "Polearm" : 6,\
"Exotic" : 4, "Marksmanship" : 6, "Two Weapon": 2,\
"Unarmed" : 6])
#define ROGUE_RATE (["Longsword" : 5, "Shortsword" : 7, "Axe" : 2,\
"Curved Blade" : 7, "Two Handed Sword" : 3,\
"Two Handed Axe" : 2, "Spear" : 4, "Knife" : 10,\
"Staff" : 5, "Flail" : 4, "Club" : 6,\
"Rapier" : 7, "Polearm" : 4,\
"Exotic" : 2, "Marksmanship" : 8, "Two Weapon": 3,\
"Unarmed" : 5])
#define CLERIC_RATE (["Longsword" : 4, "Shortsword" : 4, "Axe" : 3 ,\
"Curved Blade" : 3, "Two Handed Sword" : 2,\
"Two Handed Axe" : 2, "Spear" : 3, "Knife" : 5,\
"Staff" : 6, "Flail" : 7, "Club" : 7,\
"Rapier" : 3, "Polearm" : 3,\
"Exotic" : -1, "Marksmanship" : 3, "Two Weapon": 3,\
"Unarmed" : 4])
#define NECROMANCER_RATE (["Longsword" : 2, "Shortsword" : 3, "Axe" : 1 ,\
"Curved Blade" : 1, "Two Handed Sword" : -1,\
"Two Handed Axe" : -2, "Spear" : 1, "Knife" : 5,\
"Staff" : 3, "Flail" : 1, "Club" : 1,\
"Rapier" : 2, "Polearm" : 1,\
"Exotic" : -1, "Marksmanship" : 2, "Two Weapon": -1,\
"Unarmed" : 2])
#define MAGE_RATE (["Longsword" : 0, "Shortsword" : 1, "Axe" : 0 ,\
"Curved Blade" : 1, "Two Handed Sword" : -2,\
"Two Handed Axe" : -2, "Spear" : 0, "Knife" : 4,\
"Staff" : 5, "Flail" : 1, "Club" : 1,\
"Rapier" : 1, "Polearm" : 1,\
"Exotic" : -2, "Marksmanship" : 2, "Two Weapon": -1,\
"Unarmed" : 1])
#define SHIFTER_RATE (["Longsword" : 3, "Shortsword" : 4, "Axe" : 6 ,\
"Curved Blade" : 4, "Two Handed Sword" : 2,\
"Two Handed Axe" : 4, "Spear" : 7, "Knife" : 7,\
"Staff" : 6, "Flail" : 4, "Club" : 7,\
"Rapier" : 3, "Polearm" : 2,\
"Exotic" : -1, "Marksmanship" : 6, "Two Weapon": 4,\
"Unarmed" : 9])
#define ARTIFICER_RATE (["Longsword" : 3, "Shortsword" : 3, "Axe" : 3 ,\
"Curved Blade" : 5, "Two Handed Sword" : 2,\
"Two Handed Axe" : 2, "Spear" : 3, "Knife" : 7,\
"Staff" : 3, "Flail" : 4, "Club" : 7,\
"Rapier" : 2, "Polearm" : 3,\
"Exotic" : -1, "Marksmanship" : 7, "Two Weapon": 0,\
"Unarmed" : 4])
#define MARINER_RATE (["Longsword" : 7, "Shortsword" : 7, "Axe" : 6,\
"Curved Blade" : 10, "Two Handed Sword" : 5,\
"Two Handed Axe" : 5, "Spear" : 9, "Knife" : 9,\
"Staff" : 5, "Flail" : 5, "Club" : 7,\
"Rapier" : 6, "Polearm" : 5,\
"Exotic" : 5, "Marksmanship" : 7, "Two Weapon" : 0,\
"Unarmed" : 10])
#define PSION_RATE (["Longsword" : 0, "Shortsword" : 0, "Axe" : 0 ,\
"Curved Blade" : 0, "Two Handed Sword" : -2,\
"Two Handed Axe" : -2, "Spear" : 0, "Knife" : 3,\
"Staff" : 5, "Flail" : 0, "Club" : 0,\
"Rapier" : 0, "Polearm" : 0,\
"Exotic" : -2, "Marksmanship" : 0, "Two Weapon" : -1,\
"Unarmed" : 3])
#define JAOCHI_RATE (["Longsword" : 2, "Shortsword" : 3, "Axe" : 3 ,\
"Curved Blade" : 1, "Two Handed Sword" : 1,\
"Two Handed Axe" : 1, "Spear" : 3, "Knife" : 4,\
"Staff" : 4, "Flail" : 2, "Club" : 3,\
"Rapier" : 2, "Polearm" : 1,\
"Exotic" : 0, "Marksmanship" : 2, "Two Weapon": 0,\
"Unarmed" : 10])
#define SOULBINDER_RATE (["Longsword" : 1, "Shortsword" : 5, "Axe" : 3 ,\
"Curved Blade" : 4, "Two Handed Sword" : -1,\
"Two Handed Axe" : -2, "Spear" : 0, "Knife" : 5,\
"Staff" : 2, "Flail" : 3, "Club" : 3,\
"Rapier" : 4, "Polearm" : 0,\
"Exotic" : -1, "Marksmanship" : -3, "Two Weapon": 2,\
"Unarmed" : 5])
#define SKILL_RATES ([\
FIGHTER : FIGHTER_RATE,\
RANGER : RANGER_RATE,\
PALADIN : PALADIN_RATE,\
COMMUNICATOR: ADVENTURER_RATE,\
ADVENTURER : ADVENTURER_RATE,\
SHIFTER : SHIFTER_RATE,\
ROGUE : ROGUE_RATE,\
CLERIC : CLERIC_RATE,\
NECROMANCER : NECROMANCER_RATE,\
ARTIFICER : ARTIFICER_RATE,\
MAGE : MAGE_RATE,\
MARINER : MARINER_RATE,\
MINER : ADVENTURER_RATE,\
PSION : PSION_RATE,\
JAOCHI : JAOCHI_RATE,\
SOULBINDER: SOULBINDER_RATE,\
])
#define P_LONGSWORD "Longsword" : \
(["Shortsword" : 15, "Two Handed Sword" : 20,\
"Curved Blade" : 20 , "Knife" : 5,"Rapier":1])
#define P_SHORTSWORD "Shortsword" : \
(["Longsword" : 15, "Two Handed Sword" : 5,\
"Curved Blade" : 20, "Knife": 15,"Rapier":1 ])
#define P_TWO_HANDED_SWORD "Two Handed Sword" : \
(["Longsword" : 20, "Shortsword" : 5,\
"Curved Blade" : 15 ])
#define P_CURVED_BLADE "Curved Blade" : \
(["Longsword" : 20, "Two Handed Sword" : 15,\
"Shortsword" : 20, "Knife" : 10,"Rapier":1 ])
#define P_KNIFE "Knife" :\
(["Longsword" : 5, "Shortsword" : 15,\
"Curved Blade" : 10,"Rapier":1 ])
#define P_STAFF "Staff" :\
(["Spear" : 20,"Polearm":1 ])
#define P_SPEAR "Spear" :\
(["Staff" : 20,"Polearm":1 ])
#define P_AXE "Axe" :\
(["Two Handed Axe" : 20, "Club" : 10 ])
#define P_CLUB "Club" :\
(["Axe" : 10, "Two Handed Axe" : 5 ])
#define P_TWO_HANDED_AXE "Two Handed Axe" : \
(["Axe" : 20, "Club" : 5 ])
#define P_POLEARM "Polearm":(["Staff":1,"Spear":1])
#define P_RAPIER "Rapier":(["Longsword" : 20,"Shortsword" : 20,\
"Knife" : 10,"Curved Blade":1])
#define PARTIAL_LEARNING ([\
P_LONGSWORD, P_SHORTSWORD, P_TWO_HANDED_SWORD, P_CURVED_BLADE, P_KNIFE,\
P_STAFF, P_SPEAR, P_AXE, P_CLUB, P_TWO_HANDED_AXE, P_POLEARM, P_RAPIER,\
])
#define FIGHTER_MAX (["Longsword" : 100, "Shortsword" : 100, "Axe" : 100 ,\
"Curved Blade" : 100, "Two Handed Sword" : 100,\
"Two Handed Axe" : 100, "Spear" : 100, "Knife" : 100,\
"Staff" : 100, "Flail" : 100, "Club" : 100,\
"Rapier": 100, "Polearm" : 100,\
"Exotic" : 90, "Marksmanship" : 90, "Two Weapon": 80,\
"Unarmed" : 100])
#define RANGER_MAX (["Longsword" : 85, "Shortsword" : 90, "Axe" : 90 ,\
"Curved Blade" : 80, "Two Handed Sword" : 75,\
"Two Handed Axe" : 85, "Spear" : 90, "Knife" : 90,\
"Staff" : 75, "Flail" : 70, "Club" : 70,\
"Rapier" : 65, "Polearm" : 75,\
"Exotic" : 60, "Marksmanship" : 100, "Two Weapon": 70,\
"Unarmed" : 85])
#define PALADIN_MAX (["Longsword" : 95, "Shortsword" : 90, "Axe" : 80,\
"Curved Blade" : 75, "Two Handed Sword" : 85,\
"Two Handed Axe" : 80, "Spear" : 75, "Knife" : 80,\
"Staff" : 75, "Flail" : 85, "Club" : 80,\
"Rapier" : 85, "Polearm" : 90,\
"Exotic" : 70, "Marksmanship" : 0, "Two Weapon": 70,\
"Unarmed" : 80])
#define ADVENTURER_MAX (["Longsword" : 70, "Shortsword" : 70, "Axe" : 70 ,\
"Curved Blade" : 70, "Two Handed Sword" : 70,\
"Two Handed Axe" : 70, "Spear" : 70, "Knife" : 70,\
"Staff" : 70, "Flail" : 70, "Club" : 70,\
"Rapier" : 70, "Polearm" : 70,\
"Exotic" : 10, "Marksmanship" : 70, "Two Weapon": 50,\
"Unarmed" : 70])
#define ROGUE_MAX (["Longsword" : 65, "Shortsword" : 85, "Axe" : 40,\
"Curved Blade" : 85, "Two Handed Sword" : 45,\
"Two Handed Axe" : 35, "Spear" : 70, "Knife" : 100,\
"Staff" : 60, "Flail" : 65, "Club" : 80,\
"Rapier" : 85, "Polearm" : 60,\
"Exotic" : 40, "Marksmanship" : 90, "Two Weapon": 60,\
"Unarmed" : 75])
#define CLERIC_MAX (["Longsword" : 60, "Shortsword" : 55, "Axe" : 60 ,\
"Curved Blade" : 50, "Two Handed Sword" : 45,\
"Two Handed Axe" : 45, "Spear" : 55, "Knife" : 65,\
"Staff" : 80, "Flail" : 90, "Club" : 90,\
"Rapier" : 55, "Polearm" : 50,\
"Exotic" : 50, "Marksmanship" : 60, "Two Weapon": 60,\
"Unarmed" : 70])
#define NECROMANCER_MAX (["Longsword" : 30, "Shortsword" : 35, "Axe" : 30 ,\
"Curved Blade" : 35, "Two Handed Sword" : 25,\
"Two Handed Axe" : 25, "Spear" : 45, "Knife" : 60,\
"Staff" : 50, "Flail" : 40, "Club" : 45,\
"Rapier" : 30, "Polearm" : 40,\
"Exotic" : 20, "Marksmanship" : 30, "Two Weapon": 20,\
"Unarmed" : 25])
#define MAGE_MAX (["Longsword" : 30, "Shortsword" : 35, "Axe" : 30 ,\
"Curved Blade" : 35, "Two Handed Sword" : 20,\
"Two Handed Axe" : 25, "Spear" : 40, "Knife" : 55,\
"Staff" : 60, "Flail" : 40, "Club" : 40,\
"Rapier" : 30, "Polearm" : 30,\
"Exotic" : 20, "Marksmanship" : 35, "Two Weapon": 20,\
"Unarmed" : 25])
#define SHIFTER_MAX (["Longsword" : 40, "Shortsword" : 50, "Axe" : 70 ,\
"Curved Blade" : 55, "Two Handed Sword" : 40,\
"Two Handed Axe" : 60, "Spear" : 75, "Knife" : 75,\
"Staff" : 75, "Flail" : 50, "Club" : 80,\
"Rapier" : 40, "Polearm" : 40,\
"Exotic" : 40, "Marksmanship" : 75, "Two Weapon": 70,\
"Unarmed" : 90])
#define ARTIFICER_MAX (["Longsword" : 45, "Shortsword" : 45, "Axe" : 45 ,\
"Curved Blade" : 75, "Two Handed Sword" : 30,\
"Two Handed Axe" : 30, "Spear" : 45, "Knife" : 80,\
"Staff" : 55, "Flail" : 55, "Club" : 80,\
"Rapier" : 30, "Polearm" : 50,\
"Exotic" : 45, "Marksmanship" : 80, "Two Weapon": 20,\
"Unarmed" : 60])
#define MARINER_MAX (["Longsword" : 80, "Shortsword" : 80, "Axe" : 65 ,\
"Curved Blade" : 100, "Two Handed Sword" : 55,\
"Two Handed Axe" : 55, "Spear" : 100, "Knife" : 100,\
"Staff" : 60, "Flail" : 55, "Club" : 75,\
"Rapier": 60, "Polearm" : 55,\
"Exotic" : 50, "Marksmanship" : 90, "Two Weapon": 20,\
"Unarmed" : 100])
#define PSION_MAX (["Longsword" : 30, "Shortsword" : 30, "Axe" : 30 ,\
"Curved Blade" : 30, "Two Handed Sword" : 20,\
"Two Handed Axe" : 20, "Spear" : 30, "Knife" : 55,\
"Staff" : 60, "Flail" : 30, "Club" : 30,\
"Rapier" : 30, "Polearm" : 30,\
"Exotic" : 20, "Marksmanship" : 30, "Two Weapon": 20,\
"Unarmed" : 40])
#define JAOCHI_MAX (["Longsword" : 30, "Shortsword" : 40, "Axe" : 40 ,\
"Curved Blade" : 30, "Two Handed Sword" : 20,\
"Two Handed Axe" : 20, "Spear" : 40, "Knife" : 70,\
"Staff" : 70, "Flail" : 20, "Club" : 70,\
"Rapier" : 30, "Polearm" : 25,\
"Exotic" : 20, "Marksmanship" : 50, "Two Weapon": 20,\
"Unarmed" : 100])
#define SOULBINDER_MAX (["Longsword" : 20, "Shortsword" : 55, "Axe" : 40 ,\
"Curved Blade" : 40, "Two Handed Sword" : 20,\
"Two Handed Axe" : 20, "Spear" : 20, "Knife" : 60,\
"Staff" : 25, "Flail" : 30, "Club" : 30,\
"Rapier" : 45, "Polearm" : 20,\
"Exotic" : 20, "Marksmanship" : 15, "Two Weapon": 20,\
"Unarmed" : 45])
#define MAX_LEARNING ([\
FIGHTER : FIGHTER_MAX,\
RANGER : RANGER_MAX,\
PALADIN : PALADIN_MAX,\
COMMUNICATOR: ADVENTURER_MAX,\
ADVENTURER : ADVENTURER_MAX,\
SHIFTER : SHIFTER_MAX,\
ROGUE : ROGUE_MAX,\
CLERIC : CLERIC_MAX,\
NECROMANCER : NECROMANCER_MAX,\
ARTIFICER : ARTIFICER_MAX,\
MAGE : MAGE_MAX,\
MARINER : MARINER_MAX,\
MINER : ADVENTURER_MAX,\
PSION : PSION_MAX,\
JAOCHI : JAOCHI_MAX,\
SOULBINDER: SOULBINDER_MAX,\
])
#endif