import { DEFAULT_CONTROLLER_GLYPHS } from "../input/controllerGlyphs"; import type { AbilityId } from "./types"; interface AbilityControllerBinding { buttonIndex: number; glyph: string; } export const ABILITY_CONTROLLER_BINDINGS: Record = { mend: { buttonIndex: 2, glyph: DEFAULT_CONTROLLER_GLYPHS.faceLeft }, renew: { buttonIndex: 3, glyph: DEFAULT_CONTROLLER_GLYPHS.faceTop }, shield: { buttonIndex: 1, glyph: DEFAULT_CONTROLLER_GLYPHS.faceRight }, purify: { buttonIndex: 0, glyph: DEFAULT_CONTROLLER_GLYPHS.faceBottom }, radiance: { buttonIndex: 4, glyph: DEFAULT_CONTROLLER_GLYPHS.leftShoulder }, barrier: { buttonIndex: 5, glyph: DEFAULT_CONTROLLER_GLYPHS.rightShoulder }, }; export const ABILITY_BY_CONTROLLER_BUTTON = Object.fromEntries( Object.entries(ABILITY_CONTROLLER_BINDINGS).map(([abilityId, binding]) => [binding.buttonIndex, abilityId]), ) as Partial>;