Options
All
  • Public
  • Public/Protected
  • All
Menu

@byted/riko

Index

Variables

stage

stage: Stage

渲染舞台,所有节点的根

timer

timer: Timer

全局时钟管理器

Functions

clone

  • clone(url?: string, parentNode?: Node): Promise<Node>
  • 克隆互动组件到指定的节点

    Parameters

    • url: string = ''

      互动组件地址

    • Optional parentNode: Node

      父节点

    Returns Promise<Node>

    互动组件

createNode

  • createNode(type: "Sprite"): Sprite
  • createNode(type: "Container"): Container
  • createNode(type: "Sound"): Sound
  • createNode(type: "Text"): Text
  • createNode(type: "Shape"): Shape
  • createNode(type: "Animation"): Animation
  • createNode(type: "Component"): Animation
  • createNode(type: "FrameAnime"): FrameAnime
  • createNode(type: "Video"): Video
  • createNode(type: "Particle"): Particle
  • createNode(type: "Lottie"): Lottie
  • createNode(type: "Spine"): Spine
  • createNode(type: "DragonBones"): DragonBones
  • createNode(type: "Live2d"): Live2d
  • 创建精灵节点

    Parameters

    • type: "Sprite"

      类型

    Returns Sprite

    节点实例

  • 创建容器节点

    Parameters

    • type: "Container"

      类型

    Returns Container

    节点实例

  • 创建声音节点

    Parameters

    • type: "Sound"

      类型

    Returns Sound

    节点实例

  • 创建文本节点

    Parameters

    • type: "Text"

      类型

    Returns Text

    节点实例

  • 创建矢量图节点

    Parameters

    • type: "Shape"

      类型

    Returns Shape

    节点实例

  • 创建动画&互动组件节点

    Parameters

    • type: "Animation"

      类型

    Returns Animation

    节点实例

  • 创建动画&互动组件节点

    Parameters

    • type: "Component"

      类型

    Returns Animation

    节点实例

  • 创建序列帧动画节点

    Parameters

    • type: "FrameAnime"

      类型

    Returns FrameAnime

    节点实例

  • 创建视频节点

    Parameters

    • type: "Video"

      类型

    Returns Video

    节点实例

  • 创建粒子节点

    Parameters

    • type: "Particle"

      类型

    Returns Particle

    节点实例

  • 创建Lottie动画节点

    Parameters

    • type: "Lottie"

      类型

    Returns Lottie

    节点实例

  • 创建spine骨骼动画

    Parameters

    • type: "Spine"

      类型

    Returns Spine

    节点实例

  • 创建DragonBones骨骼动画

    Parameters

    • type: "DragonBones"

      类型

    Returns DragonBones

    节点实例

  • 创建Live2d动画

    Parameters

    • type: "Live2d"

      类型

    Returns Live2d

    节点实例

emit

  • emit(type: string, args?: any[]): void
  • 派发全局事件,可以在编辑器通过事件监听捕获

    Parameters

    • type: string

      事件类型

    • Optional args: any[]

      事件参数数组(可选)

    Returns void

error

  • error(msg: unknown): void
  • 打印错误警告,显示在编辑器及DebugTool里面

    Parameters

    • msg: unknown

      日志内容

    Returns void

log

  • log(msg: unknown): void
  • 打印日志,显示在编辑器及DebugTool里面

    Parameters

    • msg: unknown

      日志内容

    Returns void

off

  • off(type: string, listener: (...args: any[]) => void, caller?: unknown): void
  • 移除全局事件监听

    Parameters

    • type: string

      事件名称

    • listener: (...args: any[]) => void

      监听函数

        • (...args: any[]): void
        • Parameters

          • Rest ...args: any[]

          Returns void

    • Optional caller: unknown

      函数的主体(一般是this,箭头函数可以省略)

    Returns void

offAll

  • offAll(caller: unknown): void
  • 移除caller的所有全局事件监听

    Parameters

    • caller: unknown

      函数的主体(一般是this,箭头函数可以省略)

    Returns void

on

  • on(type: string, listener: (...args: any[]) => void, caller?: unknown): void
  • 监听全局事件,可以监听编辑器内配置的事件,不用或者脚本被销毁时,需要使用off函数清除

    Parameters

    • type: string

      事件名称

    • listener: (...args: any[]) => void

      监听函数

        • (...args: any[]): void
        • Parameters

          • Rest ...args: any[]

          Returns void

    • Optional caller: unknown

      函数的主体(一般是this,箭头函数可以省略)

    Returns void

tweenTo

  • tweenTo(target: Node, prop: string, to?: number, duration?: number, ease?: (time: number) => number): Promise<Tween>
  • 缓动动画

    Parameters

    • target: Node

      目标节点

    • prop: string

      属性key,比如 'x'

    • Optional to: number

      结束值,默认为 1

    • Optional duration: number

      动画持续时长,默认为1000毫秒

    • Optional ease: (time: number) => number

      缓动函数,默认为匀速

        • (time: number): number
        • Parameters

          • time: number

          Returns number

    Returns Promise<Tween>

