diff --git a/src/components/Player/ActionMethods/buyCardActions.ts b/src/components/Player/ActionMethods/buyCardActions.ts index 9082960..edfad9d 100644 --- a/src/components/Player/ActionMethods/buyCardActions.ts +++ b/src/components/Player/ActionMethods/buyCardActions.ts @@ -7,7 +7,24 @@ export const tooExpensive = (card: CardData, state: AppState): boolean => { if (!currentPlayer) return true; for (let [gemType, cost] of Object.entries(card.resourceCost)) { - for (let [heldResource, quantity] of Object.entries(currentPlayer.inventory)) { + let totalBuyingPower = { + ruby: 0, + sapphire: 0, + emerald: 0, + diamond: 0, + onyx: 0, + gold: 0, + } + + for (let [key,quantity] of Object.entries(currentPlayer.inventory)) { + totalBuyingPower[key as keyof ResourceCost] += quantity; + } + + for (let each of currentPlayer.cards) { + totalBuyingPower[each.gemValue as keyof ResourceCost] += 1; + } + + for (let [heldResource, quantity] of Object.entries(totalBuyingPower)) { if (gemType === heldResource && quantity < cost) { return true; } diff --git a/src/components/Player/Player.tsx b/src/components/Player/Player.tsx index 3a4c3d4..6384bd4 100644 --- a/src/components/Player/Player.tsx +++ b/src/components/Player/Player.tsx @@ -32,12 +32,12 @@ export default function Player({ player, state, setState, setActionState }: Play {/* Static Data */}

Name: {player.name}

-

Score: {player.points}

Is {player.starter || "not"} round starter

{/* Dynamic data from state */}
+

Score: {dynamic?.points}

{dynamic?.turnActive ? prompt : '...'}

@@ -49,7 +49,7 @@ export default function Player({ player, state, setState, setActionState }: Play

Chips:

- { dynamic && Object.entries(dynamic?.inventory).map(([key,value]) => { + { dynamic && Object.entries(dynamic.inventory).map(([key,value]) => { return value > 0 &&

{key}: {value}

})}
@@ -60,7 +60,7 @@ export default function Player({ player, state, setState, setActionState }: Play return (

{data.gemValue} card

-

{data.points || null}

+

{data.points + " points" || null}

)}) } diff --git a/src/components/Resources/AvailableChips.tsx b/src/components/Resources/AvailableChips.tsx index e3bf6d3..486a4f0 100644 --- a/src/components/Resources/AvailableChips.tsx +++ b/src/components/Resources/AvailableChips.tsx @@ -3,7 +3,6 @@ import { ResourceCost } from "../../util/types"; import { useEffect } from "react"; import { v4 } from "uuid"; import "./AvailableChips.css" -import { setStateGetChips } from "../../util/stateSetters"; export default function AvailableChips({ state, setState, liftSelection }: ResourceProps) { useEffect(() => { diff --git a/src/components/Resources/SelectionView.tsx b/src/components/Resources/SelectionView.tsx index 20a7522..17e78a7 100644 --- a/src/components/Resources/SelectionView.tsx +++ b/src/components/Resources/SelectionView.tsx @@ -1,7 +1,5 @@ -import { v4 } from "uuid"; import { useEffect, useState } from "react"; -import { ResourceCost, StateProps } from "../../util/types"; -import { setStateGetChips } from "../../util/stateSetters"; +import { StateProps } from "../../util/propTypes"; import { GetChipsHTML } from "./ViewHTML"; export default function SelectionView({ state, setState }: StateProps) { diff --git a/src/util/initializeBoard.ts b/src/util/initializeBoard.ts index 09cb1ac..28db645 100644 --- a/src/util/initializeBoard.ts +++ b/src/util/initializeBoard.ts @@ -31,7 +31,6 @@ const setNobles = (state: AppState, setState: setStateType) => { } export const setCardRows = (state: AppState) => { - console.log('set cards'); let newDeck = state.gameboard.cardRows; for (const [key, value] of Object.entries(state.gameboard.deck)) { while (newDeck[key as keyof FullDeck].length < 4) {