@turbowarp/types-tw
    Preparing search index...

    Interface RenderedTarget

    interface RenderedTarget {
        _customState: Partial<CustomState>;
        blocks: Blocks;
        comments: Record<string, Comment>;
        currentCostume: number;
        direction: number;
        draggable: boolean;
        drawableID: number;
        effects: Record<VM.Effect, number>;
        extensionStorage: ExtensionStorage;
        id: string;
        isOriginal: boolean;
        isStage: boolean;
        renderer: RenderWebGL;
        rotationStyle: RotationStyle;
        runtime: Runtime;
        size: number;
        soundEffects?: { pan: number; pitch: number };
        sprite: VM.Sprite;
        tempo: number;
        variables: Record<string, Variable>;
        videoTransparency: number;
        visible: boolean;
        volume: number;
        x: number;
        y: number;
        _getRenderedDirectionAndScale(): {
            direction: number;
            scale: [number, number];
        };
        addCostume(costume: Costume, index: number): void;
        addSound(sound: VM.Sound, index: number): void;
        clearEffects(): void;
        colorIsTouchingColor(
            rgb: [number, number, number],
            mask: [number, number, number],
        ): boolean;
        createComment(
            id: string,
            blockId: string,
            text: string,
            x: number,
            y: number,
            width: number,
            height: number,
            minimized?: boolean,
        ): void;
        createVariable(
            id: string,
            name: string,
            type: VM.VariableType,
            isCloud?: boolean,
        ): void;
        deleteCostume(costumeIndex: number): Costume | null;
        deleteSound(soundIndex: number): VM.Sound | null;
        dispose(): void;
        duplicate(): Promise<RenderedTarget>;
        emit<K extends keyof RenderedTargetEventMap>(
            event: K,
            ...args: EventEmitterArgs<RenderedTargetEventMap, K>,
        ): void;
        getBounds(): Rectangle;
        getBoundsForBubble(): Rectangle;
        getCostumeIndexByName(name: string): number;
        getCostumes(): Costume[];
        getCurrentCostume(): Costume;
        getCustomState<T extends keyof CustomState>(
            name: T,
        ): CustomState[T] | undefined;
        getLayerOrder(): number;
        getName(): string;
        getSounds(): VM.Sound[];
        goBackwardLayers(layers: number): void;
        goBehindOther(other: RenderedTarget): void;
        goForwardLayers(layers: number): void;
        goToBack(): void;
        goToFront(): void;
        isSprite(): boolean;
        isTouchingColor(rgb: [number, number, number]): boolean;
        isTouchingEdge(): boolean;
        isTouchingObject(object: string): boolean;
        isTouchingPoint(x: number, y: number): boolean;
        isTouchingSprite(spriteName: string): boolean;
        keepInFence(
            newX: number,
            newY: number,
            fence?: SimpleRectangle,
        ): [number, number];
        listeners<K extends keyof RenderedTargetEventMap>(
            event: K,
        ): EventEmitterCallback<RenderedTargetEventMap, K>[];
        lookupBroadcastByInputValue(name: string): BroadcastVariable | undefined;
        lookupBroadcastMsg(id: string, name: string): BroadcastVariable | undefined;
        lookupOrCreateList(id: string, name: string): ListVariable;
        lookupOrCreateVariable(id: string, name: string): ScalarVariable;
        lookupVariableById(id: string): Variable | undefined;
        lookupVariableByNameAndType(name: string): ScalarVariable | undefined;
        lookupVariableByNameAndType(
            name: string,
            type: "",
            skipStage?: boolean,
        ): ScalarVariable | undefined;
        lookupVariableByNameAndType(
            name: string,
            type: "list",
            skipStage?: boolean,
        ): ListVariable | undefined;
        lookupVariableByNameAndType(
            name: string,
            type: "broadcast_msg",
            skipStage?: boolean,
        ): BroadcastVariable | undefined;
        makeClone(): RenderedTarget | null;
        off<K extends keyof RenderedTargetEventMap>(
            event: K,
            callback: EventEmitterCallback<RenderedTargetEventMap, K>,
        ): void;
        on<K extends keyof RenderedTargetEventMap>(
            event: K,
            callback: EventEmitterCallback<RenderedTargetEventMap, K>,
        ): void;
        once<K extends keyof RenderedTargetEventMap>(
            event: K,
            callback: EventEmitterCallback<RenderedTargetEventMap, K>,
        ): void;
        onGreenFlag(): void;
        onStopAll(): void;
        postSpriteInfo(spriteInfo: PostedSpriteInfo): void;
        removeListener<K extends keyof RenderedTargetEventMap>(
            event: K,
            callback: EventEmitterCallback<RenderedTargetEventMap, K>,
        ): void;
        renameCostume(costumeIndex: number, newName: string): void;
        renameSound(soundIndex: number, name: string): void;
        reorderCostume(costumeIndex: number, newIndex: number): boolean;
        reorderSound(soundIndex: number, newIndex: number): boolean;
        setCostume(costumeIndex: number): void;
        setCustomState<T extends keyof CustomState>(
            name: T,
            value: CustomState[T],
        ): void;
        setDirection(direction: number): void;
        setDraggable(draggable: boolean): void;
        setEffect(effectName: VM.Effect, value: number): void;
        setRotationStyle(rotationStyle: RotationStyle): void;
        setSize(size: number): void;
        setVisible(visible: boolean): void;
        setXY(x: number, y: number, force?: boolean): void;
        startDrag(): void;
        stopDrag(): void;
        toJSON(): SerializedTarget;
        updateAllDrawableProperties(): void;
    }

    Hierarchy (View Summary)

    Index

    Properties

    _customState: Partial<CustomState>
    blocks: Blocks
    comments: Record<string, Comment>
    currentCostume: number

    The index of the current costume.

    direction: number

    Direction in degrees. Defaults to 90 (right). Can be from -179 to 180.

    draggable: boolean
    drawableID: number
    effects: Record<VM.Effect, number>

    Visual effects on the target. All default to 0.

    extensionStorage: ExtensionStorage
    id: string
    isOriginal: boolean
    isStage: boolean
    renderer: RenderWebGL
    rotationStyle: RotationStyle
    runtime: Runtime
    size: number

    The sprite's size. Default is 100.

    soundEffects?: { pan: number; pitch: number }

    Mirrors custom state.

    sprite: VM.Sprite
    tempo: number
    variables: Record<string, Variable>
    videoTransparency: number
    visible: boolean
    volume: number

    Defaults to 100.

    x: number
    y: number

    Methods

    • Returns { direction: number; scale: [number, number] }

      • direction: number
      • scale: [number, number]

        X scale then Y scale, both from 100. A negative scale means that the target should be flipped on that axis.

    • Parameters

      • rgb: [number, number, number]

        RGB channels from [0-255]

      • mask: [number, number, number]

        RGB channels from [0-255]

      Returns boolean

    • Parameters

      • id: string
      • blockId: string
      • text: string
      • x: number
      • y: number
      • width: number
      • height: number
      • Optionalminimized: boolean

      Returns void

    • Create a new variable. If the ID is already used, silently does nothing. isCloud is ignored if the sprite is not the stage or if the cloud variable limit has been reached.

      Parameters

      Returns void

    • Delete the costume at a given index. Returns the deleted costume if one exists at that index, otherwise null.

      Parameters

      • costumeIndex: number

      Returns Costume | null

    • Get the index of a costume with a given name. If the costume doesn't exist, returns -1.

      Parameters

      • name: string

      Returns number

    • Make sure this target is not the stage before calling this method.

      Parameters

      • layers: number

      Returns void

    • Make sure this target is not the stage before calling this method.

      Parameters

      • layers: number

      Returns void

    • Make sure this target is not the stage before calling this method.

      Returns void

    • Make sure this target is not the stage before calling this method.

      Returns void

    • Returns true if the target is not the stage and is not a clone.

      Returns boolean

    • Parameters

      • rgb: [number, number, number]

        RGB channels from [0-255]

      Returns boolean

    • Parameters

      • x: number
      • y: number

      Returns boolean

    • Look for a variable by its ID in this target. If it doesn't exist in this target, will check if it exists in the stage target. If it still doesn't exist, returns undefined.

      Parameters

      • id: string

      Returns Variable | undefined

    • Rename the costume at a given index. Will throw an error if the index is out of bounds. If the new name is already used, it may be modified.

      Parameters

      • costumeIndex: number
      • newName: string

      Returns void

    • Parameters

      • soundIndex: number
      • name: string

      Returns void

    • Move the costume from one index to another. Returns true if any change was made.

      Parameters

      • costumeIndex: number
      • newIndex: number

      Returns boolean

    • Parameters

      • soundIndex: number
      • newIndex: number

      Returns boolean

    • Update the current costume index. If index is not finite, it will be converted to 0. If index is not in the list, it will wrap around.

      Parameters

      • costumeIndex: number

      Returns void

    • Change the sprite's direction. The direction will be wrapped as needed to fit in the expected range.

      Parameters

      • direction: number

      Returns void

    • Change the sprite's size. The given size may be fenced to make the target fit on screen and isn't negative.

      Parameters

      • size: number

      Returns void

    • Update the sprite's position. The given coordinates may be fenced to make the target fit on screen. Set force to true to force the sprite to move even if it's being dragged.

      Parameters

      • x: number
      • y: number
      • Optionalforce: boolean

      Returns void