Files
GDevelop/GDJS/Runtime/RuntimeCustomObjectLayer.ts
T
Florian Rival 1fc3e48caf Revert new basis expressions
Don't show in changelog
2026-04-30 18:20:55 +02:00

115 lines
2.9 KiB
TypeScript

/*
* GDevelop JS Platform
* Copyright 2013-2016 Florian Rival (Florian.Rival@gmail.com). All rights reserved.
* This project is released under the MIT License.
*/
namespace gdjs {
/**
* Represents a layer of a custom object. It doesn't allow to move any camera
* because it doesn't make sense inside an object.
* @category Core Engine > Layers
*/
export class RuntimeCustomObjectLayer extends gdjs.RuntimeLayer {
/**
* @param layerData The data used to initialize the layer
* @param instanceContainer The container in which the layer is used
*/
constructor(
layerData: LayerData,
instanceContainer: gdjs.RuntimeInstanceContainer
) {
super(layerData, instanceContainer);
// Let the renderer do its final set up:
this._renderer.onCreated();
}
override onGameResolutionResized(
oldGameResolutionOriginX: float,
oldGameResolutionOriginY: float
): void {}
override getCameraX(cameraId?: integer): float {
return 0;
}
override getCameraY(cameraId?: integer): float {
return 0;
}
override setCameraX(x: float, cameraId?: integer): void {}
override setCameraY(y: float, cameraId?: integer): void {}
override getCameraWidth(cameraId?: integer): float {
return 0;
}
override getCameraHeight(cameraId?: integer): float {
return 0;
}
override setCameraZoom(newZoom: float, cameraId?: integer): void {}
override getCameraZoom(cameraId?: integer): float {
return 1;
}
override setCameraZ(z: float, fov: float, cameraId?: integer): void {}
override getCameraZ(fov: float | null, cameraId?: integer): float {
return 0;
}
override getCameraRotation(cameraId?: integer): float {
return 0;
}
override setCameraRotation(rotation: float, cameraId?: integer): void {}
override convertCoords(
x: float,
y: float,
cameraId: integer,
result: FloatPoint
): FloatPoint {
// TODO EBO use an AffineTransformation to avoid chained calls.
// The result parameter used to be optional.
return this._runtimeScene.convertCoords(x, y, result || [0, 0]);
}
override convertInverseCoords(
x: float,
y: float,
cameraId: integer,
result: FloatPoint
): FloatPoint {
// TODO EBO use an AffineTransformation to avoid chained calls.
// The result parameter used to be optional.
return this._runtimeScene.convertInverseCoords(x, y, result || [0, 0]);
}
override applyLayerInverseTransformation(
x: float,
y: float,
cameraId: integer,
result: FloatPoint
): FloatPoint {
result[0] = x;
result[1] = y;
return result;
}
override applyLayerTransformation(
x: float,
y: float,
cameraId: integer,
result: FloatPoint
): FloatPoint {
result[0] = x;
result[1] = y;
return result;
}
}
}