summaryrefslogtreecommitdiff |
diff options
Diffstat (limited to 'src/battlemap/struct/bm_battle.erl')
-rw-r--r-- | src/battlemap/struct/bm_battle.erl | 216 |
1 files changed, 0 insertions, 216 deletions
diff --git a/src/battlemap/struct/bm_battle.erl b/src/battlemap/struct/bm_battle.erl deleted file mode 100644 index 4c93460..0000000 --- a/src/battlemap/struct/bm_battle.erl +++ /dev/null @@ -1,216 +0,0 @@ --module(bm_battle). - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%% TYPES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% --type id() :: binary(). - --record -( - battle, - { - id :: id(), - used_armor_ids :: list(sh_armor:id()), - used_weapon_ids :: list(sh_weapon:id()), - used_tile_ids :: list(bm_tile:id()), - battlemap :: bm_battlemap:type(), - characters :: array:array(bm_character:type()), - players :: array:array(bm_player:type()), - current_player_turn :: bm_player_turn:type() - } -). - --opaque type() :: #battle{}. - --export_type([type/0, id/0]). - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%% EXPORTS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%%% Accessors --export -( - [ - get_id/1, - get_used_weapon_ids/1, - get_used_armor_ids/1, - get_used_tile_ids/1, - get_battlemap/1, - get_characters/1, - get_character/2, - get_players/1, - get_player/2, - get_current_player_turn/1, - get_encoded_last_turns_effects/1, - - set_battlemap/2, - set_characters/2, - set_character/3, - set_players/2, - set_player/3, - set_current_player_turn/2, - - get_characters_field/0, - get_players_field/0, - get_current_player_turn_field/0 - ] -). - --export -( - [ - new/7 - ] -). - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%% LOCAL FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -get_all_timelines (Result, CurrentIndex, EndPoint, ArraySize, Players) -> - Player = array:get(CurrentIndex, Players), - Timeline = bm_player:get_timeline(Player), - NextIndex = ((CurrentIndex + 1) rem ArraySize), - NextResult = (Timeline ++ Result), - case CurrentIndex of - EndPoint -> - NextResult; - - _ -> - get_all_timelines(NextResult, NextIndex, EndPoint, ArraySize, Players) - end. - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%% EXPORTED FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%%% Accessors --spec get_id (type()) -> id(). -get_id (Battle) -> Battle#battle.id. - --spec get_used_weapon_ids (type()) -> list(sh_weapon:id()). -get_used_weapon_ids (Battle) -> Battle#battle.used_weapon_ids. - --spec get_used_armor_ids (type()) -> list(sh_armor:id()). -get_used_armor_ids (Battle) -> Battle#battle.used_armor_ids. - --spec get_used_tile_ids (type()) -> list(bm_tile:id()). -get_used_tile_ids (Battle) -> Battle#battle.used_tile_ids. - --spec get_battlemap (type()) -> bm_battlemap:type(). -get_battlemap (Battle) -> Battle#battle.battlemap. - --spec get_characters (type()) -> array:array(bm_character:type()). -get_characters (Battle) -> Battle#battle.characters. - --spec get_character (non_neg_integer(), type()) -> bm_character:type(). -get_character (IX, Battle) -> - array:get(IX, Battle#battle.characters). - --spec get_players (type()) -> array:array(bm_player:type()). -get_players (Battle) -> - Battle#battle.players. - --spec get_player (non_neg_integer(), type()) -> bm_player:type(). -get_player (IX, Battle) -> - array:get(IX, Battle#battle.players). - --spec get_current_player_turn (type()) -> bm_player_turn:type(). -get_current_player_turn (Battle) -> - Battle#battle.current_player_turn. - --spec get_encoded_last_turns_effects (type()) -> list(any()). -get_encoded_last_turns_effects (Battle) -> - CurrentPlayerTurn = Battle#battle.current_player_turn, - Players = Battle#battle.players, - CurrentPlayerIX = bm_player_turn:get_player_ix(CurrentPlayerTurn), - - PlayersCount = array:size(Players), - StartingPoint = ((CurrentPlayerIX + 1) rem PlayersCount), - get_all_timelines([], StartingPoint, CurrentPlayerIX, PlayersCount, Players). - --spec set_battlemap (bm_battlemap:type(), type()) -> type(). -set_battlemap (Battlemap, Battle) -> - Battle#battle - { - battlemap = Battlemap - }. - --spec set_characters (array:array(bm_character:type()), type()) -> type(). -set_characters (Characters, Battle) -> - Battle#battle - { - characters = Characters - }. - --spec set_character (non_neg_integer(), bm_character:type(), type()) -> type(). -set_character (IX, Character, Battle) -> - Battle#battle - { - characters = - array:set - ( - IX, - Character, - Battle#battle.characters - ) - }. - --spec set_players (array:array(bm_player:type()), type()) -> type(). -set_players (Players, Battle) -> - Battle#battle - { - players = Players - }. - --spec set_player (non_neg_integer(), bm_player:type(), type()) -> type(). -set_player (IX, Player, Battle) -> - Battle#battle - { - players = - array:set - ( - IX, - Player, - Battle#battle.players - ) - }. - --spec set_current_player_turn (bm_player_turn:type(), type()) -> type(). -set_current_player_turn (PlayerTurn, Battle) -> - Battle#battle - { - current_player_turn = PlayerTurn - }. - --spec new - ( - id(), - list(bm_player:type()), - bm_battlemap:type(), - list(bm_character:type()), - list(sh_weapon:id()), - list(sh_armor:id()), - list(bm_tile:id()) - ) - -> type(). -new (ID, PlayersAsList, Battlemap, CharactersAsList, UWIDs, UAIDs, UTIDs) -> - #battle - { - id = ID, - used_weapon_ids = UWIDs, - used_armor_ids = UAIDs, - used_tile_ids = UTIDs, - battlemap = Battlemap, - characters = array:from_list(CharactersAsList), - players = array:from_list(PlayersAsList), - current_player_turn = bm_player_turn:new(0, 0) - }. - - --spec get_characters_field () -> non_neg_integer(). -get_characters_field () -> #battle.characters. - --spec get_players_field () -> non_neg_integer(). -get_players_field () -> #battle.players. - --spec get_current_player_turn_field () -> non_neg_integer(). -get_current_player_turn_field () -> #battle.current_player_turn. |