namespace ET.Server
{
///
/// 游戏服数据结构
///
public class Struct
{
///
/// 数据结构 int_int
///
public class IntIntData
{
public int value1 { get; set; }
public int value2 { get; set; }
public IntIntData(int value1, int value2)
{
this.value1 = value1;
this.value2 = value2;
}
}
///
/// 玩家技能数据
///
public class SkillInfo
{
/** 技能id **/
public int id { get; set; }
/** 技能等级 **/
public int level { get; set; }
/** 斩妖特殊含义: 冷却时间减少,触发几率增加,持续时间增加 **/
public int[] talentLevel = new int[3];
/** 技能类型 **/
public int type { get; set; }
/** 技能到期时间戳 **/
public long skillTime { get; set; }
/** 技能cd变更,万分比 **/
public int cdTime { get; set; }
public int flag { get; set; }
}
///
/// 玩家技能存储数据
///
public class PlayerSkillBaseData
{
/** 技能id **/
public int id { get; set; }
/** 技能等级 **/
public int level { get; set; }
/** 是否已解锁 */
public bool unlock { get; set; }
/** 技能到期时间戳 **/
public long skillTime { get; set; }
public PlayerSkillBaseData(int skillId, int level, bool unlock, long skillTime)
{
this.id = skillId;
this.level = level;
this.unlock = unlock;
this.skillTime = skillTime;
}
/** 是否已解锁 */
public bool isUnlock() {
return this.unlock;
}
}
///
/// 怪物单位数据
///
public class MonsterUnit
{
/** 怪物名字 **/
public string name{ get; set; }
/** 怪物模板ID **/
public int id{ get; set; }
/** 阵营信息 **/
public int force{ get; set; }
/** 刷新点名字,为空才去读x, y **/
public string flag{ get; set; }
public bool autoGuard{ get; set; }
/** 同一个Area是否只能同时有一个怪存在 **/
public bool unique = false;
/** 坐标x **/
public int x{ get; set; }
/** 坐标y **/
public int y{ get; set; }
/** 是否是任务 共享怪 **/
public int shareType{ get; set; }
/** 动态怪物等级,战斗服根据此计算怪物的动态数值 **/
public int level{ get; set; }
/** 初始朝向 **/
public float birthDirection{ get; set; }
/** 服务器标记字段,怪物死亡时,会回传回来 **/
public int gsFlag{ get; set; }
/** 指定血量 **/
public int hp{ get; set; }
public int maxHP{ get; set; }
/** 指定追击玩家id(必须是无限追击怪才会联动生效) **/
public string attackPlayer{ get; set; }
/** 创建护卫怪,主人ObjectId(主人脱战或者死亡消失) **/
public int masterID{ get; set; }
public MonsterUnit() {
}
public MonsterUnit(int monsterID, int force, bool unique, int x, int y) {
this.id = monsterID;
this.force = force;
this.unique = unique;
this.x = x;
this.y = y;
}
public MonsterUnit(int monsterID, string refrushEvent, bool unique, int force) {
this.id = monsterID;
this.force = force;
this.unique = unique;
this.flag = refrushEvent;
}
public MonsterUnit(int monsterID, string refrushEvent, bool unique, int force, float birthDirection) {
this.id = monsterID;
this.force = force;
this.unique = unique;
this.flag = refrushEvent;
this.birthDirection = birthDirection;
}
}
///
/// 战报数据
///
public class BattleReports
{
public uint ID { get; set; }
public string PlayerUUID { get; set; }
/** 模板id **/
public int TemplateId { get; set; }
/** 单位名称 **/
public string Name { get; set; }
/** 阵营 **/
public int Force { get; set; }
/** 对所有单位输出的总伤害 **/
public int TotalDamage { get; set; }
/** 对所有单位输出的总治疗量 **/
public int TotalHealing { get; set; }
public BattleReports(uint id, string PlayerUUID, int templateId, string name, int force, int totalDamage)
{
this.ID = id;
this.PlayerUUID = PlayerUUID;
this.TemplateId = templateId;
this.Name = name;
this.Force = force;
this.TotalDamage = totalDamage;
}
}
}
}