窗口程序集名 | 保 留 | 保 留 | 备 注 | 窗口程序集_启动窗口 | | | | 变量名 | 类 型 | 数组 | 备 注 | 我方坦克 | 整数型 | | 我方坦克速度 | 整数型 | | 我方炮弹 | 整数型 | | 敌方坦克 | 整数型 | | 红砖 | 整数型 | | 攻击间隔标记 | 逻辑型 | | 子弹爆炸图 | 整数型 | | 置随机数种子 ()计次循环首 (10, )css = css + 20 红砖 = 动画框. 创建物体 (动画物体, css, 50, , “红砖”)动画框. 置图片 (红砖, #图_红砖, )动画框. 置类型 (红砖, #障碍物类型值 )计次循环尾 ()计次循环首 (10, )css = css + 30 红砖 = 动画框. 创建物体 (动画物体, css, 300, , “红砖”)动画框. 置图片 (红砖, #图_红砖, )动画框. 置类型 (红砖, #障碍物类型值 )计次循环尾 ()我方坦克速度 = 1 攻击间隔标记 = 真 创建我方坦克 ()创建敌方坦克 ()坦克随机角度时钟.时钟周期 = 取随机数 (1000, 13000 )|
_动画框_监视键被按下 | | | |
键代码 | 整数型 | | | | 功能键状态 | 整数型 | | | | 如果真 (键代码 = #W键 )动画框. 置角度 (我方坦克, 0 )动画框. 前进 (我方坦克, 我方坦克速度 )如果真 (键代码 = #S键 )动画框. 置角度 (我方坦克, 180 )动画框. 前进 (我方坦克, 我方坦克速度 )如果真 (键代码 = #A键 )动画框. 置角度 (我方坦克, 270 )动画框. 前进 (我方坦克, 我方坦克速度 )如果真 (键代码 = #D键 )动画框. 置角度 (我方坦克, 90 )动画框. 前进 (我方坦克, 我方坦克速度 ) 我方坦克 = 动画框. 创建物体 (动画物体, 50, 0, , )动画框. 置图片 (我方坦克, #图_我方坦克, )动画框. 缩放 (我方坦克, 500, 500 )动画框. 置类型 (我方坦克, #我方坦克类型值 )动画框. 添加监视键 (1, #W键, #S键, #A键, #D键 )敌方坦克 = 动画框. 创建物体 (动画物体, 0, 0, , “敌方坦克”)动画框. 置图片 (敌方坦克, #图_1分坦克, )动画框. 置类型 (敌方坦克, #敌方坦克类型值 )动画框. 置角度 (敌方坦克, 180 ) |
_动画框_碰撞到边界 | 逻辑型 | | |
物体标识值 | 整数型 | | | | 碰撞前横坐标 | 整数型 | | | | 碰撞前纵坐标 | 整数型 | | | | 边界类型 | 整数型 | | | | 如果真 (动画框. 取附加文本 (物体标识值 ) = “我方坦克”) 置坦克位置 (物体标识值, 碰撞前横坐标, 碰撞前纵坐标 )如果真 (动画框. 取附加文本 (物体标识值 ) = “敌方坦克”)置坦克位置 (物体标识值, 碰撞前横坐标, 碰撞前纵坐标 )置敌方坦克角度 (物体标识值 )|
_动画框_碰撞到物体 | | | |
碰撞物体标识值 | 整数型 | | | | 碰撞前横坐标 | 整数型 | | | | 碰撞前纵坐标 | 整数型 | | | | 被碰撞物体标识值 | 整数型 | | | | 如果真 (碰撞物体标识值 = 我方坦克 )置坦克位置 (碰撞物体标识值, 碰撞前横坐标, 碰撞前纵坐标 )返回 ()如果真 (动画框. 取附加文本 (碰撞物体标识值 ) = “炮弹” 且 动画框. 取类型 (被碰撞物体标识值 ) = #障碍物类型值 )动画框. 销毁物体 (被碰撞物体标识值 )返回 ()如果真 (动画框. 取附加文本 (碰撞物体标识值 ) = “敌方坦克”)置坦克位置 (碰撞物体标识值, 碰撞前横坐标, 碰撞前纵坐标 )置敌方坦克角度 (碰撞物体标识值 )返回 ()|
_动画框_按下某键 | 逻辑型 | | |
键代码 | 整数型 | | | | 功能键状态 | 整数型 | | | | 如果真 (键代码 = #回车键 且 攻击间隔标记 )创建我方炮弹 ()延迟 (200 )攻击间隔标记 = 真 如果真 (动画框. 取附加文本 (物体标识值 ) = “炮弹”)销毁炮弹 (物体标识值 )如果真 (音效标识 = #炮弹爆炸音效 )播放音乐 ( #声_炮弹爆炸, )如果真 (音效标识 = #发射音效 )播放音乐 ( #声_发射, )如果真 (动画框. 取附加文本 (物体标识值 ) = “炮弹”)判断 (动画框. 取角度 (物体标识值 ) = 0 )子弹爆炸图 = 动画框. 创建物体 (动画物体, 动画框. 取物体左边 (物体标识值 ), 动画框. 取物体顶边 (物体标识值 ) - 15, , )判断 (动画框. 取角度 (物体标识值 ) = 180 )子弹爆炸图 = 动画框. 创建物体 (动画物体, 动画框. 取物体左边 (物体标识值 ), 动画框. 取物体顶边 (物体标识值 ) + 15, , )判断 (动画框. 取角度 (物体标识值 ) = 90 )子弹爆炸图 = 动画框. 创建物体 (动画物体, 动画框. 取物体左边 (物体标识值 ) + 15, 动画框. 取物体顶边 (物体标识值 ), , )判断 (动画框. 取角度 (物体标识值 ) = 270 )子弹爆炸图 = 动画框. 创建物体 (动画物体, 动画框. 取物体左边 (物体标识值 ) - 15, 动画框. 取物体顶边 (物体标识值 ), , )动画框.置图片 (子弹爆炸图, #图_炮弹爆炸, )动画框. 播放动画 (子弹爆炸图, 1, 真, , )启动线程 (&播放游戏音效, #炮弹爆炸音效, )攻击间隔标记 = 假 我方炮弹 = 动画框. 创建物体 (动画物体, 动画框. 取物体左边 (我方坦克 ) + 14.5, 动画框. 取物体顶边 (我方坦克 ) + 15, , “炮弹”)动画框. 置图片 (我方炮弹, #图_炮弹, )动画框. 置角度 (我方炮弹, 动画框. 取角度 (我方坦克 )) 动画框. 置类型 (我方炮弹, #我方炮弹类型值 )启动线程 (&播放游戏音效, #发射音效, )动画框. 自动前进 (我方炮弹, 5, 5, , , 真, 1, 真, , )攻击间隔控制 ()角度数组 = { 0, 90, 180, 270 }置随机数种子 ()动画框. 置角度 (物体标识值, 角度数组 [取随机数 (1, 4 )])|
查找数组成员索引 | 整数型 | | |
数组 | 整数型 | | | | 欲查找数组成员 | 整数型 | | | | 计次循环首 (取数组成员数 (数组 ), 次数 )如果真 (数组 [次数 ] = 欲查找数组成员 )返回 (次数 )计次循环尾 ()返回 (0 )|
置坦克位置 | | | |
碰撞物体标识值 | 整数型 | | | | 碰撞前横坐标 | 整数型 | | | | 碰撞前纵坐标 | 整数型 | | | | 如果 (动画框. 取角度 (碰撞物体标识值 ) = 0 )动画框. 置物体位置 (碰撞物体标识值, 碰撞前横坐标, 碰撞前纵坐标 + 5, 真)如果 (动画框. 取角度 (碰撞物体标识值 ) = 180 )动画框. 置物体位置 (碰撞物体标识值, 碰撞前横坐标, 碰撞前纵坐标 - 5, 真)如果 (动画框. 取角度 (碰撞物体标识值 ) = 270 )动画框. 置物体位置 (碰撞物体标识值, 碰撞前横坐标 + 5, 碰撞前纵坐标, 真)如果 (动画框. 取角度 (碰撞物体标识值 ) = 90 )动画框. 置物体位置 (碰撞物体标识值, 碰撞前横坐标 - 5, 碰撞前纵坐标, 真)置随机数种子 ()置敌方坦克角度 (敌方坦克 )坦克随机角度时钟.时钟周期 = 取随机数 (1000, 13000 )动画框. 前进 (敌方坦克, 1 )
|