您的位置:首页 > 财经 > 产业 > 网络营销策划的概念_全部游戏免费(试玩)_北京优化网站方法_创建自己的网页

网络营销策划的概念_全部游戏免费(试玩)_北京优化网站方法_创建自己的网页

2025/3/27 19:05:44 来源:https://blog.csdn.net/adminwxs/article/details/146241042  浏览:    关键词:网络营销策划的概念_全部游戏免费(试玩)_北京优化网站方法_创建自己的网页
网络营销策划的概念_全部游戏免费(试玩)_北京优化网站方法_创建自己的网页

<羊了个羊>目录6

  • 生成卡片
  • 代码
    • 背景代码
    • 卡片代码
    • 音频代码
    • 布局

个人觉得
搭框架式写法
优势
项目整体有型
不会遗漏
缺点
大型项目推进慢,且容易因为目标过大(考虑的多)导致迟迟无法推进
搭积木式写法
优势
小目标明确,且一点点推进有成就感
遇到难点,也能随时变换思路,不用考虑整体效果
缺点
整个项目因为考虑不周全,会导致命名不规范及逻辑错误
错误不太清楚发生在哪里,因为贯通后,错误一旦发生就不知道错误出在哪里
之前的飞机飞机大战就是这样,现在也是一样
需要重写梳理 名称 及 逻辑 及 重复函数

生成卡片

为什么搞了这么久才来发
因为遇到瓶颈了,重写的2次,大规模修改代码,数理逻辑,修复bug
整体逻辑已经没有异常才来写心得
预制体 生成核心
一实例化
二设置父节点
三设置坐标
卡片生成锚点
这里需要注意一点我这里是使用了3个锚点生成卡片
如要像原版一样集中散开,应该是1个锚点散开,分组任然是多个
卡片生成顺序
先生成的预制体会被遮挡,
所以 node 数组的先后顺序决定生成顺序
比如我的
数组.push 设置父节点就要用倒叙的方法

代码

这里提一下命名一定要预先想好规则
否则之后再来 找或改 都是乱七八糟的,且麻烦

背景代码

import { _decorator, Camera, Component, director, instantiate, Label, Node, Prefab, ProgressBar, randomRangeInt, Vec3 } from 'cc';
import { ts_music } from './ts_music';
import { ts_card } from './ts_card';
const { ccclass, property } = _decorator;@ccclass('s2_bg')
export class s2_bg extends Component {static inthis : s2_bgstatic getthis() : s2_bg {return this.inthis}arr_card0 : Node[] = []   //  移出区数组arr_card1 : Node[] = []  //  区块一下的实际卡片arr_card2 : Node[] = []  //  区块二下的实际卡片arr_card3 : Node[] = []  //  区块三下的实际卡片arr_wait : Node[] = []  //  消除区数组arr_card : Node[] = []  //  所有需要生成的卡片game_lv_up : number = 1     //  游戏最高关卡game_lv_now : number = 1    //  游戏当前关卡game_block : number = 2     //  区块game_time_up : number = 0   //  游戏上限时间game_time_dt : number = 0   //  游戏过去时间game_card : number[] = []   //  卡片选取种类game_boo : boolean = true   //  游戏正常//game_bao : number = 0       //  卡片包 本来打算设计卡片包这个参数使得游戏更复杂@property(Camera) cam : Camera = null@property(Label) ui_game_lv : Label = null@property(ProgressBar) ui_game_time : ProgressBar = null@property(Node) ui_blo0 : Node = null@property(Node) ui_blo1 : Node = null@property(Node) ui_blo2 : Node = null@property(Node) ui_blo3 : Node = null@property(Node) ui_blo_wait : Node = null@property(Node) ui_end_wd : Node = null@property(Label) ui_end_txt1 : Label = null@property(Label) ui_end_txt2 : Label = null@property(Label) ui_end_but_lb : Label = null@property(Prefab) card0 : Prefab = null@property(Prefab) card1 : Prefab = null@property(Prefab) card2 : Prefab = null@property(Prefab) card3 : Prefab = null@property(Prefab) card4 : Prefab = null@property(Prefab) card5 : Prefab = null@property(Prefab) card6 : Prefab = null@property(Prefab) card7 : Prefab = null@property(Prefab) card8 : Prefab = null@property(Prefab) card9 : Prefab = null@property(Prefab) card10 : Prefab = null@property(Prefab) card11 : Prefab = null@property(Prefab) card12 : Prefab = null@property(Prefab) card13 : Prefab = nullstart() {//localStorage.setItem(`game_lv_now` , `1`)     //  关数太高降低关数时启用s2_bg.inthis = thists_music.getthis().on_bgm2()this.on_start()}update(deltaTime: number) {this.on_time(deltaTime)}/**游戏开始 */on_start(){this.mode_game_start()this.mode_game_card()this.mode_game_block()this.mode_game_set()director.resume()}/**游戏结束 */on_end(){this.ui_end_wd.active = trueif (this.arr_card.length > 0){this.ui_end_txt1.string = `遗憾失败`let txt2 = localStorage.getItem(`game_lv_up`)this.ui_end_txt2.string = `历史最高 ${txt2}`this.ui_end_but_lb.string = `重新开始`this.game_lv_now = 1localStorage.setItem(`game_lv_now` , `1`)}else {this.ui_end_txt1.string = `恭喜过关`this.game_lv_up = Number(localStorage.getItem(`game_lv_up`))if (this.game_lv_now > this.game_lv_up){this.ui_end_txt2.string = `新纪录 ${this.game_lv_now}`localStorage.setItem(`game_lv_up` , this.game_lv_now.toString())}else {let txt2 = localStorage.getItem(`game_lv_up`)this.ui_end_txt2.string = `历史最高 ${txt2}`}this.ui_end_but_lb.string = `下一关`this.game_lv_now += 1localStorage.setItem(`game_lv_now` , this.game_lv_now.toString())}this.game_boo = falseconsole.log(`游戏结束`)director.pause()}/**游戏返回 */on_back(){ts_music.getthis().on_but()localStorage.setItem(`game_lv_now` , this.game_lv_now.toString())director.loadScene(`s1`)}/**卡片移动 */on_move(no : Node){if (this.arr_wait.length > 4){return}   //  消除区卡片上限5this.mode_click(no)this.mode_del(no)this.mode_set(no , -1)if (this.mode_find(no)){    //  判断同名是否满足三次this.mode_des(no.name)}if (this.arr_card.length == 0){this.on_end()}else {console.log(`游戏继续 所有卡数量 ${this.arr_card.length}`)}}

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com