3D DEMO 5.0

张砷镓 Lv. 2
复制链接 & 嵌入
链接
复制链接
嵌入网页
复制嵌入代码
进入全屏模式
载入作品
正在创建积木……
载入角色……
载入声音……
加载扩展……
正在创建积木……
呼唤小猫……
传送Nano……
给Gobo充气 …
准备表情……
还没有人打赏!
最后修改于2022年05月14日
感谢 杜宇泽 的分享

操作说明

这家伙很懒,什么都没写下...

备注与谢志

这家伙很懒,什么都没写下...

开发日志

变量

类型 [射线]

本体 [门]

状态 [门]

旋转度 [门]

角度 [门]

可见 [门]

开启方向 [门]

 

列表

门:x

门:y

 

角色

玩家

造型

hitbox

 

代码

定义 更新y坐标 {距离}

将x坐标增加 {距离}

如果 (碰到 地图? 或 碰到 NPC?) 那么

重复执行直到 (碰到 地图? 或 碰到 NPC?) 不成立

如果 ((碰到 地图? 或 碰到 NPC?) 或 碰到 门?) 那么

重复执行直到 ((碰到 地图? 或 碰到 NPC?) 或 碰到 门?) 不成立

 

定义 更新x坐标 {距离}

将y坐标增加 {距离}

如果 (碰到 地图? 或 碰到 NPC?) 那么

重复执行直到 (碰到 地图? 或 碰到 NPC?) 不成立

如果 ((碰到 地图? 或 碰到 NPC?) 或 碰到 门?) 那么

重复执行直到 ((碰到 地图? 或 碰到 NPC?) 或 碰到 门?) 不成立

 

地图

造型

造型3

 

射线

造型

造型1

 

代码

定义 渲染墙壁 {x} {距离}

定义 渲染 {x} {距离} {类型}

在 墙 的第 {i} 项前插入 {渲染:类型}

在 {类型} 的第 {i} 项前插入 {渲染:类型}

在 {x} 的第 {i} 项前插入 {渲染:X}

 

定义 发一条射线

重复执行直到 碰到 地图?

重复执行直到 (碰到 地图? 或 碰到 门?)

移动 2 步

重复执行直到 碰到 地图? 不成立

移动 -0.5 步

重复执行直到 (碰到 地图? 或 碰到 门?) 不成立

移动 -2 步

重复执行直到 (碰到 地图? 或 碰到 门?)

移动 1 步

如果 碰到 地图? 那么

将 {类型} 设为 墙

重复执行直到 碰到 地图? 不成立

移动 -0.5 步

否则

将 {类型} 设为 门

重复执行直到 碰到 门? 不成立

移动 -0.5 步

执行 渲染墙壁 {X} {距离}

执行 渲染 {X} {距离} {类型}

 

NPC

造型

巨人hitbox

 

代码

当接收到 开始游戏

执行 初始化

执行 刷怪 巨人 数量: 10

执行 刷怪 蝙蝠 数量: 20

 

画笔

造型

巨人0

门1

巨人2

门0

 

代码

定义 渲染门

换成 门1 造型

将大小设为 {高度}

将 亮度 特效设定为 (40 - ({距离} / 2))

移到 x: y:0

图章

将笔的亮度 设为

移到 x:{X} y:({高度} * 1)

将笔的粗细设为{分辨率}

将笔的颜色设为#ffa34e

将笔的亮度 设为 (120 - ({距离} / 2))

落笔

将y坐标设为 (0 - {高度})

抬笔

 

代码

当接收到 tick

说 造型名称

 

当接收到 停止移动

 

当接收到 开始移动

 

造型

hitbox

hitbox2

 

声音

 

代码

当 绿旗 被点击

隐藏

将 {本体} 设为 1

 

定义 初始化

将 25 加入 {门:x}

将 -2 加入 {门:x}

将 -29 加入 {门:x}

将 -88 加入 {门:x}

将 -115 加入 {门:x}

将 -140 加入 {门:x}

将 -165 加入 {门:x}

 

当按下 t 键

如果 ({本体} = 1) 那么

停止 这个脚本

如果 (到 玩家 的距离 < 35) 那么

执行 开关

 

当接收到 NPC开门

如果 (碰到 NPC? 与 ({状态} = 关)) 那么

执行 开

 

当接收到 开始游戏

执行 创建门 57 56 90 -1

执行 创建门 -156 48 90 -1

执行 创建门 -142 -35 -90 -1

执行 创建门 90 -33 -90 -1

 

当接收到 tick

如果 ({DEBUG} = 1) 那么

将 虚像 特效设定为 0

否则

将 虚像 特效设定为 100

如果 (碰到 NPC? 与 ({状态} = 关)) 那么

广播 NPC开门

 

当作为克隆体启动时

将 虚像 特效设定为 100

显示

将 {状态} 设为 关

 

定义 开关

如果 ({状态} = 开关中) 那么

停止 这个脚本

如果 ({状态} = 开) 那么

执行 关

如果 ({状态} = 关) 那么

执行 测量门是否可见

如果 ({可见} = 1) 那么

执行 开

 

定义 创建门 {x} {y} {初始方向} {开启方向}

将 {本体} 设为 0

移到 x:{x} y:{y}

面向 {初始方向} 方向

将 {开启方向} 设为 {开启方向}

克隆 自己

将 {本体} 设为 1

 

定义 开

将 {状态} 设为 开关中

重复执行 6 次

右转 (15 * {开启方向}) 度

将 {状态} 设为 开

 

定义 关

将 {状态} 设为 开关中

重复执行 6 次

左转 (15 * {开启方向}) 度

将 {状态} 设为 关

停止 这个脚本

 

定义 测量门是否可见

将 {角度} 设为 方向

移动 8 步

面向 玩家

右转 180 度

如果 (绝对值((绝对值(方向) - 绝对值({摄像头方向}))) < {视角范围}) 那么

将 {可见} 设为 1

否则

将 {可见} 设为 0

面向 {角度} 方向

移动 -8 步