import { _decorator, Component, Node, Vec3 } from 'cc'; import { Data } from '../core/data/Data'; import { BulletData } from './BulletData'; import { HeroData } from './HeroData'; import { HeroSlotData } from './HeroSlotData'; import { Monster } from './Monster'; const { ccclass, property } = _decorator; @ccclass('BattleData') export class BattleData extends Data { /**英雄插槽 */ public slots: Map = new Map(); /**英雄数据 */ public heros: Map = new Map(); /**当前关卡 */ public mission: number = 0; /**当前战斗状态 */ public battleState: BattleState = BattleState.outBattle; /**当前阵营数据 */ public campsData: Array<{ camp: Camp, count: number }> = []; /**使用统帅技能 */ public useLeaderSkill: { id: number, lv: number } = { id: 0, lv: 0 }; /**准备创建的子弹 */ public _bullets: Array = []; /**当前场上怪物 */ public _monsters: Array = []; /**准备子弹受击的怪物 */ public _hitMonster: Array = []; /**强制目标 */ public _target: number = -1; /**准备删除的怪物 (怪物内部ID)*/ public _deleteMonster: Array = []; /**上阵英雄是否改变 */ public _isHeroChange = false; /**阻挡物 */ public _obstruct: Node; /**进入终点的怪物数量 */ public _moveEndCount = 0; /**怪物被击杀 */ public _monsterKilled: Array = []; /**被击杀的怪物坐标 */ public _monsterKilledNode: Array = []; } export enum BattleState { inBattle, outBattle } export enum Camp { wei = 1, shu = 2, wu = 3, qun = 4, }