import { getMap, getItemKey } from "../map.js" import { GameState, Map, Player } from "../types.js" const ceilHalf = (n: number): number => { return Math.ceil(n*2)/2 } const floorHalf = (n: number): number => { return Math.floor(n*2)/2 } const eatItems = (data: GameState, map: Map, player: Player) => { let pos = player.pos 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) delete data.items[item_key] } } } export const updateItems = (data: GameState) => { let map = getMap(data.mapId) if (!map) return for(const id in data.input) { const player = data.players[id] if(!player) { continue; } eatItems(data, map, player) } }