Update ts definitions to r469.

This commit is contained in:
Davide Tantillo 2026-01-22 15:10:05 +01:00
parent 6aedab232e
commit 24e8a86081
19 changed files with 190 additions and 81 deletions

View File

@ -3,13 +3,21 @@
* @see {@link https://www.construct.net/make-games/manuals/construct-3/scripting/scripting-reference/behavior-interfaces/solid | ISolidBehaviorInstance documentation } */
declare class ISolidBehaviorInstance<InstType> extends IBehaviorInstance<InstType>
{
isEnabled: boolean;
readonly usesInstanceTags: boolean;
/**
* @deprecated Use setAllTags() or getAllTags() instead, which use more suitable data types than a space-separated string.
* @deprecated Use instance tags instead
*/
tags: string;
/**
* @deprecated Use instance tags instead
*/
setAllTags(tags: Iterable<string>): void;
getAllTags(): Set<string>;
isEnabled: boolean;
/**
* @deprecated Use instance tags instead
*/
getAllTags(): Set<string>;
}

View File

@ -13,5 +13,6 @@ declare namespace SDK {
OnCreate(): void;
OnPropertyChanged(id: string, value: EditorPropertyValueType): void;
OnAddedInEditor(): void;
}
}

View File

@ -53,6 +53,7 @@ declare namespace SDK {
SetSupportsColor(v: boolean): void;
SetCanBeBundled(v: boolean): void;
SetSupportsColor(v: boolean): void;
SetSupportsChangingSampling(v: boolean): void;
AddCommonPositionACEs(): void;
AddCommonSizeACEs(): void;

View File

@ -44,7 +44,7 @@ declare namespace SDK.Gfx {
PushLineCap(type: RendererLineCapMode): void;
PopLineCap(): void;
SetTexture(tex: SDK.Gfx.IWebGLTexture): void;
SetTexture(tex: SDK.Gfx.IWebGLTexture, sampling?: SamplingModeOrAutoType): void;
CreateDynamicTexture(width: number, height: number, opts?: TextureCreateOptions): SDK.Gfx.IWebGLTexture;
UpdateTexture(data: TextureUpdateDataType, tex: SDK.Gfx.IWebGLTexture, opts?: TextureUpdateOptions): void;
DeleteTexture(tex: SDK.Gfx.IWebGLTexture): void;

View File

@ -2,5 +2,7 @@ declare namespace SDK.Gfx {
class IWebGLTexture {
GetWidth(): number;
GetHeight(): number;
GetDefaultSampling(): SamplingModeType;
}
}

View File

@ -36,5 +36,10 @@ declare namespace SDK {
GetLayout(): SDK.ILayout;
ApplyBlendMode(iRenderer: SDK.Gfx.IWebGLRenderer): void;
SetSampling(sampling: SamplingModeOrAutoType): void;
GetSampling(): SamplingModeOrAutoType;
GetActiveSampling(): SamplingModeType;
}
}

View File

@ -0,0 +1,45 @@
type Model3DRenderModeType = "hierarchy" | "isolate";
type Model3DTransformTypes = "offset" | "rotation" | "scale";
/** Represents the 3D Model object.
* @see {@link https://www.construct.net/make-games/manuals/construct-3/scripting/scripting-reference/plugin-interfaces/3d-model | I3DModelInstance documentation } */
declare class I3DModelInstance extends IWorldInstance
{
loadModel(model: string, mesh?: string, animation?: string, playing?: boolean, progress?: number): Promise<null | undefined>;
onLoad(): void;
onError(): void;
modelName: string;
meshName: string;
animationName: string;
animationProgress: number;
isPlaying: boolean;
meshRenderMode: Model3DRenderModeType;
offsetX: number;
offsetY: number;
offsetZ: number;
rotationX: number;
rotationY: number;
rotationZ: number;
scaleX: number;
scaleY: number;
scaleZ: number;
setTransform(x: number, y: number, z: number, type: Model3DTransformTypes): void;
addTransform(x: number, y: number, z: number, type: Model3DTransformTypes): void;
subTransform(x: number, y: number, z: number, type: Model3DTransformTypes): void;
mulTransform(x: number, y: number, z: number, type: Model3DTransformTypes): void;
divTransform(x: number, y: number, z: number, type: Model3DTransformTypes): void;
animationDuration(animation: string): number;
getAllMeshes(): Array<string>;
getAllAnimations(): Array<string>;
play(animationName?: string, progress?: number): void;
stop(): void;
pause(): void;
resume(): void;
}

View File

@ -9,6 +9,8 @@ declare class IAdvancedRandomObjectType<InstType extends IInstance = IInstance>
seed: string;
octaves: number;
random(): number;
classic2d(x: number, y: number): number;
classic3d(x: number, y: number, z: number): number;
billow2d(x: number, y: number): number;

View File

@ -2,7 +2,7 @@
/** Represents the Construct Game Services object.
* @see {@link https://www.construct.net/make-games/manuals/construct-3/scripting/scripting-reference/plugin-interfaces/construct-game-services | ICGSObjectType documentation } */
type CGSSignInProvider = "Apple" | "BattleNet" | "Discord" | "Facebook" | "Github" | "Google" | "ItchIO" | "Microsoft" | "Reddit" | "Steam" | "Twitch" | "X" | "Yandex";
type CGSSignInProvider = "Apple" | "BattleNet" | "Discord" | "Facebook" | "Github" | "Google" | "ItchIO" | "Microsoft" | "Patreon" | "Reddit" | "Steam" | "X" | "Yandex";
interface CGSSignInOptions {
allowPersisting?: boolean;

View File

@ -35,7 +35,7 @@ declare class IInstance
hasTag(tag: string): boolean;
hasTags(...tagsArray: string[]): boolean;
setAllTags(tagsSet: Iterable<string>): void;
setAllTags(tags: Iterable<string>): void;
getAllTags(): Set<string>;
destroy(): void;
@ -45,4 +45,6 @@ declare class IInstance
signal(tag: string): void;
waitForSignal(tag: string): Promise<void>;
callCustomAction(name: string, ...params: CallFunctionParameter[]): Promise<void>;
}

View File

@ -35,6 +35,8 @@ declare class ILayer extends ConstructEventTarget<LayerEventMap>
blendMode: BlendModeParameter;
backgroundColor: Vec3Arr;
renderingMode: "2d" | "3d";
sampling: SamplingModeOrAutoType;
activeSampling: SamplingModeType;
scrollX: number;
scrollY: number;

View File

@ -34,6 +34,9 @@ declare class ILayout extends ConstructEventTarget<LayoutEventMap>
getScrollPosition(): Vec2Arr;
readonly isUnboundedScrolling: boolean;
sampling: SamplingModeOrAutoType;
activeSampling: SamplingModeType;
getLayer(nameOrIndex: LayerParameter): IAnyProjectLayer | null;
getAllLayers(): IAnyProjectLayer[];
allLayers(): Generator<IAnyProjectLayer>;

View File

@ -0,0 +1,21 @@
/** Represents mesh data created by the renderer. */
declare class IMeshData
{
readonly vertexCount: number;
readonly indexCount: number;
positions: Float32Array;
texCoords: Float32Array;
colors: Float32Array;
indices: Uint16Array | Uint32Array;
readonly debugLabel: string;
markDataChanged(bufferType: string, start: number, end: number): void;
markAllVertexDataChanged(start?: number, end?: number): void;
markIndexDataChanged(start?: number, end?: number): void;
fillColor(r: number, g: number, b: number, a: number): void;
release(): void;
}

View File

@ -35,4 +35,7 @@ declare class IObjectClass<InstanceType extends IInstance, EventMapType = Object
/** Get the first picked instance of this object type or family when called
* from an event sheet, or null if none is picked. */
getFirstPickedInstance<InstT extends InstanceType = InstanceType>(): InstT | null;
/** Call one of this object class's custom actions in the event sheet. */
callCustomAction<InstT extends InstanceType = InstanceType>(name: string, instances: Iterable<InstT>, ...params: CallFunctionParameter[]): Promise<void>;
}

