From 8a8e05469c15e8dea34c0466bc70a105628afc8e Mon Sep 17 00:00:00 2001 From: Nathanael Sensfelder Date: Sat, 23 Mar 2019 01:10:58 +0100 Subject: [Broken] ... --- .../BattleCharacters/Comm/AddArmor.elm | 30 ++++++++++++++++++++ .../BattleCharacters/Comm/AddGlyph.elm | 28 ++++++++++++++++++ .../BattleCharacters/Comm/AddGlyphBoard.elm | 33 ++++++++++++++++++++++ .../BattleCharacters/Comm/AddPortrait.elm | 19 +++++++++---- .../BattleCharacters/Comm/AddWeapon.elm | 33 ++++++++++++++++++++++ .../BattleCharacters/Struct/Character.elm | 13 +++++++++ src/shared/battle-map/BattleMap/Comm/AddTile.elm | 26 +++++++++++++++++ src/shared/battle-map/BattleMap/Comm/SetMap.elm | 28 ++++++++++++++++++ 8 files changed, 205 insertions(+), 5 deletions(-) create mode 100644 src/shared/battle-characters/BattleCharacters/Comm/AddArmor.elm create mode 100644 src/shared/battle-characters/BattleCharacters/Comm/AddGlyph.elm create mode 100644 src/shared/battle-characters/BattleCharacters/Comm/AddGlyphBoard.elm create mode 100644 src/shared/battle-characters/BattleCharacters/Comm/AddWeapon.elm create mode 100644 src/shared/battle-map/BattleMap/Comm/AddTile.elm create mode 100644 src/shared/battle-map/BattleMap/Comm/SetMap.elm (limited to 'src/shared') diff --git a/src/shared/battle-characters/BattleCharacters/Comm/AddArmor.elm b/src/shared/battle-characters/BattleCharacters/Comm/AddArmor.elm new file mode 100644 index 0000000..bdbb137 --- /dev/null +++ b/src/shared/battle-characters/BattleCharacters/Comm/AddArmor.elm @@ -0,0 +1,30 @@ +module BattleCharacters.Comm.AddArmor exposing (decode) + +-- Elm ------------------------------------------------------------------------- +import Json.Decode + +-- Battle Characters ----------------------------------------------------------- +import BattleCharacters.Struct.Armor + +-- Local Module ---------------------------------------------------------------- +import Struct.ServerReply + +-------------------------------------------------------------------------------- +-- TYPES ----------------------------------------------------------------------- +-------------------------------------------------------------------------------- + +-------------------------------------------------------------------------------- +-- LOCAL ----------------------------------------------------------------------- +-------------------------------------------------------------------------------- +internal_decoder : BattleCharacters.Struct.Armor.Type -> Struct.ServerReply.Type +internal_decoder ar = (Struct.ServerReply.AddArmor ar) + +-------------------------------------------------------------------------------- +-- EXPORTED -------------------------------------------------------------------- +-------------------------------------------------------------------------------- +decode : (Json.Decode.Decoder Struct.ServerReply.Type) +decode = + (Json.Decode.map + (internal_decoder) + (BattleCharacters.Struct.Armor.decoder) + ) diff --git a/src/shared/battle-characters/BattleCharacters/Comm/AddGlyph.elm b/src/shared/battle-characters/BattleCharacters/Comm/AddGlyph.elm new file mode 100644 index 0000000..100ed54 --- /dev/null +++ b/src/shared/battle-characters/BattleCharacters/Comm/AddGlyph.elm @@ -0,0 +1,28 @@ +module BattleCharacters.Comm.AddGlyph exposing (decode) + +-- Elm ------------------------------------------------------------------------- +import Json.Decode + +-- Battle Characters ----------------------------------------------------------- +import BattleCharacters.Struct.Glyph +import BattleCharacters.Struct.GlyphBoard + +-- Local Module ---------------------------------------------------------------- +import Struct.ServerReply + +-------------------------------------------------------------------------------- +-- TYPES ----------------------------------------------------------------------- +-------------------------------------------------------------------------------- + +-------------------------------------------------------------------------------- +-- LOCAL ----------------------------------------------------------------------- +-------------------------------------------------------------------------------- +internal_decoder : BattleCharacters.Struct.Glyph.Type -> Struct.ServerReply.Type +internal_decoder gl = (Struct.ServerReply.AddGlyph gl) + +-------------------------------------------------------------------------------- +-- EXPORTED -------------------------------------------------------------------- +-------------------------------------------------------------------------------- +decode : (Json.Decode.Decoder Struct.ServerReply.Type) +decode = + (Json.Decode.map (internal_decoder) (BattleCharacters.Struct.Glyph.decoder)) diff --git a/src/shared/battle-characters/BattleCharacters/Comm/AddGlyphBoard.elm b/src/shared/battle-characters/BattleCharacters/Comm/AddGlyphBoard.elm new file mode 100644 index 0000000..825e940 --- /dev/null +++ b/src/shared/battle-characters/BattleCharacters/Comm/AddGlyphBoard.elm @@ -0,0 +1,33 @@ +module BattleCharacters.Comm.AddGlyphBoard exposing (decode) + +-- Elm ------------------------------------------------------------------------- +import Json.Decode + +-- Battle Characters ----------------------------------------------------------- +import BattleCharacters.Struct.GlyphBoard + +-- Local Module----------------------------------------------------------------- +import Struct.ServerReply + +-------------------------------------------------------------------------------- +-- TYPES ----------------------------------------------------------------------- +-------------------------------------------------------------------------------- + +-------------------------------------------------------------------------------- +-- LOCAL ----------------------------------------------------------------------- +-------------------------------------------------------------------------------- +internal_decoder : ( + BattleCharacters.Struct.GlyphBoard.Type -> + Struct.ServerReply.Type + ) +internal_decoder glb = (Struct.ServerReply.AddGlyphBoard glb) + +-------------------------------------------------------------------------------- +-- EXPORTED -------------------------------------------------------------------- +-------------------------------------------------------------------------------- +decode : (Json.Decode.Decoder Struct.ServerReply.Type) +decode = + (Json.Decode.map + (internal_decoder) + (BattleCharacters.Struct.GlyphBoard.decoder) + ) diff --git a/src/shared/battle-characters/BattleCharacters/Comm/AddPortrait.elm b/src/shared/battle-characters/BattleCharacters/Comm/AddPortrait.elm index a9c848b..321684c 100644 --- a/src/shared/battle-characters/BattleCharacters/Comm/AddPortrait.elm +++ b/src/shared/battle-characters/BattleCharacters/Comm/AddPortrait.elm @@ -1,10 +1,12 @@ -module Comm.AddPortrait exposing (decode) +module BattleCharacters.Comm.AddPortrait exposing (decode) -- Elm ------------------------------------------------------------------------- import Json.Decode --- BattleCharacters ------------------------------------------------------------ -import Struct.Portrait +-- Battle Characters ----------------------------------------------------------- +import BattleCharacters.Struct.Portrait + +-- Local Module ---------------------------------------------------------------- import Struct.ServerReply -------------------------------------------------------------------------------- @@ -14,11 +16,18 @@ import Struct.ServerReply -------------------------------------------------------------------------------- -- LOCAL ----------------------------------------------------------------------- -------------------------------------------------------------------------------- -internal_decoder : Struct.Portrait.Type -> Struct.ServerReply.Type +internal_decoder : ( + BattleCharacters.Struct.Portrait.Type -> + Struct.ServerReply.Type + ) internal_decoder pt = (Struct.ServerReply.AddPortrait pt) -------------------------------------------------------------------------------- -- EXPORTED -------------------------------------------------------------------- -------------------------------------------------------------------------------- decode : (Json.Decode.Decoder Struct.ServerReply.Type) -decode = (Json.Decode.map (internal_decoder) (Struct.Portrait.decoder)) +decode = + (Json.Decode.map + (internal_decoder) + (BattleCharacters.Struct.Portrait.decoder) + ) diff --git a/src/shared/battle-characters/BattleCharacters/Comm/AddWeapon.elm b/src/shared/battle-characters/BattleCharacters/Comm/AddWeapon.elm new file mode 100644 index 0000000..6a05978 --- /dev/null +++ b/src/shared/battle-characters/BattleCharacters/Comm/AddWeapon.elm @@ -0,0 +1,33 @@ +module BattleCharacters.Comm.AddWeapon exposing (decode) + +-- Elm ------------------------------------------------------------------------- +import Json.Decode + +-- Battle Characters ----------------------------------------------------------- +import BattleCharacters.Struct.Weapon + +-- Local Module ---------------------------------------------------------------- +import Struct.ServerReply + +-------------------------------------------------------------------------------- +-- TYPES ----------------------------------------------------------------------- +-------------------------------------------------------------------------------- + +-------------------------------------------------------------------------------- +-- LOCAL ----------------------------------------------------------------------- +-------------------------------------------------------------------------------- +internal_decoder : ( + BattleCharacters.Struct.Weapon.Type -> + Struct.ServerReply.Type + ) +internal_decoder wp = (Struct.ServerReply.AddWeapon wp) + +-------------------------------------------------------------------------------- +-- EXPORTED -------------------------------------------------------------------- +-------------------------------------------------------------------------------- +decode : (Json.Decode.Decoder Struct.ServerReply.Type) +decode = + (Json.Decode.map + (internal_decoder) + (BattleCharacters.Struct.Weapon.decoder) + ) diff --git a/src/shared/battle-characters/BattleCharacters/Struct/Character.elm b/src/shared/battle-characters/BattleCharacters/Struct/Character.elm index adf7ca7..7b34bd4 100644 --- a/src/shared/battle-characters/BattleCharacters/Struct/Character.elm +++ b/src/shared/battle-characters/BattleCharacters/Struct/Character.elm @@ -6,13 +6,16 @@ module BattleCharacters.Struct.Character exposing set_name, get_equipment, set_equipment, + dirty_set_equipment, get_omnimods, set_extra_omnimods, + dirty_set_extra_omnimods get_attributes, get_statistics, get_active_weapon, get_inactive_weapon, switch_weapons, + dirty_switch_weapons, decoder, encode, resolve @@ -122,12 +125,18 @@ get_equipment c = c.equipment set_equipment : BattleCharacters.Struct.Equipment.Type -> Type -> Type set_equipment equipment char = (refresh_omnimods {char | equipment = equipment}) +dirty_set_equipment : BattleCharacters.Struct.Equipment.Type -> Type -> Type +dirty_set_equipment equipment char = {char | equipment = equipment} + get_omnimods : Type -> Battle.Struct.Omnimods.Type get_omnimods c = c.current_omnimods set_extra_omnimods : Battle.Struct.Omnimods.Type -> Type -> Type set_extra_omnimods om c = (refresh_omnimods {char | extra_omnimods = om}) +dirty_set_extra_omnimods : Battle.Struct.Omnimods.Type -> Type -> Type +dirty_set_extra_omnimods om c = {char | extra_omnimods = om} + get_attributes : Type -> Battle.Struct.Attributes.Type get_attributes char = char.attributes @@ -140,6 +149,10 @@ switch_weapons char = {char | is_using_secondary = (not char.is_using_secondary)} ) +dirty_switch_weapons : Type -> Type +dirty_switch_weapons char = + {char | is_using_secondary = (not char.is_using_secondary)} + decoder : (Json.Decode.Decoder Unresolved) decoder : (Json.Decode.succeed diff --git a/src/shared/battle-map/BattleMap/Comm/AddTile.elm b/src/shared/battle-map/BattleMap/Comm/AddTile.elm new file mode 100644 index 0000000..e904362 --- /dev/null +++ b/src/shared/battle-map/BattleMap/Comm/AddTile.elm @@ -0,0 +1,26 @@ +module BattleMap.Comm.AddTile exposing (decode) + +-- Elm ------------------------------------------------------------------------- +import Json.Decode + +-- Battle Map ------------------------------------------------------------------ +import BattleMap.Struct.Tile + +-- Local Module ---------------------------------------------------------------- +import Struct.ServerReply + +-------------------------------------------------------------------------------- +-- TYPES ----------------------------------------------------------------------- +-------------------------------------------------------------------------------- + +-------------------------------------------------------------------------------- +-- LOCAL ----------------------------------------------------------------------- +-------------------------------------------------------------------------------- +internal_decoder : BattleMap.Struct.Tile.Type -> Struct.ServerReply.Type +internal_decoder wp = (Struct.ServerReply.AddTile wp) + +-------------------------------------------------------------------------------- +-- EXPORTED -------------------------------------------------------------------- +-------------------------------------------------------------------------------- +decode : (Json.Decode.Decoder Struct.ServerReply.Type) +decode = (Json.Decode.map (internal_decoder) (BattleMap.Struct.Tile.decoder)) diff --git a/src/shared/battle-map/BattleMap/Comm/SetMap.elm b/src/shared/battle-map/BattleMap/Comm/SetMap.elm new file mode 100644 index 0000000..bfe8425 --- /dev/null +++ b/src/shared/battle-map/BattleMap/Comm/SetMap.elm @@ -0,0 +1,28 @@ +module BattleMap.Comm.SetMap exposing (decode) + +-- Elm ------------------------------------------------------------------------- +import Json.Decode + +-- Battle Map ------------------------------------------------------------------ +import BattleMap.Struct.Map + +-- Local Module ---------------------------------------------------------------- +import Struct.ServerReply + +-------------------------------------------------------------------------------- +-- TYPES ----------------------------------------------------------------------- +-------------------------------------------------------------------------------- + +-------------------------------------------------------------------------------- +-- LOCAL ----------------------------------------------------------------------- +-------------------------------------------------------------------------------- + +-------------------------------------------------------------------------------- +-- EXPORTED -------------------------------------------------------------------- +-------------------------------------------------------------------------------- +decode : (Json.Decode.Decoder Struct.ServerReply.Type) +decode = + (Json.Decode.map + (\map -> (Struct.ServerReply.SetMap map)) + (BattleMap.Struct.Map.decoder) + ) -- cgit v1.2.3-70-g09d2