方块 (TeaScript)

来自SMBX 中文百科
TeaScript/Block
跳转到导航 跳转到搜索

block(id).index,是方块(或者砖块)的一个属性,一般用于给予砖块特殊的特性等。

with block(param)
    'param 代表该砖块的 PermID。
end with

用法

使用

读取某个值:block(index).name

修改某个值:block(index).name = value

如果使用自定义方块,一般会在脚本片段加入以下代码:

with block(sysval(param2))
    'executes
end with

一般情况下,sysval(param2) 参数代表该方块被顶一下时执行事件脚本的 PermID,更多信息请访问 Sysval(Param)。

参数

基础

参数名 数据类型 介绍
id double 方块的对象ID(1-357)
x double 方块的X坐标
y double 方块的Y坐标
width double 方块的判定宽度。
height double 方块的判定高度。
xsp double 方块的横向速度。
ysp double 方块的纵向速度。
state double 方块的状态,设置为1将会让方块进入被敲击的状态,其他值则为破碎。
hide double 1为隐藏,0为显示。
pcollision double 玩家与方块之间的碰撞判定类型,此值不可更改。(由方块属性设置Collision Detection(Player)决定,例如这个值为 0 时为实心类型)
ncollision double NPC 与方块之间的碰撞判定类型,此值不可更改。(由方块属性设置Collision Detection(NPC)决定,例如这个值为 1 时为空心类型)

图形

参数名 数据类型 介绍
extx double 砖块所使用的拓展素材的横向位置。(需要勾选GFXSplitHeight才会生效。如果此值为-1,则NPC会隐形。)
exty double 砖块所使用的拓展素材的纵向位置。(需要勾选GFXSplitHeight才会生效。如果此值为-1,则NPC会隐形。)
forecolor double 砖块的颜色,使用rgba(red, green, blue, alpha)或整数值控制。
forecolor_r double 砖块的 rgba 前景色中的红色通道的数值。
forecolor_g double 砖块的 rgba 前景色中的绿色通道的数值。
forecolor_b double 砖块的 rgba 前景色中的蓝色通道的数值。
forecolor_a double 砖块的 rgba 前景色中的 alpha(即透明度) 通道的数值。

行为

参数名 数据类型 介绍
advset double 方块的内容。

0:无 1 ~ 99:金币数量 -1 ~ -302:数量不等的金币,顶一下触发倒计时 -302 以下:无。 1000+NPC ID:方块内包含的 NPC ID 种类。(例如 1031 为 SMW 的钥匙。)

haswing double 方块的翅膀行为数值。
  • 0:无翅膀
  • 1:左右悬浮
  • 2 :上下悬浮
  • 3 :一直向前悬浮
  • 4 :由 NPC-308 控制
  • 5 :SMW 轨道线

事件

注:此值可以是事件和脚本,也可以是自定义变量的一部分,但这就需要避免事件名称和脚本名称为该砖块使用的数值。

参数名 数据类型 介绍
deathevent string 方块死亡时所触发的事件的名称。
hitevent string 方块被敲击后所触发的事件的名称。
onscreenevent string 方块在屏幕上每帧所触发的事件的名称。

其他

参数名 数据类型 介绍
name string 方块的对象名称,通常多用于自定义方块。