diff options
author | Bardur Arantsson <bardur@scientician.net> | 2012-05-29 06:25:07 +0200 |
---|---|---|
committer | Bardur Arantsson <bardur@scientician.net> | 2012-05-29 18:18:10 +0200 |
commit | d98a999477698bb0a304c4995df44f2b7ef5389d (patch) | |
tree | e0d30c7a705368f7991371a143a9c4c7b06faf60 /src/types.h | |
parent | 127f4d6985d998c65d958907758e474edb29ceec (diff) |
Lua: Convert all the spell metadata to C code
(Yay automated translation!)
Diffstat (limited to 'src/types.h')
-rw-r--r-- | src/types.h | 32 |
1 files changed, 29 insertions, 3 deletions
diff --git a/src/types.h b/src/types.h index fbf049ae..b00ade5c 100644 --- a/src/types.h +++ b/src/types.h @@ -2527,11 +2527,37 @@ struct spell_type { cptr name; /* Name */ byte skill_level; /* Required level (to learn) */ - byte mana; /* Required mana at lvl 1 */ - byte mana_max; /* Required mana at max lvl */ - s16b fail; /* Minimum chance of failure */ s16b level; /* Spell level(0 = not learnt) */ string_list *description; /* List of strings */ + + bool_ *(*effect_func)(int o_idx); /* Spell effect function */ + char* (*info_func)(); /* Information function */ + int (*lasting_func)(); /* Lasting effect function */ + bool_ (*depend_func)(); /* Check dependencies */ + + s16b minimum_pval; /* Minimum required pval for item-based spells */ + + casting_type casting_type; /* Type of casting required */ + s16b casting_stat; /* Stat used for casting */ + + bool_ castable_while_blind; + bool_ castable_while_confused; + + dice_type device_charges; /* Number of charges for devices */ + device_allocation *device_allocation; /* Allocation table for devices */ + + s16b random_type; /* Type of random items in which skill may appear */ + + s32b failure_rate; /* Failure rate */ + + s32b inertia_difficulty; /* Mana cost when used in Inertia Control */ + s32b inertia_delay; /* Delay between castings */ + + range_type mana_range; + + dice_type activation_duration; /* Duration for activation (if any) */ + + school_idx *schools; }; typedef struct school_type school_type; |