/* * Copyright 2014 The Skfiy Open Association. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.skfiy.typhon.spi.war; import com.alibaba.fastjson.JSONObject; import java.util.ArrayList; import java.util.List; /** * * @author Kevin Zou <kevinz@skfiy.org> */ public class WarReport { private Entity attackerEntity; private Entity defenderEntity; private final List<Round> rounds = new ArrayList<>(); private Effect effect = Effect.W; public Entity getAttackerEntity() { return attackerEntity; } public void setAttackerEntity(Entity attackerEntity) { this.attackerEntity = attackerEntity; } public Entity getDefenderEntity() { return defenderEntity; } public void setDefenderEntity(Entity defenderEntity) { this.defenderEntity = defenderEntity; } public List<Round> getRounds() { return rounds; } public boolean addRound(Round round) { return rounds.add(round); } public void setRounds(List<Round> rounds) { this.rounds.addAll(rounds); } public Effect getEffect() { return effect; } public void setEffect(Effect effect) { this.effect = effect; } /** * */ public enum Effect { /** * win. */ W, /** * defeat. */ D, /** * continue. */ C } /** * */ public static class Entity { private String roleName; private int level; private int powerGuess; private List<JSONObject> heros; private String succorIid; // FIXME Test private int succorAtk; private int succorFury; public String getRoleName() { return roleName; } public void setRoleName(String roleName) { this.roleName = roleName; } public int getLevel() { return level; } public void setLevel(int level) { this.level = level; } public int getPowerGuess() { return powerGuess; } public void setPowerGuess(int powerGuess) { this.powerGuess = powerGuess; } public List<JSONObject> getHeros() { return heros; } public void setHeros(List<JSONObject> heros) { this.heros = heros; } public String getSuccorIid() { return succorIid; } public void setSuccorIid(String succorIid) { this.succorIid = succorIid; } public int getSuccorAtk() { return succorAtk; } public void setSuccorAtk(int succorAtk) { this.succorAtk = succorAtk; } public int getSuccorFury() { return succorFury; } public void setSuccorFury(int succorFury) { this.succorFury = succorFury; } } /** * */ public static class Round { // 南方 private int[] sholdPoints; // 北方 private int[] nholdPoints; private final List<Object> sbufDetails = new ArrayList<>(); private final List<Object> sdetails = new ArrayList<>(); private final List<Object> nbufDetails = new ArrayList<>(); private final List<Object> ndetails = new ArrayList<>(); private Object sjson; private Object njson; public int[] getSholdPoints() { return sholdPoints; } public void setSholdPoints(int[] sholdPoints) { this.sholdPoints = sholdPoints; } public int[] getNholdPoints() { return nholdPoints; } public void setNholdPoints(int[] nholdPoints) { this.nholdPoints = nholdPoints; } public List<Object> getNbufDetails() { return nbufDetails; } public List<Object> getSdetails() { return sdetails; } public void setSdetails(List<Object> sdetails) { this.sdetails.addAll(sdetails); } public List<Object> getSbufDetails() { return sbufDetails; } public List<Object> getNdetails() { return ndetails; } public void setNdetails(List<Object> ndetails) { this.ndetails.addAll(ndetails); } public Object getSjson() { return sjson; } public void setSjson(Object sjson) { this.sjson = sjson; } public Object getNjson() { return njson; } public void setNjson(Object njson) { this.njson = njson; } } }