| summaryrefslogtreecommitdiff | 
diff options
Diffstat (limited to 'src/battlemap/bm_shim.erl')
| -rw-r--r-- | src/battlemap/bm_shim.erl | 27 | 
1 files changed, 26 insertions, 1 deletions
diff --git a/src/battlemap/bm_shim.erl b/src/battlemap/bm_shim.erl index 3789ed0..fb5146b 100644 --- a/src/battlemap/bm_shim.erl +++ b/src/battlemap/bm_shim.erl @@ -101,6 +101,31 @@ generate_random_battle () ->     Battlemap = bm_battlemap:random(0, BattlemapWidth, BattlemapHeight),     Characters = generate_random_characters(1, 8, 8, 0, Battlemap, [], []),     PlayersAsList = [bm_player:new(<<"0">>), bm_player:new(<<"1">>)], -   Battle = bm_battle:new(<<"0">>, PlayersAsList, Battlemap, Characters), + +   {UsedWeaponIDs, UsedArmorIDs} = +      lists:foldl +      ( +         fun (Character, {UWIDs, UAIDs}) -> +            {MWpID, SWpID} = bm_character:get_weapon_ids(Character), +            AID = bm_character:get_armor_id(Character), +            { +               sets:add_element(MWpID, sets:add_element(SWpID, UWIDs)), +               sets:add_element(AID, UAIDs) +            } +         end, +         {sets:new(), sets:new()}, +         Characters +      ), + +   Battle = +      bm_battle:new +      ( +         <<"0">>, +         PlayersAsList, +         Battlemap, +         Characters, +         sets:to_list(UsedWeaponIDs), +         sets:to_list(UsedArmorIDs) +      ),     Battle.  | 


