liko
    Preparing search index...

    Class Script

    游戏对象行为脚本基类,提供事件处理和生命周期管理

    继承自 ScriptBase,为游戏对象添加事件响应能力,包括:

    • 指针事件(点击、按下、抬起、移动)
    • 物理碰撞事件(开始碰撞、结束碰撞)
    • 场景间通信事件(signal)
    • 全局输入事件(键盘按键)

    Hierarchy (View Summary)

    Index

    Constructors

    Properties

    id: string = ''

    脚本唯一标识符,通常由编辑器指定

    label: string = ''

    脚本标签,用于快速识别和查找

    Accessors

    • get awaked(): boolean

      脚本是否已被激活(添加到场景后触发)

      Returns boolean

    • get destroyed(): boolean

      脚本是否已被销毁

      Returns boolean

    • get enabled(): boolean

      脚本是否启用,禁用时不执行更新且触发 onDisable

      Returns boolean

    • set enabled(value: boolean): void

      Parameters

      • value: boolean

      Returns void

    • get scene(): undefined | IScene

      目标节点所在的场景引用(建议缓存为局部变量以提高性能)

      Returns undefined | IScene

    Methods

    • 销毁脚本实例

      Returns void

      销毁后脚本将不再可用,会自动:

      • 触发 onDestroy 回调
      • 清除在 target、scene、stage、timer 上的所有监听
      • 解除与目标节点的关联

      注意:如果使用了 Timer.system 的监听,需要手动清除

    • 当键盘按键被按下时触发的回调函数

      Parameters

      • e: KeyboardEvent

        键盘事件对象

      Returns void

    • 当键盘按键被抬起时触发的回调函数

      Parameters

      • e: KeyboardEvent

        键盘事件对象

      Returns void

    • 当同场景中的其他脚本发送信号时触发的回调函数

      Parameters

      • type: string

        信号类型标识符

      • Optionalparams: Record<string, any>

        可选的信号参数对象

      Returns void

    • 通过数据设置属性

      Parameters

      • Optionalprops: Record<string, unknown>

        属性列表

      Returns this

      当前实例,支持链式调用

    • 向同场景的其他脚本发送信号

      Parameters

      • key: string

        信号类型标识符,不区分大小写

      • Optionalparams: Record<string, any>

        可选的信号参数对象

      Returns void

      发送的信号可以在同场景其他脚本的 onSignal 方法中被监听到,用于场景内脚本间通信。 注意:必须在脚本销毁前发送信号,否则无法正确触发。

    • 执行脚本的更新逻辑

      Parameters

      • delta: number

        距离上一帧的时间间隔(毫秒)

      Returns void

      每帧调用一次,用于更新脚本状态。如果脚本未启用或未激活则不会执行。