summaryrefslogtreecommitdiff |
diff options
Diffstat (limited to 'src/roster-editor/src/Struct/Portrait.elm')
-rw-r--r-- | src/roster-editor/src/Struct/Portrait.elm | 32 |
1 files changed, 30 insertions, 2 deletions
diff --git a/src/roster-editor/src/Struct/Portrait.elm b/src/roster-editor/src/Struct/Portrait.elm index 809f732..125a416 100644 --- a/src/roster-editor/src/Struct/Portrait.elm +++ b/src/roster-editor/src/Struct/Portrait.elm @@ -2,13 +2,19 @@ module Struct.Portrait exposing ( Type, Ref, - none + none, + get_id, + get_name, + get_body_id, + get_icon_id, + decoder ) -- Elm ------------------------------------------------------------------------- +import Json.Decode +import Json.Decode.Pipeline -- Roster Editor --------------------------------------------------------------- -import Struct.Omnimods -------------------------------------------------------------------------------- -- TYPES ----------------------------------------------------------------------- @@ -38,3 +44,25 @@ none = body_id = "mammal", icon_id = "cat" } + +get_id : Type -> String +get_id p = p.id + +get_name : Type -> String +get_name p = p.name + +get_body_id : Type -> String +get_body_id p = p.body_id + +get_icon_id : Type -> String +get_icon_id p = p.icon_id + +decoder : (Json.Decode.Decoder Type) +decoder = + (Json.Decode.Pipeline.decode + Type + |> (Json.Decode.Pipeline.required "id" Json.Decode.string) + |> (Json.Decode.Pipeline.required "nam" Json.Decode.string) + |> (Json.Decode.Pipeline.required "bid" Json.Decode.string) + |> (Json.Decode.Pipeline.required "iid" Json.Decode.string) + ) |