Adds the camera to available APIs with retrieving of the worldView
This commit is contained in:
parent
d672a2dead
commit
4356767739
9 changed files with 86 additions and 7 deletions
18
front/src/Api/Events/HasCameraMovedEvent.ts
Normal file
18
front/src/Api/Events/HasCameraMovedEvent.ts
Normal file
|
@ -0,0 +1,18 @@
|
|||
import * as tg from "generic-type-guard";
|
||||
|
||||
export const isHasCameraMovedEvent = new tg.IsInterface()
|
||||
.withProperties({
|
||||
x: tg.isNumber,
|
||||
y: tg.isNumber,
|
||||
width: tg.isNumber,
|
||||
height: tg.isNumber,
|
||||
})
|
||||
.get();
|
||||
|
||||
/**
|
||||
* A message sent from the game to the iFrame to notify a movement from the camera.
|
||||
*/
|
||||
|
||||
export type HasCameraMovedEvent = tg.GuardedType<typeof isHasCameraMovedEvent>;
|
||||
|
||||
export type HasCameraMovedEventCallback = (event: HasCameraMovedEvent) => void;
|
|
@ -32,6 +32,7 @@ import { isPlayerPropertyEvent } from "./PlayerPropertyEvent";
|
|||
import type { ChangeZoneEvent } from "./ChangeZoneEvent";
|
||||
import { isColorEvent } from "./ColorEvent";
|
||||
import { isPlayerPosition } from "./PlayerPosition";
|
||||
import type { HasCameraMovedEvent } from "./HasCameraMovedEvent";
|
||||
|
||||
export interface TypedMessageEvent<T> extends MessageEvent {
|
||||
data: T;
|
||||
|
@ -52,6 +53,7 @@ export type IframeEventMap = {
|
|||
displayBubble: null;
|
||||
removeBubble: null;
|
||||
onPlayerMove: undefined;
|
||||
onCameraMove: undefined;
|
||||
showLayer: LayerEvent;
|
||||
hideLayer: LayerEvent;
|
||||
setProperty: SetPropertyEvent;
|
||||
|
@ -84,6 +86,7 @@ export interface IframeResponseEventMap {
|
|||
leaveZoneEvent: ChangeZoneEvent;
|
||||
buttonClickedEvent: ButtonClickedEvent;
|
||||
hasPlayerMoved: HasPlayerMovedEvent;
|
||||
hasCameraMoved: HasCameraMovedEvent;
|
||||
menuItemClicked: MenuItemClickedEvent;
|
||||
setVariable: SetVariableEvent;
|
||||
messageTriggered: MessageReferenceEvent;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue