| summaryrefslogtreecommitdiff | 
diff options
Diffstat (limited to 'src/battlemap/struct/bm_battlemap.erl')
| -rw-r--r-- | src/battlemap/struct/bm_battlemap.erl | 22 | 
1 files changed, 21 insertions, 1 deletions
diff --git a/src/battlemap/struct/bm_battlemap.erl b/src/battlemap/struct/bm_battlemap.erl index c3eabb0..6c9fbf9 100644 --- a/src/battlemap/struct/bm_battlemap.erl +++ b/src/battlemap/struct/bm_battlemap.erl @@ -38,7 +38,8 @@  -export  (     [ -      random/3 +      random/3, +      from_list/4     ]  ). @@ -119,3 +120,22 @@ random (ID, Width, Height) ->        height = Height,        tile_ids = array:from_list(TileIDs)     }. + +-spec from_list +   ( +      non_neg_integer(), +      non_neg_integer(), +      non_neg_integer(), +      list(non_neg_integer()) +   ) +   -> type(). +from_list (ID, Width, Height, List) -> +   TileIDs = lists:map(fun bm_tile:id_from_int/1, List), + +   #battlemap +   { +      id = list_to_binary(integer_to_list(ID)), +      width = Width, +      height = Height, +      tile_ids = array:from_list(TileIDs) +   }.  | 


