anchor.diff:                              let (msgs, battle) = (msgs @ [TechCharacterAmbient (sourceIndex, targetIndex, techType)], battle)
                               withMsgs msgs battle
                           else
  -                            // TODO: change target automatically
  +                            // TODO: change target automatically, cancelling if not valid targets.
                               let battle = Battle.updateCurrentCommandOpt (constant None) battle
                               withMsgs [ResetCharacter sourceIndex; PoiseCharacter sourceIndex] battle
                       | (_, _) ->
                           let battle = Battle.updateCurrentCommandOpt (constant None) battle
                           withMsgs [ResetCharacter sourceIndex; PoiseCharacter sourceIndex] battle
                   | None ->
  -                    // TODO: change target automatically
  +                    // TODO: change target automatically, cancelling if not valid targets.
                       let battle = Battle.updateCurrentCommandOpt (constant None) battle
                       withMsgs [ResetCharacter sourceIndex; PoiseCharacter sourceIndex] battle
               | None ->
  
positive.code:                         withMsgs [PoiseCharacter sourceIndex; PoiseCharacter targetIndex] battle
                      | _ -> just battle
                  | None ->
                      // TODO: change target automatically
                      let battle = Battle.updateCurrentCommandOpt (constant None) battle
                      withMsgs [ResetCharacter sourceIndex; PoiseCharacter sourceIndex] battle
              | None ->
  
negative.code:                                 withMsg (PoiseCharacter sourceIndex) battle
                          | _ -> just battle
                      | None ->
                          // TODO: change target automatically, cancelling if not valid targets.
                          let battle = Battle.updateCurrentCommandOpt (constant None) battle
                          withMsgs [ResetCharacter sourceIndex; PoiseCharacter sourceIndex] battle
                  | None ->
  