Box2D
这个扩展允许你轻松地使用一个名为 Box2D 的物理库实现真实的物理效果。
世界
调整所有精灵的物理属性。
设置舞台为 [封闭舞台 v] :: #0FBD8C
选择一种包含类型以保持精灵在舞台内。
- 封闭舞台:防止精灵从底部和侧边移出。
- 开放(有地板):防止精灵从底部移出。
- 开放(无地板):移除所有边界;精灵可以随意移动。
将重力设置为 x: [0] y: [-10] :: #0FBD8C
改变重力的方向和强度。
前进一步 :: #0FBD8C
在时间上前进一步。将这个积木放入循环中,以保持物理效果的持续进行。
将模拟速率设置为 (30)/秒 :: #0FBD8C
设置多少个模拟步骤算作一秒。通常这应该是项目的帧率,但也可以用来减慢或加快时间。
你可以通过 (模拟速率) 记者获取当前的模拟速率。
精灵
操作单个精灵。
为 [这个服装 v] 启用模式 [普通 v] :: #0FBD8C
使物理效果应用到这个精灵。它也可以与其他启用了物理的精灵发生碰撞。
- 为这个服装启用:仅为当前精灵或克隆体启用物理。
- 为这个圆形启用:将物理效果应用于当前精灵或克隆体,就像它的形状是一个圆形一样。
- 为所有精灵启用:为所有精灵启用物理。
精度模式会让精灵更加努力地避免与其他物体重叠。请注意,这可能会降低性能,甚至导致项目卡死,因此请谨慎使用。
禁用这个精灵的物理 :: #0FBD8C
使物理效果不再应用于这个精灵。
移动到 x: [0] y: [0] [在世界中 v] :: #0FBD8C
使精灵移动到指定的位置。
- 在世界中:相对于世界的中心。
- 在舞台上:相对于屏幕的中心(如果你已经滚动了)。
- 相对:相对于自身。
将速度设置为 sx: [0] sy: [0] :: #0FBD8C
将精灵的速度(速度)设置为指定的值。
你可以通过 (x 速度) 和 (y 速度) 记者获取当前精灵的速度。
用力 [25] 在方向 [0] 推动 :: #0FBD8C
直接将精灵推向某个方向,增加其当前速度。
将角速度设置为 [30] :: #0FBD8C
将精灵的角速度(旋转速度)设置为指定的值。
你可以通过 (角速度) 记者获取精灵当前的角速度。
用力 [500] 旋转 :: #0FBD8C
直接将精灵旋转,增加其当前的角速度(旋转速度)。
设置为 [固定在原地 v] :: #0FBD8C
选择精灵是固定在原地还是可以移动。
你可以通过 (是否固定?) 记者判断精灵是否当前固定在原地。
设置密度 [普通 v] :: #0FBD8C
设置精灵的密度,这会影响其重量。
你可以通过 (密度) 记者获取精灵当前的密度。
设置摩擦力 [普通 v] :: #0FBD8C
设置精灵的粗糙度。更平滑的设置使精灵更滑。
你可以通过 (摩擦力) 记者获取精灵当前的摩擦力。
设置弹性 [普通 v] :: #0FBD8C
设置精灵的弹性。
你可以通过 (弹性) 记者获取精灵当前的弹性。
(碰触 [任何 v] :: #0FBD8C)
返回精灵正在接触的其他精灵。也包括舞台的边缘。
如果有多个精灵正在接触,它将返回一个以逗号分隔的列表。
屏幕
移动相机在世界中。
设置滚动 x: [0] y: [0] :: #0FBD8C
滚动到所需位置。
你可以通过 (x 滚动) 和 (y 滚动) 记者获取当前的屏幕位置。
这不会影响通过 [设置舞台] 积木设置的世界边界。
示例
when flag clicked
设置舞台为 [封闭舞台 v] :: #0FBD8C
将重力设置为 x: [0] y: [-10] :: #0FBD8C
create clone of (myself v)
repeat [20]
逐步模拟 :: #0FBD8C
end
create clone of (myself v)
forever
逐步模拟 :: #0FBD8C
end
when I start as a clone
show
为 [这个服装 v] 启用模式 [普通 v] :: #0FBD8C
移动到 x: [-150] y: [240] [在世界中 v] :: #0FBD8C
设置弹性 [相当有弹性 v] :: #0FBD8C
将角速度设置为 [-4.1] :: #0FBD8C