From 79aa06aed5804f3d84e08aeb413f266029ce6fe9 Mon Sep 17 00:00:00 2001 From: evanpelle Date: Thu, 5 Sep 2024 17:17:15 -0700 Subject: [PATCH] made 3 terrain types, rebalanced game --- TODO.txt | 2 +- resources/images/Favicon.png | Bin 11915 -> 7889 bytes src/core/configuration/DefaultConfig.ts | 22 +++++++++++++------ src/core/configuration/DevConfig.ts | 28 ++++++++++++------------ src/core/execution/AttackExecution.ts | 12 +++++++++- 5 files changed, 41 insertions(+), 23 deletions(-) diff --git a/TODO.txt b/TODO.txt index c735a10a0..7ff2644f0 100644 --- a/TODO.txt +++ b/TODO.txt @@ -93,10 +93,10 @@ * boats leave trails DONE 9/3/2024 * send boat even if touching DONE 9/4/2024 * when attacking by boat, attack execution only starts from boat pixel DONE 9/4/2024 +* Make three terrain types: Plains, highlands, mountains DONE 9/5/2024 * directed expansion * more random names for game id & client id * Make fake humans -* Make three terrain types: Plains, highlands, mountains * UI: win condition & popup * UI: boats * UI: current attacks diff --git a/resources/images/Favicon.png b/resources/images/Favicon.png index 1db1cb9c584d873a8000b49ed8efca12f57c6faa..71c071e73fdcecb7b765feb99c176a31154c5788 100644 GIT binary patch literal 7889 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 u=r*_4oWw6Z_ 2) { numOwnedByMe = 10 } + let mag = 0 + switch (tile.terrain()) { + case TerrainType.Plains: + mag = 1 + case TerrainType.Highland: + mag = 2 + case TerrainType.Mountain: + mag = 5 + } this.toConquer.enqueue(new TileContainer( neighbor, dist / 100 + this.random.nextInt(0, 2) - numOwnedByMe + Math.floor(tile.magnitude() / 10),