useArray

  • useArray<T>(propDesc: { defaultItem: T; maxLength?: number; mode?: any[]; name?: string; tooltip?: string }): Loosed<T>[]
  • 通过编辑器获取一组数据,use类函数主要用来描述属性面板值的定义

    Type parameters

    • T: undefined | string | number | boolean | Node | Record<string, undefined | string | number | boolean | Node>

    Parameters

    • propDesc: { defaultItem: T; maxLength?: number; mode?: any[]; name?: string; tooltip?: string }

      属性定义

      • defaultItem: T

        通过该字段来描述获取哪一类型的数据

      • Optional maxLength?: number

        最多获取多少个数据,默认无限多

      • Optional mode?: any[]

        不建议使用

      • Optional name?: string

        属性面板内显示的名字,如果不设置则默认为属性名称

      • Optional tooltip?: string

        鼠标提示信息

    Returns Loosed<T>[]

    返回一个数组

    示例:

    // 定义
    array = Riko.useArray({ name: '图片列表', defaultItem: Riko.useRes({ type: 'Image' }) });
    // 使用
    console.log(this.array[0]);

useBoolean

  • useBoolean(propDesc?: { colSpan?: number; default?: boolean; name?: string; tooltip?: string }): boolean
  • 使用布尔值,use类函数主要用来描述属性面板值的定义

    Parameters

    • Optional propDesc: { colSpan?: number; default?: boolean; name?: string; tooltip?: string }

      属性定义

      • Optional colSpan?: number

        字段在排版时占多少列,每行分为24列,12列即为半行,默认24占一整行

      • Optional default?: boolean

        默认值,默认为 false

      • Optional name?: string

        属性面板内显示的名字,如果不设置则默认为属性名称

      • Optional tooltip?: string

        鼠标提示信息

    Returns boolean

    返回用户输入的布尔值

    示例:

    // 定义
    flag = Riko.useBoolean({ name: '是否结束' });
    // 使用
    console.log(this.flag);

useColor

  • useColor(propDesc?: { colSpan?: number; default?: string; name?: string; tooltip?: string }): string
  • 使用颜色值,use类函数主要用来描述属性面板值的定义

    Parameters

    • Optional propDesc: { colSpan?: number; default?: string; name?: string; tooltip?: string }

      属性定义

      • Optional colSpan?: number

        字段在排版时占多少列,每行分为24列,12列即为半行,默认24占一整行

      • Optional default?: string

        默认值,默认为 ""

      • Optional name?: string

        属性面板内显示的名字,如果不设置则默认为属性名称

      • Optional tooltip?: string

        鼠标提示信息

    Returns string

    返回用户输入的颜色值

    示例:

    // 定义
    color = Riko.useColor({ name: '颜色' });
    // 使用
    console.log(this.color);

useEase

  • useEase(propDesc?: { default?: ""; name?: string; placeholder?: string; tooltip?: string }): (time: number, s?: number) => number
  • 使用缓动动画

    Parameters

    • Optional propDesc: { default?: ""; name?: string; placeholder?: string; tooltip?: string }

      属性定义

      • Optional default?: ""

        默认值,默认为 ""

      • Optional name?: string

        属性面板内显示的名字,如果不设置则默认为属性名称

      • Optional placeholder?: string

        提供可描述输入字段预期值的提示信息

      • Optional tooltip?: string

        鼠标提示信息

    Returns (time: number, s?: number) => number

    返回缓动函数

    示例:

    // 定义
    ease = Riko.useEase();
    // 使用
    Riko.tweenTo(this.target, 'x', 100, 1000, this.ease);
      • (time: number, s?: number): number
      • 使用缓动动画

        Parameters

        • time: number
        • Optional s: number

        Returns number

        返回缓动函数

        示例:

        // 定义
        ease = Riko.useEase();
        // 使用
        Riko.tweenTo(this.target, 'x', 100, 1000, this.ease);

useEffect

  • useEffect(propDesc?: { name?: string; tooltip?: string }): Effect | undefined
  • 使用动画效果,use类函数主要用来描述属性面板值的定义

    Parameters

    • Optional propDesc: { name?: string; tooltip?: string }

      属性定义

      • Optional name?: string

        属性面板内显示的名字,如果不设置则默认为属性名称

      • Optional tooltip?: string

        鼠标提示信息

    Returns Effect | undefined

    返回用户选择的动画效果

    示例:

    // 定义
    effect = Riko.useEffect();
    // 使用
    if (this.effect) {
    this.effect.target = this.target;
    this.effect.play();
    }

