From 5bc3f1d9547b5bea92e1d0c187ee140558e0f273 Mon Sep 17 00:00:00 2001 From: "PC-20230316NUNE\\Administrator" <2858626794@qq.com> Date: Wed, 13 Dec 2023 10:51:31 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../assets/script/battle/entity/GTactical.ts | 11 ++++ .../script/battle/modes/GCampGuardianMode.ts | 57 ++++++++++++------- JisolGameCocos/assets/script/entity.meta | 9 +++ JisolGameCocos/assets/script/entity/GPet.ts | 9 +++ .../assets/script/entity/GPet.ts.meta | 9 +++ JisolGameCocos/extensions/ngame | 2 +- 6 files changed, 75 insertions(+), 22 deletions(-) create mode 100644 JisolGameCocos/assets/script/entity.meta create mode 100644 JisolGameCocos/assets/script/entity/GPet.ts create mode 100644 JisolGameCocos/assets/script/entity/GPet.ts.meta diff --git a/JisolGameCocos/assets/script/battle/entity/GTactical.ts b/JisolGameCocos/assets/script/battle/entity/GTactical.ts index d59899e6..52fc7d17 100644 --- a/JisolGameCocos/assets/script/battle/entity/GTactical.ts +++ b/JisolGameCocos/assets/script/battle/entity/GTactical.ts @@ -101,6 +101,17 @@ export class GTactical{ return null; } + //获取XY的位置 + getPosXYPosition(x:number,y:number,father:Vec2 = this.offset){ + return this.getPosition(this.getPosXY(x,y),father); + } + + //获取XY的 Index + getPosXY(x:number,y:number):number{ + return this.tactical[y][x]; + } + + //返回我在第几排 getRow(index:number):number{ let pos; diff --git a/JisolGameCocos/assets/script/battle/modes/GCampGuardianMode.ts b/JisolGameCocos/assets/script/battle/modes/GCampGuardianMode.ts index 569d9f0a..245f4629 100644 --- a/JisolGameCocos/assets/script/battle/modes/GCampGuardianMode.ts +++ b/JisolGameCocos/assets/script/battle/modes/GCampGuardianMode.ts @@ -10,6 +10,8 @@ import GRoleCGCrystal from "../base/role/CampGuardian/GRoleCGCrystal"; import { TD } from "../../App"; import { GTowards } from "../base/GObject"; import GRoleBase from "../base/role/GRoleBase"; +import { GTactical } from "../entity/GTactical"; +import JNFrameTime from "../../../../extensions/ngame/assets/ngame/sync/frame/game/time/JNFrameTime"; const { ccclass, property } = _decorator; //阵营守护 角色 @@ -51,6 +53,11 @@ export default class GCampGuardianMode extends GBaseMode<{},{}>{ this.onGenCrystal(GCampGuardianEnum.PLAYER); this.onGenCrystal(GCampGuardianEnum.ENEMY); + //定时器生成 + JNFrameTime.getInstance().setInterval(() => { + // this.onGenRole(GCampGuardianEnum.PLAYER,TD.TbGRole.get()); + },1000) + } //生成水晶 @@ -72,35 +79,43 @@ export default class GCampGuardianMode extends GBaseMode<{},{}>{ } - // //生成宠物 - // onGenRole(type:GCampGuardianEnum,info:TB.TbGRole):GRoleDefault { + //生成宠物 + onGenRole(type:GCampGuardianEnum,info:TB.TbGRole):GRoleDefault { - // let tactical = this.getInfo(type).tactical; - // let pos:Vec2 = this.getInfo(type).tactical.getPosition(index); - // if(!pos) return; - // let role = instantiate(this.rolePrefab); + let tactical = GTactical.getTactical(); + let pos:Vec2; + + switch(type){ + case GCampGuardianEnum.PLAYER: + pos = tactical.getPosXYPosition(1,1,this.playerPos); + break; + case GCampGuardianEnum.ENEMY: + pos = tactical.getPosXYPosition(1,1,this.enemyPos); + break; + } - // let entity = role.getComponent(GRoleDefault); - // //初始化 - // entity.onInit(type,info,tactical,index); - // //绑定寻敌 - // entity.onQueryEunmy = () => { - // return this.getEnumy(entity,type); - // } + if(!pos) return; + let role = instantiate(this.petPrefab); - // //绑定死亡回调 - // entity.addKillBackEvent(this.onRoleKillBack.bind(this)) - // //绑定受击回调 - // entity.addHitCallback(this.onHitBack.bind(this)); + let entity = role.getComponent(GRoleDefault); + //初始化 + entity.onInit(type,info,tactical,tactical.getPosXY(1,1)); - // this.addGObject(entity,tactical.getPosition(index)); + // //绑定寻敌 + // entity.onQueryEunmy = () => { + // return this.getEnumy(entity,type); + // } - // this.getOnesRole(type).push(entity); + // //绑定死亡回调 + // entity.addKillBackEvent(this.onRoleKillBack.bind(this)) + // //绑定受击回调 + // entity.addHitCallback(this.onHitBack.bind(this)); - // return entity; + this.addGObject(entity,pos); + return entity; - // } + } } diff --git a/JisolGameCocos/assets/script/entity.meta b/JisolGameCocos/assets/script/entity.meta new file mode 100644 index 00000000..48a35358 --- /dev/null +++ b/JisolGameCocos/assets/script/entity.meta @@ -0,0 +1,9 @@ +{ + "ver": "1.2.0", + "importer": "directory", + "imported": true, + "uuid": "469e759f-b689-40d4-96f2-a1747cd8e508", + "files": [], + "subMetas": {}, + "userData": {} +} diff --git a/JisolGameCocos/assets/script/entity/GPet.ts b/JisolGameCocos/assets/script/entity/GPet.ts new file mode 100644 index 00000000..f3bea950 --- /dev/null +++ b/JisolGameCocos/assets/script/entity/GPet.ts @@ -0,0 +1,9 @@ + +export enum GPet { + 小石头 = 10001, + 坚强小石 = 10002, + 疯狂松鼠 = 10003, + 妙蛙种子 = 10004, + 雷吉艾斯 = 10005, +} + diff --git a/JisolGameCocos/assets/script/entity/GPet.ts.meta b/JisolGameCocos/assets/script/entity/GPet.ts.meta new file mode 100644 index 00000000..a5575916 --- /dev/null +++ b/JisolGameCocos/assets/script/entity/GPet.ts.meta @@ -0,0 +1,9 @@ +{ + "ver": "4.0.23", + "importer": "typescript", + "imported": true, + "uuid": "618335e2-2da9-4c75-aefc-04e07e161128", + "files": [], + "subMetas": {}, + "userData": {} +} diff --git a/JisolGameCocos/extensions/ngame b/JisolGameCocos/extensions/ngame index b8a23be6..8797aaed 160000 --- a/JisolGameCocos/extensions/ngame +++ b/JisolGameCocos/extensions/ngame @@ -1 +1 @@ -Subproject commit b8a23be6dffa05a2e8e46fbf0b27e859372ac3be +Subproject commit 8797aaedf9707027df90d0b304b952aa6afa3a30