diff options
Diffstat (limited to 'client/src/logic/items.ts')
-rw-r--r-- | client/src/logic/items.ts | 16 |
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] } } |