useEvent

  • useEvent(propDesc: { name: string }): { apply: any }
  • 在编辑器上配置自定义事件

    Parameters

    • propDesc: { name: string }

      属性定义

      • name: string

    Returns { apply: any }

    返回包含可触发函数的对象

    示例:

    // 定义
    event = Riko.useEvent({ name: 'hello' });
    // 使用
    this.event.apply();
    • apply:function
      • apply(): void
      • Returns void

useNode

  • useNode(propDesc?: { name?: string; placeholder?: string; tooltip?: string; type?: "Sprite" | "Container" | "Sound" | "Text" | "Shape" | "Animation" | "Component" | "FrameAnime" | "Video" | "Particle" | "Lottie" | "Spine" | "DragonBones" | "Live2d" | "Scene" }): Node | undefined
  • 使用编辑器中选择的节点引用,use类函数主要用来描述属性面板值的定义

    Parameters

    • Optional propDesc: { name?: string; placeholder?: string; tooltip?: string; type?: "Sprite" | "Container" | "Sound" | "Text" | "Shape" | "Animation" | "Component" | "FrameAnime" | "Video" | "Particle" | "Lottie" | "Spine" | "DragonBones" | "Live2d" | "Scene" }

      属性定义

      • Optional name?: string

        属性面板内显示的名字,如果不设置则默认为属性名称

      • Optional placeholder?: string

        提供可描述输入字段预期值的提示信息

      • Optional tooltip?: string

        鼠标提示信息

      • Optional type?: "Sprite" | "Container" | "Sound" | "Text" | "Shape" | "Animation" | "Component" | "FrameAnime" | "Video" | "Particle" | "Lottie" | "Spine" | "DragonBones" | "Live2d" | "Scene"

        节点类型

    Returns Node | undefined

    返回用户选择的节点引用

    示例:

    // 定义
    node = Riko.useNode();
    // 使用
    console.log(this.node);

useNumber

  • useNumber(propDesc?: { colSpan?: number; default?: number; name?: string; placeholder?: string; tooltip?: string }): number
  • 使用数值,use类函数主要用来描述属性面板值的定义

    Parameters

    • Optional propDesc: { colSpan?: number; default?: number; name?: string; placeholder?: string; tooltip?: string }

      属性定义

      • Optional colSpan?: number

        字段在排版时占多少列,每行分为24列,12列即为半行,默认24占一整行

      • Optional default?: number

        默认值,默认为 0

      • Optional name?: string

        属性面板内显示的名字,如果不设置则默认为属性名称

      • Optional placeholder?: string

        提供可描述输入字段预期值的提示信息

      • Optional tooltip?: string

        鼠标提示信息

    Returns number

    返回用户输入的数值

    示例:

    // 定义
    x = Riko.useNumber({ name: '水平位置' });
    // 使用
    console.log(this.x);

useObject

  • useObject<T>(propDesc: { default: T; mode?: any[]; name?: string; tooltip?: string }): T
  • 通过编辑器获取一个对象,use类函数主要用来描述属性面板值的定义

    Type parameters

    • T: Record<string, undefined | string | number | boolean | Node>

    Parameters

    • propDesc: { default: T; mode?: any[]; name?: string; tooltip?: string }

      属性定义

      • default: T

        默认值,默认为{}

      • Optional mode?: any[]

        不建议使用

      • Optional name?: string

        属性面板内显示的名字,如果不设置则默认为属性名称

      • Optional tooltip?: string

        鼠标提示信息

    Returns T

    返回一个对象

    示例:

    // 定义
    object = Riko.useObject({
    default: {
    speed: Riko.useNumber(),
    node: Riko.useNode(),
    },
    });
    // 使用
    console.log(this.object.speed);

useRes

  • useRes(propDesc?: { name?: string; tooltip?: string; type?: "Sound" | "Component" | "FrameAnime" | "Video" | "Particle" | "Lottie" | "Spine" | "DragonBones" | "Live2d" | "Image" }): string | undefined
  • 使用编辑器中选择的资源,use类函数主要用来描述属性面板值的定义

    Parameters

    • Optional propDesc: { name?: string; tooltip?: string; type?: "Sound" | "Component" | "FrameAnime" | "Video" | "Particle" | "Lottie" | "Spine" | "DragonBones" | "Live2d" | "Image" }

      属性定义

      • Optional name?: string

        属性面板内显示的名字,如果不设置则默认为属性名称

      • Optional tooltip?: string

        鼠标提示信息

      • Optional type?: "Sound" | "Component" | "FrameAnime" | "Video" | "Particle" | "Lottie" | "Spine" | "DragonBones" | "Live2d" | "Image"

        资源类型,Image:图片,Sound:声音 Video:视频 Component:互动组件,Particle:粒子,FrameAnime:序列帧,Lottie: Lottie动画,DragonBones:龙骨,Spine:Spine骨骼动画,Live2d:Live2d动画

    Returns string | undefined

    返回用户选择的资源地址

    示例:

    // 定义
    imageUrl = Riko.useRes({ type: 'Image' });
    // 使用
    console.log(this.imageUrl);

