BattleModel.ts 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. import FguiMgr from "../../../frameWork/fgui/FguiMgr";
  2. import UEBattleRole from "../../../logic/battle/UEBattleRole";
  3. import { BattleMainView } from "../../../logic/fgui/Battle/BattleMain/BattleMainView";
  4. import { FightBase } from "../../../shared/base";
  5. import { ResFightTest } from "../../../shared/fight/PtlFightTest";
  6. import { ViewZOrder } from "../../const/ViewZOrder";
  7. import GameDataCenter from "../../GameDataCenter";
  8. import { BattleModelData } from "./BattleModelData";
  9. export default class BattleModel extends BattleModelData {
  10. battleRoleList: { [id: string]: UEBattleRole } = {}
  11. realBattleSpeed: number;
  12. fightInfo: ResFightTest;
  13. constructor() {
  14. super("battle");
  15. this.realBattleSpeed = 1.8;
  16. }
  17. //发起战斗
  18. startFight(fightInfo: FightBase) {
  19. FguiMgr.Instance.openUI(BattleMainView, ViewZOrder.Battle, () => {
  20. }, {fightInfo: fightInfo});
  21. }
  22. addRole(id: string, role: UEBattleRole) {
  23. this.battleRoleList[id] = role
  24. }
  25. setFightInfo(res: ResFightTest) {
  26. this.fightInfo = res;
  27. }
  28. async SendTestFight(cb: Function) {
  29. let ret = await GameDataCenter.gameServer.ReqApi("fight/FightTest", {});
  30. if (ret?.res) {
  31. this.setFightInfo(ret.res);
  32. cb(ret.res);
  33. }
  34. }
  35. }