From 05aae9baa2b61882be578d9660687fb2d0eb1f47 Mon Sep 17 00:00:00 2001 From: nsensfel Date: Thu, 7 Jun 2018 16:59:52 +0200 Subject: Woops, forgot to actually send the new stuff. --- src/battlemap/query/bm_load_state.erl | 58 ++++++++++++++++++++++++----------- src/battlemap/reply/bm_add_char.erl | 3 +- 2 files changed, 42 insertions(+), 19 deletions(-) diff --git a/src/battlemap/query/bm_load_state.erl b/src/battlemap/query/bm_load_state.erl index 4af2385..9234dff 100644 --- a/src/battlemap/query/bm_load_state.erl +++ b/src/battlemap/query/bm_load_state.erl @@ -64,27 +64,49 @@ fetch_data (Input) -> generate_reply (QueryState, Input) -> PlayerID = Input#input.player_id, Battle = QueryState#query_state.battle, + SetTimeline = + bm_set_timeline:generate + ( + bm_battle:get_encoded_last_turns_effects(Battle) + ), - jiffy:encode - ( - [ - bm_set_timeline:generate - ( - bm_battle:get_encoded_last_turns_effects(Battle) - ), - bm_set_map:generate(bm_battle:get_battlemap(Battle)) - | - array:sparse_to_list + SetMap = bm_set_map:generate(bm_battle:get_battlemap(Battle)), + + AddCharList = + array:sparse_to_list + ( + array:map ( - array:map - ( - fun (IX, Character) -> - bm_add_char:generate(IX, Character, PlayerID) - end, - bm_battle:get_characters(Battle) - ) + fun (IX, Character) -> + bm_add_char:generate(IX, Character, PlayerID) + end, + bm_battle:get_characters(Battle) ) - ] + ), + + AddWeaponList = + lists:map + ( + fun (WeaponID) -> + bm_add_weapon:generate(sh_weapon:from_id(WeaponID)) + end, + bm_battle:get_used_weapon_ids(Battle) + ), + + AddArmorList = + lists:map + ( + fun (ArmorID) -> + bm_add_armor:generate(sh_armor:from_id(ArmorID)) + end, + bm_battle:get_used_armor_ids(Battle) + ), + + jiffy:encode + ( + [SetTimeline, SetMap | AddWeaponList] + ++ AddArmorList + ++ AddCharList ). -spec handle (binary()) -> binary(). diff --git a/src/battlemap/reply/bm_add_char.erl b/src/battlemap/reply/bm_add_char.erl index d6f5965..227c93a 100644 --- a/src/battlemap/reply/bm_add_char.erl +++ b/src/battlemap/reply/bm_add_char.erl @@ -73,6 +73,7 @@ generate (IX, Character, PlayerID) -> }, {<<"att">>, attributes_as_json(Attributes)}, {<<"awp">>, ActiveWeapon}, - {<<"swp">>, SecondaryWeapon} + {<<"swp">>, SecondaryWeapon}, + {<<"ar">>, bm_character:get_armor_id(Character)} ] }. -- cgit v1.2.3-70-g09d2