diff options
author | Adam Borowski <kilobyte@angband.pl> | 2010-01-07 21:35:39 +0100 |
---|---|---|
committer | Adam Borowski <kilobyte@angband.pl> | 2010-01-07 21:35:39 +0100 |
commit | f536c278597be3ae8664785ba1997085f177e89b (patch) | |
tree | 3c3baf1e2b0d2c046e07ae4cb179dcb60c5806e6 /crawl-ref/source/transform.h | |
parent | 81ae2f6d115443d5e75ae4a4c4bb9e3629e93fe7 (diff) | |
download | crawl-ref-f536c278597be3ae8664785ba1997085f177e89b.tar.gz crawl-ref-f536c278597be3ae8664785ba1997085f177e89b.zip |
Rename transfor.{cc,h} to transform.{cc,h}.
Diffstat (limited to 'crawl-ref/source/transform.h')
-rw-r--r-- | crawl-ref/source/transform.h | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/crawl-ref/source/transform.h b/crawl-ref/source/transform.h new file mode 100644 index 0000000000..9af348b64b --- /dev/null +++ b/crawl-ref/source/transform.h @@ -0,0 +1,55 @@ +/* + * File: transform.h + * Summary: Misc function related to player transformations. + * Written by: Linley Henzell + */ + + +#ifndef TRANSFOR_H +#define TRANSFOR_H + +#include <set> + +#include "enum.h" + +enum transformation_type +{ + TRAN_NONE, // 0 + TRAN_SPIDER, + TRAN_BLADE_HANDS, + TRAN_STATUE, + TRAN_ICE_BEAST, + TRAN_DRAGON, // 5 + TRAN_LICH, + TRAN_BAT, + TRAN_PIG, + NUM_TRANSFORMATIONS // must remain last member {dlb} +}; + +bool transformation_can_wield(transformation_type trans); +bool transform_can_butcher_barehanded(transformation_type tt); + +void untransform(bool skip_wielding = false); + +bool can_equip(equipment_type use_which, bool ignore_temporary); +bool check_transformation_stat_loss(const std::set<equipment_type> &remove, + bool quiet = false, int str_loss = 0, + int dex_loss = 0, int int_loss = 0); +size_type transform_size(int psize = PSIZE_BODY); + +bool transform(int pow, transformation_type which_trans, bool force = false, + bool just_check = false); + +void remove_one_equip(equipment_type eq, bool meld = true, + bool mutation = false); +void unmeld_one_equip(equipment_type eq); + +bool transform_changed_physiology( bool phys_scales = false ); +bool transform_allows_wearing_item(const item_def& item, + transformation_type transform); +// Check your current transformation. +bool transform_allows_wearing_item(const item_def& item); +bool transform_allows_wielding(transformation_type transform); + +void transformation_expiration_warning(); +#endif |