import { Component } from "../../hierarchy_object/Component"; import type { ComponentConstructor } from "../../hierarchy_object/ComponentConstructor"; import type { GridEventMap } from "./GridEventMap"; /** * for player interact with GridEventMap you should add this component to your player * and use PlayerGridEventInvoker.addGridEventMap to register your grid event map * * * disallow multiple component * * require components: `PlayerGridMovementController` */ export declare class PlayerGridEventInvoker extends Component { readonly disallowMultipleComponent: boolean; readonly requiredComponents: ComponentConstructor[]; private _collideSize; private _playerGridMovementController; private readonly _gridEventMaps; private readonly onMoveToTarget; awake(): void; onDestroy(): void; /** * add GridEventMap to this player, you should add GridEventMap for interaction * @param gridEventMap grid event map */ addGridEventMap(gridEventMap: GridEventMap): void; /** * remove GridEventMap from this player * @param gridEventMap grid event map */ removeGridEventMap(gridEventMap: GridEventMap): void; /** * remove all GridEventMap from this player * @param gridEventMap grid event map */ removeAllGridEventMap(): void; /** * collide size of `tryInvokeEvent` (default: 0.5) * * The larger this value, the greater the range of event invocation * * The default is to match the tile size of 1x1 */ get collideSize(): number; /** * collide size of `tryInvokeEvent` (default: 0.5) * * The larger this value, the greater the range of event invocation * * The default is to match the tile size of 1x1 */ set collideSize(value: number); }