anchor.diff:                              else withCmd model (Show Simulants.Field)
                           | _ -> withCmd model (Show Simulants.Battle)
                       | None -> withCmd model (Show Simulants.Field)
  -            | UpdateFieldModel field ->
  -                match model with
  -                | Gui _ -> just model
  -                | Gameplay _ -> just (Gameplay field)
  -            | UpdateBattleModel battle ->
  -                match model with
  -                | Gui _ -> just model
  -                | Gameplay field -> just (Gameplay (FieldModel.updateBattleOpt (constant (Some battle)) field))
  -            | SetModel model -> just model
   
           override this.Command (_, command, _, world) =
               let world =
  
positive.code:             base.Register (game, world)
  
          override this.Channel (_, _) =
              [Simulants.TitleExit.ClickEvent => [cmd Exit]
               Simulants.TitlePlay.ClickEvent => [msg (SetModel (Gameplay FieldModel.empty))]
               Simulants.TitleCredits.ClickEvent => [msg (SetModel (Gui Credits))]
               Simulants.CreditsBack.ClickEvent => [msg (SetModel (Gui Title))]
               Simulants.FieldBack.ClickEvent => [msg (SetModel (Gui Title))]
               Simulants.Game.UpdateEvent => [msg UpdateModel]
               Simulants.Field.FieldModel.ChangeEvent =|> fun evt -> [msg (UpdateFieldModel (evt.Data.Value :?> FieldModel))]
               Simulants.Battle.BattleModel.ChangeEvent =|> fun evt -> [msg (UpdateBattleModel (evt.Data.Value :?> BattleModel))]]
  
          override this.Message (model, message, _, world) =
              match message with
              | UpdateModel ->
                  match model with
                  | Gui Splashing -> just model
                  | Gui Title -> withCmd model (Show Simulants.Title)
                  | Gui Credits -> withCmd model (Show Simulants.Credits)
                  | Gameplay field ->
                      match field.BattleOpt with
                      | Some battle ->
  
negative.code: [<AutoOpen>]
  module OmniGame =
  
      type GuiModel =
          | Splashing
          | Title
          | Credits
  
      type [<NoComparison>] OmniModel =
          | Gui of GuiModel
          | Gameplay of FieldModel
  
      type [<NoComparison>] OmniMessage =
          | Update
          | UpdateModel of OmniModel
          | UpdateFieldModel of FieldModel
          | UpdateBattleModel of BattleModel
  
      type [<NoComparison>] OmniCommand =
          | Show of Screen
  