引擎3.0

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

操作说明

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

备注与谢志

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

开发日志

变量

帧 [NPC]

状态 [NPC]

走动画帧数 [NPC]

攻击动画帧数 [NPC]

死亡动画帧数 [NPC]

动画帧数 [NPC]

攻击距离 [NPC]

攻击判定帧 [NPC]

攻击力 [NPC]

伤害值

状态 [主角]

血量 [NPC]

 

角色

主角

造型

一段攻击0

一段攻击1

一段攻击2

一段攻击3

一段攻击4

攻击0

攻击1

攻击2

攻击3

攻击4

 

声音

刀、剑碰撞声_耳聆网_[声音ID:10127]

挥摆武士刀_耳聆网_[声音ID:11990]

一把刀的锋刃_耳聆网_[声音ID:13547]

刀片磨锐的声音_耳聆网_[声音ID:13269]

男性死亡音效_耳聆网_[声音ID:19665]

简单的死亡声音_耳聆网_[声音ID:18483]

拉弓射箭_耳聆网_[声音ID:10882]

超爽射箭配音工作者好素材_耳聆网_[声音ID:37189]

双脚落地_耳聆网_[声音ID:13734]

 

代码

当按下 空格 键

如果 ({站在地上} = 1) 那么

将 {状态} 设为 攻击

将 {全局帧} 设为 0

等待 ({全局帧} > 3)

广播 主角攻击

等待 ({全局帧} > 5)

将 {状态} 设为 站

 

当接收到 NPC攻击

将 {主角血量} 增加 (-1 * {伤害值})

 

当接收到 游戏开始

显示

将 {状态} 设为 站

将 {帧} 设为 0

将 {全局帧} 设为 0

将 {帧} 增加 0.16

如果 ({状态} = 攻击) 那么

将 {全局帧} 增加 0.5

否则

将 {全局帧} 增加 0.16

将 {血量} 设为 0

将 {主角血量} 设为 0

 

当接收到 死亡

停止 该角色的其他脚本

换成 死亡0 造型

重复执行 4 次

等待 0.1 秒

下一个造型

广播 淡出 并等待

广播 连接 lv 和 {关卡}

广播 淡入

 

定义 更新造型

如果 (按下 → 键? 或 按下 ← 键?) 那么

换成 连接 走 和 向上取整({帧}) 除以 8 的余数 造型

如果 ({状态} = 攻击) 那么

换成 连接 攻击 和 向上取整({全局帧}) 除以 5 的余数 造型

否则

换成 连接 站 和 向上取整({帧}) 除以 9 的余数 造型

如果 (按下 → 键? 或 按下 ← 键?) 那么

换成 连接 走 和 向上取整({全局帧}) 除以 8 的余数 造型

否则

换成 连接 站 和 向上取整({全局帧}) 除以 9 的余数 造型

 

定义 上下梯子

将 {y速度} 设为 0

将 {Y速度} 设为 0

如果 按下 ↑ 键? 那么

将 {y速度} 增加 10

将 {Y速度} 增加 10

如果 按下 ↓ 键? 那么

将 {y速度} 增加 -10

将 {主角2: 站在地上} 设为 1

将 {Y速度} 增加 -10

将 {站在地上} 设为 1

重复执行 10 次

将y坐标增加 ({y速度} / 10)

如果 碰到 钢体? 那么

执行 尝试滑坡

将 {调整值} 设为 ({Y速度} / 10)

将y坐标增加 {调整值}

如果 碰到 地图? 那么

将y坐标增加 (-1 * {调整值})

 

地图

代码

当接收到 lv3

将 {地图X} 设为 716

将 {地图Y} 设为 364

将 {地图X} 设为 720

将 {地图Y} 设为 142

 

血量

代码

当接收到 游戏开始

将 {血量} 设为 10

将 {主角血量} 设为 10

 

当接收到 tick

换成 连接 血 和 {血量} 造型

如果 ({血量} < 1) 那么

广播 淡出 并等待

广播 连接 lv 和 {关卡}

广播 淡入

换成 连接 血 和 {主角血量} 造型

如果 ({主角血量} < 1) 那么

广播 死亡

 

NPC

造型

武士跑0

武士跑1

武士跑2

武士跑3

武士跑4

武士跑5

武士跑6

武士跑7

盾兵攻击0

造型1

武士走0

武士走1

武士走2

