| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146 |
- import { Data } from "../core/data/Data";
- import { DataSystem } from "../core/data/DataSystem";
- import { Http, HttpResponseCode } from "../core/net/Http";
- import { ConfigData } from "../data/ConfigData";
- import { RedPointData } from "../main/RedPointData";
- export class FightData extends Data {
- /**总秒伤 包括自己*/
- totalAttack: number;
- /**好友数据*/
- friendDataList: Array<FriendData> = [];
- /**pvp数据*/
- pvpData: PvpData;
- /**攻击红包数据*/
- attackBonusList: Array<AttackBonusData> = [];
- /**被攻击红包数据*/
- beAttackBonusList: Array<BeAttackBonusData> = [];
- /**被攻击通知数据*/
- beAttackNoticeList: Array<BeAttackBonusData> = [];
- /**是否被攻击*/
- beAttack: boolean;
- /**复仇成功的敌人Id*/
- revengeSuccessEnemyId: number;
- /**挑战成功的好友Id*/
- challengeSuccessFriendId: number;
- /**拉取数据*/
- public async pull(http: Http) {
- let pvpData = await http.send("/api/pvp/GetPVPData");
- let friendData = await http.send("/api/pvp/GetFriend");
- let pvpRedbagData = await http.send("/api/pvp/GetPVPBonus");
- if (friendData && friendData.code == HttpResponseCode.Success) {
- this.totalAttack = friendData.data.totalAttack;
- this.friendDataList = friendData.data.friendDatas;
- }
- if (pvpData && pvpData.code == HttpResponseCode.Success) {
- this.pvpData = pvpData.data;
- }
- if (pvpRedbagData && pvpRedbagData.code == HttpResponseCode.Success) {
- this.attackBonusList = pvpRedbagData.data.attackBonusList;
- this.beAttackBonusList = pvpRedbagData.data.beAttackBonusList;
- for (let i = 0; i < this.beAttackBonusList.length; i++) {
- if (this.beAttackBonusList[i].revengedNoticeTime == 0) {
- this.beAttackNoticeList.push(this.beAttackBonusList[i]);
- }
- }
- }
- this.pvpData.challengeWinUserIDList.length >= DataSystem.getData(ConfigData).get("battle").challengeWinTimes && !this.pvpData.receivedChallengeReward
- && (DataSystem.getData(RedPointData).canReceiveFightBox = true)
- }
- }
- export interface PvpData {
- /**剩余次数*/
- times: number;
- /**剩余可以观看视频的次数*/
- videoTimes: number;
- /**观看视频已经增加的次数*/
- addVideoTimes: number;
- /**是否已领取好友挑战奖励*/
- receivedChallengeReward: boolean;
- /**已经被我挑战胜利的好友ID列表*/
- challengeWinUserIDList: Array<number>;
- }
- /**好友信息*/
- export interface FriendData {
- /**好友id*/
- id: number;
- /**兵营等级*/
- campLv: number;
- /**战力 秒伤*/
- attack: number;
- /**昵称*/
- nickName: string;
- /**头像*/
- avator: string;
- /**好友英雄ID*/
- heroID: number;
- /**贡献值*/
- contribution: number;
- }
- /**攻击红包*/
- export interface AttackBonusData {
- /**红包编号*/
- key: string;
- /**对手ID*/
- enemyID: number;
- /**对手姓名*/
- nickName: string;
- /**头像*/
- avator: string;
- /**战力 秒伤*/
- attack: number;
- /**红包可以打开的时间点(秒)*/
- canOpenTime: number;
- }
- /**被攻击红包*/
- export interface BeAttackBonusData {
- /**红包编号*/
- key: string;
- /**对手ID*/
- enemyID: number;
- /**对手姓名*/
- nickName: string;
- /**头像*/
- avator: string;
- /**战力 秒伤*/
- attack: number;
- /**红包可以打开的时间点(秒)*/
- canOpenTime: number;
- /**红包的创建时间点(秒)*/
- createTime: number;
- /**打开人的ID(id>0 则红包界面不显示)*/
- openID: number;
- /**是否已复仇(true 则复仇界面不显示)*/
- revenged: boolean;
- /**复仇通知时间(0 则需要提示玩家被攻击了)*/
- revengedNoticeTime: number;
- /**损失的类型(money粮草,diamond元宝,bonus红包币,prestige威望)*/
- lossType: string;
- /**损失的数量*/
- lossNum: number;
- }
- /**切磋item数据*/
- export class FightItemData {
- id: number;
- attack: number;
- nickName: string;
- avator: string;
- /**是否是随机玩家*/
- isRandomPlayer: boolean;
- /**item数据类型 1 切磋 2 复仇*/
- itemType: number;
- /**红包类型 -1 没有红包 1 攻击红包 2 被攻击红包*/
- redbagType: number;
- /**红包编号 如果有红包*/
- redbagKey: string;
- /**红包数据 可能是攻击红包 可能是被攻击红包*/
- redbagData: any;
- /**可以打开的时间点*/
- canOpenTime: number;
- }
|