From: Carl Worth <cworth@cworth.org>
Date: Fri, 5 Jun 2020 23:14:04 +0000 (-0700)
Subject: tictactoe: Simplify code by not reusing the expression "this.state"
X-Git-Url: https://git.cworth.org/git?a=commitdiff_plain;h=cf23efebe1600d10396b674e20e7cdf7f88bb58f;p=lmno-server

tictactoe: Simplify code by not reusing the expression "this.state"

Instead, just call this once with "const state = this.state" and then
just use "state" for all subsequent uses.
---

diff --git a/tictactoe.js b/tictactoe.js
index d123c57..9856479 100644
--- a/tictactoe.js
+++ b/tictactoe.js
@@ -15,6 +15,7 @@ class TicTacToe extends Game {
   /* Returns true if move was legal and added, false otherwise. */
   add_move(player, square) {
 
+    const state = this.state;
     const result = super.add_move(player, square);
 
     /* If the generic Game class can reject this move, then we don't
@@ -23,19 +24,19 @@ class TicTacToe extends Game {
       return result;
 
     /* Cannot move to an occupied square. */
-    if (this.state.board[square])
+    if (state.board[square])
     {
       return { legal: false,
                message: "Square is already occupied" };
     }
 
-    this.state.board[square] = this.state.team_to_play;
-    this.state.moves.push(square);
+    state.board[square] = state.team_to_play;
+    state.moves.push(square);
 
-    if (this.state.team_to_play === "X")
-      this.state.team_to_play = "O";
+    if (state.team_to_play === "X")
+      state.team_to_play = "O";
     else
-      this.state.team_to_play = "X";
+      state.team_to_play = "X";
 
     return { legal: true };
   }