prendy
Version:
Make games with prerendered backdrops using babylonjs and repond
22 lines (21 loc) • 833 B
JavaScript
import { addItemToUniqueArray, removeItemFromArray } from "chootils/dist/arrays";
import delay from "delay";
import { setState } from "repond";
import { setGlobalState } from "../prendyUtils/global";
export async function enableMovement(canMove = true, revertDelay) {
setGlobalState({ playerMovingPaused: !canMove });
if (revertDelay) {
await delay(revertDelay);
setGlobalState({ playerMovingPaused: canMove });
}
}
export function takePickup(pickup, toHolding = true) {
setGlobalState((state) => ({
heldPickups: toHolding
? addItemToUniqueArray(state.heldPickups, pickup)
: removeItemFromArray(state.heldPickups, pickup),
}));
}
export function setPlayerAnimations(newAnimationNames) {
setState({ players: { main: { animationNames: newAnimationNames } } });
}