武士走3

武士走4

武士走5

武士走6

武士走7

盾兵走9

盾兵走8

盾兵走7

盾兵走6

盾兵走5

盾兵走4

盾兵走3

盾兵走2

盾兵走1

盾兵走0

盾兵攻击2

盾兵攻击1

盾兵死亡3

盾兵死亡2

盾兵死亡1

Attack_1

 

代码

当接收到 lv3

执行 刷新NPC 武士 x (-137 - 602) y (43 - 174) x最小值 (-160 - 602) x最大值 (-34 - 582)

执行 刷新NPC 弓箭手 x (77 - -159) y (-121 - 335) x最小值 (-36 - -159) x最大值 (137 - 159)

执行 刷新NPC 武士 x (37 - 191) y (9 - -146) x最小值 (-133 - 162) x最大值 (-20 - 162)

执行 刷新NPC 盾兵 x (49 - -281) y (25 - -364) x最小值 (-172 - -80) x最大值 (244 - 364)

执行 刷新NPC 弓箭手 x (-120 - -364) y (-7 - -364) x最小值 (-147 - -49) x最大值 (45 - -80)

 

当接收到 lv2

 

当接收到 lv2

执行 刷新NPC 武士 x (-2 - -42) y (-22 - -13) x最小值 (-38 - -42) x最大值 (164 - -42)

执行 刷新NPC 武士 x (75 - -689) y (-118 - 245) x最小值 (-156 - -689) x最大值 (196 - -689)

执行 刷新NPC 弓箭手 x (-168 - -689) y (-114 - 245) x最小值 (-202 - -728) x最大值 (150 - -728)

 

当接收到 主角攻击

如果 碰到 主角? 那么

将 {血量} 增加 -1

如果 ({血量} < 1) 那么

删除此克隆体

 

当接收到 tick

执行 巡逻

说 y坐标

如果 (绝对值((y坐标 - 主角 的 y坐标)) < 25) 那么

执行 向主角移动

否则

执行 巡逻

将 {帧} 增加 1

换成 连接 连接 {类型} 和 {状态} 和 向上取整(({帧} / 4)) 除以 {动画帧数} 的余数 造型

 

当作为克隆体启动时

将 {帧} 设为 0

换成 连接 {类型} 和 攻击0 造型

将 {走动画帧数} 设为 8

将 {攻击动画帧数} 设为 16

将 {死亡动画帧数} 设为 5

将 {攻击距离} 设为 200

将 {攻击判定帧} 设为 13

将 {攻击力} 设为 1

将 {血量} 设为 3

将 {走动画帧数} 设为 8

将 {攻击动画帧数} 设为 6

将 {死亡动画帧数} 设为 3

将 {攻击距离} 设为 50

将 {攻击判定帧} 设为 4

将 {攻击力} 设为 1

将 {血量} 设为 2

将 {走动画帧数} 设为 10

将 {攻击动画帧数} 设为 4

将 {死亡动画帧数} 设为 4

将 {攻击距离} 设为 60

将 {攻击判定帧} 设为 1

将 {攻击力} 设为 2

将 {血量} 设为 5

将 {x速度} 设为 (-1 * {移动速度})

执行 切换状态 走

 

定义 巡逻

执行 切换状态 走

 

定义 切换状态 {状态}

将 {状态} 设为 {状态}

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

将 {动画帧数} 设为 {走动画帧数}

如果 ({状态} = 攻击) 那么

将 {动画帧数} 设为 {攻击动画帧数}

如果 ({状态} = 死亡) 那么

将 {动画帧数} 设为 {死亡动画帧数}

 

定义 向主角移动

面向 主角

如果 ({攻击距离} < 绝对值((x坐标 - 主角 的 x坐标))) 那么

执行 切换状态 走

如果 (方向 > 0) 那么

将 {x速度} 设为 {移动速度}

否则

将 {x速度} 设为 ({移动速度} * -1)

将 {X} 增加 {x速度}

如果 ({X} > {X最大值}) 那么

将 {X} 设为 {X最大值}

如果 ({X} < {X最小值}) 那么

将 {X} 设为 {X最小值}

否则

执行 切换状态 攻击

如果 (({帧} 除以 ({攻击判定帧} * 4) 的余数 = 0) 与 碰到 主角?) 那么

将 {伤害值} 设为 {攻击力}

广播 NPC攻击

 

陷阱