| summaryrefslogtreecommitdiff |
diff options
| author | nsensfel <SpamShield0@noot-noot.org> | 2018-09-13 17:50:58 +0200 |
|---|---|---|
| committer | nsensfel <SpamShield0@noot-noot.org> | 2018-09-13 17:50:58 +0200 |
| commit | 317037f9cca1109b4fb6825482c5bbb46b4c567b (patch) | |
| tree | b6c1ab434e40866797c88aa31f48ecbf17f9d487 /src/Struct/Player.elm | |
| parent | 9ec5806bc721734923ff4c93f7ef1f97a6a03248 (diff) | |
...
Diffstat (limited to 'src/Struct/Player.elm')
| -rw-r--r-- | src/Struct/Player.elm | 87 |
1 files changed, 32 insertions, 55 deletions
diff --git a/src/Struct/Player.elm b/src/Struct/Player.elm index 73fbdb3..7221fb9 100644 --- a/src/Struct/Player.elm +++ b/src/Struct/Player.elm @@ -1,39 +1,34 @@ module Struct.Player exposing ( Type, + get_ix, get_id, get_username, - get_maps, get_campaigns, get_invasions, get_events, - get_roster_id, - get_inventory_id, - decoder, - none + set_battles, + has_active_battles ) -- Elm ------------------------------------------------------------------------- import Json.Decode import Json.Decode.Pipeline --- Main Menu ------------------------------------------------------------------- +-- Extension ------------------------------------------------------------------- import Struct.BattleSummary -import Struct.MapSummary -------------------------------------------------------------------------------- -- TYPES ----------------------------------------------------------------------- -------------------------------------------------------------------------------- type alias Type = { + ix : Int, id : String, name : String, - maps : (List Struct.MapSummary.Type), campaigns : (List Struct.BattleSummary.Type), invasions : (List Struct.BattleSummary.Type), - events : (List Struct.BattleSummary.Type), - roster_id : String, - inventory_id : String + events : (List Struct.BattleSummary.Type) } -------------------------------------------------------------------------------- @@ -43,15 +38,15 @@ type alias Type = -------------------------------------------------------------------------------- -- EXPORTED -------------------------------------------------------------------- -------------------------------------------------------------------------------- +get_ix : Type -> Int +get_ix t = t.ix + get_id : Type -> String get_id t = t.id get_username : Type -> String get_username t = t.name -get_maps : Type -> (List Struct.MapSummary.Type) -get_maps t = t.maps - get_campaigns : Type -> (List Struct.BattleSummary.Type) get_campaigns t = t.campaigns @@ -61,47 +56,29 @@ get_invasions t = t.invasions get_events : Type -> (List Struct.BattleSummary.Type) get_events t = t.events -get_roster_id : Type -> String -get_roster_id t = t.roster_id - -get_inventory_id : Type -> String -get_inventory_id t = t.inventory_id - -decoder : (Json.Decode.Decoder Type) -decoder = - (Json.Decode.Pipeline.decode +set_battles : ( + (List Struct.BattleSummary.Type) -> + (List Struct.BattleSummary.Type) -> + (List Struct.BattleSummary.Type) -> + Type -> Type - |> (Json.Decode.Pipeline.required "id" Json.Decode.string) - |> (Json.Decode.Pipeline.required "nme" Json.Decode.string) - |> (Json.Decode.Pipeline.required - "maps" - (Json.Decode.list Struct.MapSummary.decoder) - ) - |> (Json.Decode.Pipeline.required - "cmps" - (Json.Decode.list Struct.BattleSummary.decoder) - ) - |> (Json.Decode.Pipeline.required - "invs" - (Json.Decode.list Struct.BattleSummary.decoder) - ) - |> (Json.Decode.Pipeline.required - "evts" - (Json.Decode.list Struct.BattleSummary.decoder) - ) - |> (Json.Decode.Pipeline.required "rtid" Json.Decode.string) - |> (Json.Decode.Pipeline.required "ivid" Json.Decode.string) ) - -none : Type -none = - { - id = "", - name = "Unknown", - maps = [], - campaigns = [], - invasions = [], - events = [], - roster_id = "", - inventory_id = "" +set_battles campaigns invasions events t = + {t | + campaigns = + (List.filter (Struct.BattleSummary.is_players_turn) campaigns), + invasions = + (List.filter (Struct.BattleSummary.is_players_turn) invasions), + events = (List.filter (Struct.BattleSummary.is_players_turn) events) } + +has_active_battles : Type -> Bool +has_active_battles t = + ( + ( + (List.length t.campaigns) + + (List.length t.invasions) + + (List.length t.events) + ) + > 0 + ) |


