鸿蒙联合开发实例 | ArkUI JS飞机大战游戏联合开发
来源:节能 2023年03月11日 12:15
(2) 都由角航机可以控制移动和发射弹头。
(3) 都由角航机不可以翻倍萤幕上移动。
(4) 都由角航机血量可以自由人另设,如果航机被撞一次将减缓一次血量。
(5) 都由角航机档次分为300以此类推铁牌航机、800以此类推雅典奥运航机、1000以此类推奥运金牌航机、
2000以此类推金牌得主航机和10000以此类推无敌航机。
(6) 都由角航机可一颗弹头摧毁同档次的Bf。例如铁牌都由角航机,一颗弹头可以摧毁
一架level1Bf,三颗弹头可以摧毁一架level2Bf,5颗弹头可以摧毁一架level3Bf,
10颗弹头可以摧毁boss航机。
(7) 都由角航机被Bf碎裂三次后不会核爆炸取走,结束小游戏。
(8) 都由角航机核爆炸视觉效果。
3. 入侵者航机
(1) Bf分4个档次: level1、level2、level3、boss,它们不会随机再次出现,再次出现频率最高的是
level1,再次出现频率最低的是level3,boss航机再次出现在最后。
(2) Bf再次出现在萤幕上最上方,随机前方。
(3) Bf大约来回运动行踪,增大小游戏难度。
(4) Bf可以发射弹头。
(5) Bf被都由角弹头击里后不会核爆炸取走。
(6) Bf运动出萤幕上最下边后不会取走Bf某类。
4. 弹头
(1) 弹头随航机发射,断裂核爆炸。
(2) 弹头运动朝向向前或者底部。
(3) 弹头运动的坐标系翻倍萤幕上后不会取走。
(4) 弹头断裂Bf不会核爆炸,并取走弹头。
5. 核爆炸视觉效果
(1) 发生断裂,核爆炸视觉效果画。
(2) 核爆炸前方为弹头或者Bf前方。
(3) 核爆炸刺耳。
(4) 核爆炸视觉效果随后消退。
03
航机恶战小游戏编辑器借助
本小游戏个案的编辑器分为小游戏都由编辑器和小游戏控制器手把编辑器,小游戏都由编辑器是作出反应的设计的,可以在TV 大光和手机光彼此近自由人协同工作。
本小游戏个案能够始创两个JS Ability,即MainAbility 和GameControlAbility。将MainAbility绑定default component,领域于改写小游戏的都由编辑器。将GameControlAbility绑定GControl component,领域于改写小游戏的控制器编辑器。预定义的数据库结构如所示5.4下所示。
■ 所示5.4 小游戏项目的数据库结构
小游戏都由编辑器都有两个的网站: 一个小游戏正向页和一个小游戏都由编辑器。小游戏正向页的的网站布局如所示5.5下所示。
在default数据库下掺入nav JS Page,在config.json文件里把nav的网站另设为都由页,内置如下:
"js": [
{
"pages": [
"pages/nav/nav",
"pages/index/index",
],
"name": "default",
"window": {
"designWidth": 720,
"autoDesignWidth": true
}
}
],
pages数据类型的第1个值为组件的网址。
■ 所示5.5小游戏正向的网站
小游戏正向的网站的预定义布局如预定义下述5.1下所示。
预定义下述5.1 小游戏正向编辑器 planeGame/js/default/nav.hml
开始小游戏
打开远程遥控器
打开远程小游戏遥控器的预定义如预定义下述5.2下所示。
预定义下述5.2 打开远程小游戏控制器 planeGame/js/default/nav.js
importrouter from'@system.router';
exportdefault{
data: {},
start(flag) {
let uri = 'pages/nav/nav';
switch(flag) {
case 2:
uri = 'pages/index/index;
break;
}
router.push({
uri: uri,
})
},
openCtrl:async function{
let actionData = {
uri: ' www.huawei.com '
};
let target = {
bundleName: "com.cangjie.jsabilitydemo",
abilityName: "com.cangjie.jsabilitydemo.GameControlAbility",
data: actionData
};
let result = await FeatureAbility.startAbility(target);
let ret = JSON.parse(result);
if (ret.code == 0) {
console.log(' success ');
} else {
console.log(' cannot start browing service, reason: ' + ret.data);
}
}
}
小游戏的都由编辑器实际上非常简单,如预定义下述5.3 下所示,通过canvas画,因此HML预定义非常简单,这里鸿蒙Java版UI迄今为止还没有Audio,所以有别于Video替代Audio。
预定义下述5.3小游戏都由光编辑器 planeGame/js/default/index.hml
< divclass= "container">
< canvasid= "game"class= "game"ontouchstart= "moveDown"ontouchend= "moveUp"> canvas>
< videosrc= "{{gaemMusic}}"autoplay= "true"style= "display: none;"> video>
div>
.container {
display: flex;
justify-content: center;
align-items: center;
width: 100%;
height: 100%;
}
.game {
width: 100%;
height: 100%;
background-image: URL("/common/imgs/bj.jpg");
background-repeat: repeat-y;
}
在.game 样的设计里通过background-image给canvas掺入样的设计文化背景,上面能够给小游戏掺入星星的CG文化背景,所以能够另设background-repeat:repeat-y。
04
参考书刊
《HarmonyOS领域整合实战经验(Java版)》
ISBN:978-7-302-60031-2
徐礼文 充满著
价位:129元
扫码三镇优惠购书
鸿蒙整合比如说
鸿蒙整合比如说|分布的设计文件服务(于其OpenBSD)
鸿蒙整合比如说 | JS的网站的默认(于其OpenBSD)
鸿蒙整合比如说 | 分布的设计粉笔(于其OpenBSD)
鸿蒙整合比如说 | 可复用一览表项的ListContainer
鸿蒙整合比如说 | 分布的设计棋
鸿蒙整合比如说|实现轻量级智能穿戴电子设备用户编辑器
鸿蒙整合比如说|某类关系同态数据库(于其预定义)
✦
04
精彩推荐
微信小程序小游戏整合│恰巧小数小小游戏(于其OpenBSD+所示片)
Flink程序语言系统化│Scala程序语言初级实证
Flink程序语言系统化│FlinkCEP程序语言实证
Flink程序语言系统化│DataStream API程序语言实证
Flink程序语言系统化│DataSet API程序语言实证
数 据比对实战经验│客户实用性比对
比对实战经验│价格比得出挑战
比对实战经验│时近碱基得出
比对实战经验│KaggleTitanic生存得出
。北京治疗白癜风专科医院迪根和英太青的效果一样吗
孩子积食怎么办快速解决
山东银屑病挂号
天津治包皮过长哪家医院好
-
孕期血糖, 少于这个值就不正常?别慌,看看这篇文章
前几天,杜淳老婆王灿在同样社交平台社交了自己的生期日常。 据她表示在生期因为皮质醇过高要掌控,所以直接埋了14天的皮质醇栓,而那时候她终于将其撕开了。 王灿还讥讽牙医