| summaryrefslogtreecommitdiff | 
diff options
| author | Nathanael Sensfelder <SpamShield0@MultiAgentSystems.org> | 2018-12-21 17:23:56 +0100 | 
|---|---|---|
| committer | Nathanael Sensfelder <SpamShield0@MultiAgentSystems.org> | 2018-12-21 17:23:56 +0100 | 
| commit | a81ff643a823dde57ebd0ed5da8a91fb75d32267 (patch) | |
| tree | dc7dd9e17bb380d05d446b10e7630db340c5998e /src/battle/query/btl_load.erl | |
| parent | c69fe90821bba84c70b020a2504fe4ed63072158 (diff) | |
Removes any use of arrays.
Diffstat (limited to 'src/battle/query/btl_load.erl')
| -rw-r--r-- | src/battle/query/btl_load.erl | 38 | 
1 files changed, 23 insertions, 15 deletions
| diff --git a/src/battle/query/btl_load.erl b/src/battle/query/btl_load.erl index 64e9354..7c7d4ab 100644 --- a/src/battle/query/btl_load.erl +++ b/src/battle/query/btl_load.erl @@ -85,13 +85,13 @@ generate_reply (QueryState, Input) ->     Battle = QueryState#query_state.battle,     Players = btl_battle:get_players(Battle), -   PlayerIX = -      shr_array_util:first +   {value, {PlayerIX, _Player}} = +      shr_lists_util:search        ( -         fun (Player) -> +         fun ({_PlayerIX, Player}) ->              (btl_player:get_id(Player) == PlayerID)           end, -         Players +         orddict:to_list(Players)        ),     true = (PlayerIX >= 0), @@ -105,15 +105,21 @@ generate_reply (QueryState, Input) ->     SetMap = btl_set_map:generate(btl_battle:get_map(Battle)),     AddCharList = -      array:sparse_to_list +      lists:map +      ( +         fun ({IX, Character}) -> +            btl_add_char:generate(IX, Character, PlayerIX) +         end, +         orddict:to_list(btl_battle:get_characters(Battle)) +      ), + +   AddPortraitList = +      lists:map        ( -         array:map -         ( -            fun (IX, Character) -> -               btl_add_char:generate(IX, Character, PlayerIX) -            end, -            btl_battle:get_characters(Battle) -         ) +         fun (PortraitID) -> +            btl_add_portrait:generate(shr_portrait:from_id(PortraitID)) +         end, +         ordsets:to_list(btl_battle:get_used_portrait_ids(Battle))        ),     AddWeaponList = @@ -122,7 +128,7 @@ generate_reply (QueryState, Input) ->           fun (WeaponID) ->              btl_add_weapon:generate(shr_weapon:from_id(WeaponID))           end, -         btl_battle:get_used_weapon_ids(Battle) +         ordsets:to_list(btl_battle:get_used_weapon_ids(Battle))        ),     AddArmorList = @@ -131,7 +137,7 @@ generate_reply (QueryState, Input) ->           fun (ArmorID) ->              btl_add_armor:generate(shr_armor:from_id(ArmorID))           end, -         btl_battle:get_used_armor_ids(Battle) +         ordsets:to_list(btl_battle:get_used_armor_ids(Battle))        ),     AddTileList = @@ -140,16 +146,18 @@ generate_reply (QueryState, Input) ->           fun (TileClassID) ->              btl_add_tile:generate(shr_tile:from_class_id(TileClassID))           end, -         btl_battle:get_used_tile_ids(Battle) +         ordsets:to_list(btl_battle:get_used_tile_ids(Battle))        ),     OutputList =        (           AddTileList           ++ [SetTimeline, SetMap | AddWeaponList] +         ++ AddPortraitList           ++ AddArmorList           ++ AddCharList        ), +     Output = jiffy:encode(OutputList),     Output. | 


