summaryrefslogtreecommitdiff |
diff options
Diffstat (limited to 'src/shared/struct/shr_attributes.erl')
-rw-r--r-- | src/shared/struct/shr_attributes.erl | 167 |
1 files changed, 0 insertions, 167 deletions
diff --git a/src/shared/struct/shr_attributes.erl b/src/shared/struct/shr_attributes.erl deleted file mode 100644 index c402e74..0000000 --- a/src/shared/struct/shr_attributes.erl +++ /dev/null @@ -1,167 +0,0 @@ --module(shr_attributes). - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%% TYPES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% --record -( - attributes, - { - constitution :: non_neg_integer(), - dexterity :: non_neg_integer(), - intelligence :: non_neg_integer(), - mind :: non_neg_integer(), - speed :: non_neg_integer(), - strength :: non_neg_integer() - } -). - --opaque type() :: #attributes{}. - --export_type([type/0]). - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%% EXPORTS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%%% Accessors --export -( - [ - get_constitution/1, - get_dexterity/1, - get_intelligence/1, - get_mind/1, - get_speed/1, - get_strength/1, - - set_constitution/2, - set_dexterity/2, - set_intelligence/2, - set_mind/2, - set_speed/2, - set_strength/2, - - set_unsafe_constitution/2, - set_unsafe_dexterity/2, - set_unsafe_intelligence/2, - set_unsafe_mind/2, - set_unsafe_speed/2, - set_unsafe_strength/2, - - apply_mod/3 - ] -). - -%%%% Accessors --export -( - [ - default/0 - ] -). - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%% LOCAL FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% --spec make_safe (integer()) -> non_neg_integer(). -make_safe (Val) -> max(0, min(100, Val)). - --spec mod_unsafe_constitution (integer(), type()) -> type(). -mod_unsafe_constitution (Val, Att) -> - set_constitution(make_safe(get_constitution(Att) + Val), Att). - --spec mod_unsafe_dexterity (integer(), type()) -> type(). -mod_unsafe_dexterity (Val, Att) -> - set_dexterity(make_safe(get_dexterity(Att) + Val), Att). - --spec mod_unsafe_intelligence (integer(), type()) -> type(). -mod_unsafe_intelligence (Val, Att) -> - set_intelligence(make_safe(get_intelligence(Att) + Val), Att). - --spec mod_unsafe_mind (integer(), type()) -> type(). -mod_unsafe_mind (Val, Att) -> set_mind(make_safe(get_mind(Att) + Val), Att). - --spec mod_unsafe_speed (integer(), type()) -> type(). -mod_unsafe_speed (Val, Att) -> set_speed(make_safe(get_speed(Att) + Val), Att). - --spec mod_unsafe_strength (integer(), type()) -> type(). -mod_unsafe_strength (Val, Att) -> - set_strength(make_safe(get_strength(Att) + Val), Att). - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%% EXPORTED FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%%% Accessors --spec get_constitution (type()) -> non_neg_integer(). -get_constitution (Att) -> Att#attributes.constitution. - --spec get_dexterity (type()) -> non_neg_integer(). -get_dexterity (Att) -> Att#attributes.dexterity. - --spec get_intelligence (type()) -> non_neg_integer(). -get_intelligence (Att) -> Att#attributes.intelligence. - --spec get_mind (type()) -> non_neg_integer(). -get_mind (Att) -> Att#attributes.mind. - --spec get_speed (type()) -> non_neg_integer(). -get_speed (Att) -> Att#attributes.speed. - --spec get_strength (type()) -> non_neg_integer(). -get_strength (Att) -> Att#attributes.strength. - --spec set_constitution (non_neg_integer(), type()) -> type(). -set_constitution (Val, Att) -> Att#attributes{ constitution = Val }. - --spec set_dexterity (non_neg_integer(), type()) -> type(). -set_dexterity (Val, Att) -> Att#attributes{ dexterity = Val }. - --spec set_intelligence (non_neg_integer(), type()) -> type(). -set_intelligence (Val, Att) -> Att#attributes{ intelligence = Val }. - --spec set_mind (non_neg_integer(), type()) -> type(). -set_mind (Val, Att) -> Att#attributes{ mind = Val }. - --spec set_speed (non_neg_integer(), type()) -> type(). -set_speed (Val, Att) -> Att#attributes{ speed = Val }. - --spec set_strength (non_neg_integer(), type()) -> type(). -set_strength (Val, Att) -> Att#attributes{ strength = Val }. - --spec set_unsafe_constitution (integer(), type()) -> type(). -set_unsafe_constitution (Val, Att) -> set_constitution(make_safe(Val), Att). - --spec set_unsafe_dexterity (integer(), type()) -> type(). -set_unsafe_dexterity (Val, Att) -> set_dexterity(make_safe(Val), Att). - --spec set_unsafe_intelligence (integer(), type()) -> type(). -set_unsafe_intelligence (Val, Att) -> set_intelligence(make_safe(Val), Att). - --spec set_unsafe_mind (integer(), type()) -> type(). -set_unsafe_mind (Val, Att) -> set_mind(make_safe(Val), Att). - --spec set_unsafe_speed (integer(), type()) -> type(). -set_unsafe_speed (Val, Att) -> set_speed(make_safe(Val), Att). - --spec set_unsafe_strength (integer(), type()) -> type(). -set_unsafe_strength (Val, Att) -> set_strength(make_safe(Val), Att). - --spec default () -> type(). -default () -> - #attributes - { - constitution = 50, - dexterity = 50, - intelligence = 50, - mind = 50, - speed = 50, - strength = 50 - }. - --spec apply_mod (atom(), integer(), type()) -> type(). -apply_mod (con, Value, Att) -> mod_unsafe_constitution(Value, Att); -apply_mod (dex, Value, Att) -> mod_unsafe_dexterity(Value, Att); -apply_mod (int, Value, Att) -> mod_unsafe_intelligence(Value, Att); -apply_mod (min, Value, Att) -> mod_unsafe_mind(Value, Att); -apply_mod (spe, Value, Att) -> mod_unsafe_speed(Value, Att); -apply_mod (str, Value, Att) -> mod_unsafe_strength(Value, Att). |