useResNode

  • useResNode(propDesc?: { name?: string; tooltip?: string; type?: "Sound" | "Component" | "FrameAnime" | "Video" | "Particle" | "Lottie" | "Spine" | "DragonBones" | "Live2d" | "Image" }): Node | undefined
  • 使用编辑器中选择的资源并创建节点,use类函数主要用来描述属性面板值的定义

    Parameters

    • Optional propDesc: { name?: string; tooltip?: string; type?: "Sound" | "Component" | "FrameAnime" | "Video" | "Particle" | "Lottie" | "Spine" | "DragonBones" | "Live2d" | "Image" }

      属性定义

      • Optional name?: string

        属性面板内显示的名字,如果不设置则默认为属性名称

      • Optional tooltip?: string

        鼠标提示信息

      • Optional type?: "Sound" | "Component" | "FrameAnime" | "Video" | "Particle" | "Lottie" | "Spine" | "DragonBones" | "Live2d" | "Image"

        资源类型,Image:图片,Sound:声音 Video:视频 Component:互动组件,Particle:粒子,FrameAnime:序列帧,Lottie: Lottie动画,DragonBones:龙骨,Spine:Spine骨骼动画,Live2d:Live2d动画

    Returns Node | undefined

    返回以用户选择的资源地址创建的节点引用

    示例:

    // 定义
    node = Riko.useResNode({ type: 'Image' });
    // 使用
    console.log(this.node);

useSelect

  • useSelect<T>(propDesc: { colSpan?: number; default?: T; name?: string; options: { label: string; value: T }[]; placeholder?: string; tooltip?: string }): T | undefined
  • 使用下拉框,use类函数主要用来描述属性面板值的定义

    Type parameters

    • T: string | number

    Parameters

    • propDesc: { colSpan?: number; default?: T; name?: string; options: { label: string; value: T }[]; placeholder?: string; tooltip?: string }

      属性定义

      • Optional colSpan?: number

        字段在排版时占多少列,每行分为24列,12列即为半行,默认24占一整行

      • Optional default?: T

        默认值,默认为 ""

      • Optional name?: string

        属性面板内显示的名字,如果不设置则默认为属性名称

      • options: { label: string; value: T }[]

        可选项列表

      • Optional placeholder?: string

        提供可描述输入字段预期值的提示信息

      • Optional tooltip?: string

        鼠标提示信息

    Returns T | undefined

    返回用户选择的下拉框的值

    示例:

    // 定义
    select = Riko.useSelect({
    options: [
    { label: '选项1', value: 1 },
    { label: '选项2', value: 2 },
    ],
    });
    // 使用
    console.log(this.select);

useSlider

  • useSlider(propDesc?: { colSpan?: number; default?: number; max?: number; min?: number; name?: string; tooltip?: string }): number
  • 使用编辑器中Slider设置的数字,use类函数主要用来描述属性面板值的定义

    Parameters

    • Optional propDesc: { colSpan?: number; default?: number; max?: number; min?: number; name?: string; tooltip?: string }

      属性定义

      • Optional colSpan?: number

        字段在排版时占多少列,每行分为24列,12列即为半行,默认24占一整行

      • Optional default?: number

        默认值,默认为0

      • Optional max?: number

        最大值,默认为100

      • Optional min?: number

        最小值,默认为0

      • Optional name?: string

        属性面板内显示的名字,如果不设置则默认为属性名称

      • Optional tooltip?: string

        鼠标提示信息

    Returns number

    返回Slider数字

    示例:

    // 定义
    scale = Riko.useSlider({ name: '缩放', default: 1, min: 0, max: 10 });
    // 使用
    console.log(this.scale);

useString

  • useString(propDesc?: { colSpan?: number; default?: string; name?: string; placeholder?: string; tooltip?: string }): string
  • 使用字符串,use类函数主要用来描述属性面板值的定义

    Parameters

    • Optional propDesc: { colSpan?: number; default?: string; name?: string; placeholder?: string; tooltip?: string }

      属性定义

      • Optional colSpan?: number

        字段在排版时占多少列,每行分为24列,12列即为半行,默认24占一整行

      • Optional default?: string

        默认值,默认为 ""

      • Optional name?: string

        属性面板内显示的名字,如果不设置则默认为属性名称

      • Optional placeholder?: string

        提供可描述输入字段预期值的提示信息

      • Optional tooltip?: string

        鼠标提示信息

    Returns string

    返回用户输入的字符串

    示例:

    // 定义
    nickName = Riko.useString({ name: '昵称' });
    // 使用
    console.log(this.nickName);