| summaryrefslogtreecommitdiff | 
diff options
| author | Nathanael Sensfelder <SpamShield0@MultiAgentSystems.org> | 2018-08-02 16:42:51 +0200 | 
|---|---|---|
| committer | Nathanael Sensfelder <SpamShield0@MultiAgentSystems.org> | 2018-08-02 16:42:51 +0200 | 
| commit | c0349f22f281940bd2f9b3cf670b21dc895dca85 (patch) | |
| tree | 8e29927872c4175e1ce7a2b3e108bc23bf56a9e4 /src/battle/struct/btl_tile.erl.m4 | |
| parent | 234193c59f79a71b4aedb5cdcc748fb70ef52712 (diff) | |
Moves to the new tile format.
Diffstat (limited to 'src/battle/struct/btl_tile.erl.m4')
| -rw-r--r-- | src/battle/struct/btl_tile.erl.m4 | 68 | 
1 files changed, 37 insertions, 31 deletions
| diff --git a/src/battle/struct/btl_tile.erl.m4 b/src/battle/struct/btl_tile.erl.m4 index 7a8ea21..170b855 100644 --- a/src/battle/struct/btl_tile.erl.m4 +++ b/src/battle/struct/btl_tile.erl.m4 @@ -7,16 +7,15 @@  (     tile,     { -      id :: id(), +      id :: class_id(),        name :: binary(), -      cost :: non_neg_integer(), -      class_range_min :: non_neg_integer(), -      class_range_max :: non_neg_integer() +      cost :: non_neg_integer()     }  ). --opaque id() :: non_neg_integer().  -opaque class_id() :: non_neg_integer(). +-opaque id() :: {class_id(), class_id(), non_neg_integer()}. +  -opaque type() :: #tile{}.  -export_type([type/0, class_id/0, id/0]). @@ -26,12 +25,10 @@  -export  (     [ -      get_id/1, +      get_class_id/1,        get_name/1,        get_cost/1, -      get_range_minimum/1, -      get_range_maximum/1, -      from_id/1, +      from_class_id/1,        cost_when_oob/0     ]  ). @@ -39,8 +36,17 @@  -export  (     [ -      class_id_to_type_id/1, -      class_id_from_int/1 +      id_to_int_list/1, +      id_from_ints/1 +   ] +). + +-export +( +   [ +      extract_main_class_id/1, +      extract_border_class_id/1, +      extract_variant_ix/1     ]  ). @@ -52,27 +58,27 @@  %% EXPORTED FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% --spec class_id_to_type_id (class_id()) -> id(). -class_id_to_type_id (ClassID) -> -   case ClassID of -m4_include(__MAKEFILE_DATA_DIR/tile/global.m4.conf)m4_dnl -__TILE_CLASS_USE_ERLANG_SELECT_STYLE -m4_include(__MAKEFILE_DATA_DIR/tile/grassland.m4d)m4_dnl -      _ -> 0 -   end. +-spec extract_main_class_id (id()) -> class_id(). +extract_main_class_id ({M, _, _}) -> M. --spec from_id (id()) -> type(). +-spec extract_border_class_id (id()) -> class_id(). +extract_border_class_id ({_, B, _}) -> B. + +-spec extract_variant_ix (id()) -> class_id(). +extract_variant_ix ({_, _, V}) -> V. + +-spec from_class_id (class_id()) -> type().  m4_include(__MAKEFILE_DATA_DIR/tile/global.m4.conf)m4_dnl  __TILE_CLASS_USE_ERLANG_STYLE  m4_include(__MAKEFILE_DATA_DIR/tile/grassland.m4d)m4_dnl -from_id(_) -> -   from_id(0). +from_class_id(_) -> +   from_class_id(0).  -spec cost_when_oob () -> non_neg_integer().  cost_when_oob () -> __TILE_COST_WHEN_OOB. --spec get_id (type()) -> non_neg_integer(). -get_id (Tile) -> Tile#tile.id. +-spec get_class_id (type()) -> non_neg_integer(). +get_class_id (Tile) -> Tile#tile.id.  -spec get_cost (type()) -> non_neg_integer().  get_cost (Tile) -> Tile#tile.cost. @@ -80,11 +86,11 @@ get_cost (Tile) -> Tile#tile.cost.  -spec get_name (type()) -> binary().  get_name (Tile) -> Tile#tile.name. --spec get_range_minimum (type()) -> non_neg_integer(). -get_range_minimum (Tile) -> Tile#tile.class_range_min. - --spec get_range_maximum (type()) -> non_neg_integer(). -get_range_maximum (Tile) -> Tile#tile.class_range_max. +-spec id_from_ints +   ( +      {non_neg_integer(), non_neg_integer(), non_neg_integer()} +   ) -> id(). +id_from_ints ({M, B, V}) -> {M, B, V}. --spec class_id_from_int (non_neg_integer()) -> id(). -class_id_from_int (I) -> I. +-spec id_to_int_list (id()) -> list(non_neg_integer()). +id_to_int_list ({M, B, V}) -> [M, B, V]. | 


