summaryrefslogtreecommitdiff
path: root/client/src/logic/items.ts
diff options
context:
space:
mode:
authorTyler Murphy <tylerm@tylerm.dev>2023-06-29 11:40:46 -0400
committerTyler Murphy <tylerm@tylerm.dev>2023-06-29 11:40:46 -0400
commitf5fcce110a915fca1b114001962170733276e5df (patch)
tree6ce82c649d7377b42e75c9feb88d73e4aa15d713 /client/src/logic/items.ts
parentghost (diff)
downloadtuxman-f5fcce110a915fca1b114001962170733276e5df.tar.gz
tuxman-f5fcce110a915fca1b114001962170733276e5df.tar.bz2
tuxman-f5fcce110a915fca1b114001962170733276e5df.zip
audio, finalize gameplay, wrap around map, stuff
Diffstat (limited to 'client/src/logic/items.ts')
-rw-r--r--client/src/logic/items.ts16
1 files changed, 15 insertions, 1 deletions
diff --git a/client/src/logic/items.ts b/client/src/logic/items.ts
index 5f8a38e..79624d3 100644
--- a/client/src/logic/items.ts
+++ b/client/src/logic/items.ts
@@ -1,5 +1,5 @@
import { getMap, getItemKey } from "../map.js"
-import { GameState, Map, Player } from "../types.js"
+import { GameState, ItemType, Map, Player } from "../types.js"
const ceilHalf = (n: number): number => {
return Math.ceil(n*2)/2
@@ -12,10 +12,24 @@ const floorHalf = (n: number): number => {
const eatItems = (data: GameState, map: Map, player: Player) => {
let pos = player.pos
+
+ player.atePellets = Math.max(player.atePellets - 1, 0)
for (let x = ceilHalf(pos.x-.5); x <= floorHalf(pos.x+.5); x += .5) {
for (let y = ceilHalf(pos.y-.5); y <= floorHalf(pos.y+.5); y += .5) {
let item_key = getItemKey(x, y, map.width)
+
+ let item = data.items[item_key]
+ if (!item) {
+ continue
+ }
+
+ player.atePellets = 30
+
+ if (item.type == ItemType.THICC_DOT) {
+ player.thiccLeft += 60 * 10
+ }
+
delete data.items[item_key]
}
}