View File

@ -3,11 +3,10 @@
* @see {@link https://www.construct.net/en/make-games/manuals/construct-3/scripting/scripting-reference/graphics-interfaces/irenderer-interface | IRenderer documentation } */
type TextureWrapMode = "clamp-to-edge" | "repeat" | "mirror-repeat";
type TextureSamplingMode = "nearest" | "bilinear" | "trilinear";
interface TextureCreateOptions {
wrapX?: TextureWrapMode,
wrapY?: TextureWrapMode,
sampling?: TextureSamplingMode,
wrapX?: TextureWrapMode;
wrapY?: TextureWrapMode;
defaultSampling?: SamplingModeType;
mipMap?: boolean
}
interface TextureUpdateOptions {
@ -20,6 +19,10 @@ type RendererLineCapMode = "butt" | "square";
type RendererCullFaceMode = "none" | "back" | "front";
type RendererFrontFaceWinding = "cw" | "ccw";
interface CreateMeshDataOptions {
debugLabel?: string;
}
declare class IRenderer
{
setAlphaBlendMode(): void;
@ -54,6 +57,8 @@ declare class IRenderer
quad3D2(tlx: number, tly: number, tlz: number, trx: number, try_: number, trz: number, brx: number, bry: number, brz: number, blx: number, bly: number, blz: number, texQuad: DOMQuad): void;
quad3D3(tlx: number, tly: number, tlz: number, trx: number, try_: number, trz: number, brx: number, bry: number, brz: number, blx: number, bly: number, blz: number, texQuad: DOMQuad, colorArr: Float32Array): void;
createMeshData(vertexCount: number, indexCount: number, opts?: CreateMeshDataOptions): IMeshData;
drawMeshData(meshData: IMeshData, indexOffset?: number, indexCount?: number): void;
drawMesh(posArr: Float32Array, uvArr: Float32Array, indexArr: Uint16Array, colorArr?: Float32Array): void;
convexPoly(pointsArray: number[]): void;
@ -69,7 +74,7 @@ declare class IRenderer
pushLineCap(lineCap: RendererLineCapMode): void;
popLineCap(): void;
setTexture(texture: ITexture): void;
setTexture(texture: ITexture, sampling?: SamplingModeOrAutoType): void;
createStaticTexture(data: TextureStaticDataType, opts?: TextureCreateOptions): Promise<ITexture>;
createDynamicTexture(width: number, height: number, opts?: TextureCreateOptions): ITexture;
updateTexture(data: TextureUpdateDataType, texture: ITexture, opts?: TextureUpdateOptions): void;

View File

@ -16,8 +16,10 @@ type LayerParameter = string | number;
type ImagePointParameter = string | number;
type BlendModeParameter = "normal" | "additive" | "copy" | "destination-over" | "source-in" | "destination-in" | "source-out" | "destination-out" | "source-atop" | "destination-atop" | "lighten" | "darken" | "multiply" | "screen";
type FramerateModeType = "vsync" | "unlimited-tick" | "unlimited-frame";
type FramerateModeType = "vsync" | "fixed" | "unlimited-tick" | "unlimited-frame";
type SamplingModeType = "nearest" | "bilinear" | "trilinear";
type SamplingModeOrAutoType = "auto" | "nearest" | "bilinear" | "trilinear";
type AnisotropicFilteringModeType = "auto" | "off" | "2x" | "3x" | "4x" | "8x" | "16x";
type TextAlignHorizontalMode = "left" | "center" | "right";
type TextAlignVerticalMode = "top" | "center" | "bottom";
@ -149,8 +151,9 @@ declare class IRuntime extends ConstructEventTarget<RuntimeEventMap>
readonly viewportHeight: number;
getViewportSize(): Vec2Arr;
readonly sampling: SamplingModeType;
sampling: SamplingModeType;
isPixelRoundingEnabled: boolean;
anisotropicFiltering: AnisotropicFilteringModeType;
get dt(): number;
get dtRaw(): number;
@ -170,6 +173,7 @@ declare class IRuntime extends ConstructEventTarget<RuntimeEventMap>
get cpuUtilisation(): number;
get gpuUtilisation(): number;
framerateMode: FramerateModeType;
fixedFramerate: number;
minDt: number;
maxDt: number;
@ -178,6 +182,7 @@ declare class IRuntime extends ConstructEventTarget<RuntimeEventMap>
getInstanceByUid(uid: number): IInstance | null;
sortZOrder(iterable: Iterable<IWorldInstance>, callback: (a: IWorldInstance, b: IWorldInstance) => number): void;
destroyMultiple(instances: Iterable<IInstance>): void;
/** Call a function in an event sheet, by a case-insensitive string of its name.
* Each parameter provided for 'params' is passed to the function.

View File

@ -5,4 +5,6 @@ declare class ITexture
{
readonly width: number;
readonly height: number;
readonly defaultSampling: SamplingModeType;
}

View File

@ -78,6 +78,8 @@ declare class IWorldInstance extends IInstance
opacity: number;
colorRgb: Vec3Arr;
blendMode: BlendModeParameter;
sampling: SamplingModeOrAutoType;
activeSampling: SamplingModeType;
effects: IEffectInstance[];
moveToTop(): void;