288 lines
6.5 KiB
C#
288 lines
6.5 KiB
C#
using System.Collections.Generic;
|
|
using cfg.CharacterCfg;
|
|
using Gameplay.Common;
|
|
using Gameplay.Unit.Data;
|
|
using UnityEngine;
|
|
|
|
namespace Gameplay.Character
|
|
{
|
|
public class CharacterConfigData
|
|
{
|
|
public int cfgId;
|
|
public int localId;
|
|
|
|
/// <summary>
|
|
/// 等级
|
|
/// </summary>
|
|
public int level;
|
|
/// <summary>
|
|
/// 攻击力
|
|
/// </summary>
|
|
public int attack
|
|
{
|
|
get;
|
|
set;
|
|
}
|
|
/// <summary>
|
|
/// 攻击CD
|
|
/// </summary>
|
|
public float shootCd
|
|
{
|
|
get;
|
|
set;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 是否可以撤离
|
|
/// </summary>
|
|
public bool canEvacuate
|
|
{
|
|
get;
|
|
set;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 攻击距离对应的命中率
|
|
/// </summary>
|
|
public List<float> distanceHitRate = new List<float>()
|
|
{
|
|
1f
|
|
};
|
|
|
|
/// <summary>
|
|
/// 举枪时间
|
|
/// </summary>
|
|
public float raiseWeaponTime;
|
|
/// <summary>
|
|
/// 最大子弹数量
|
|
/// </summary>
|
|
public int maxBulletCount;
|
|
/// <summary>
|
|
/// 装弹时间
|
|
/// </summary>
|
|
public float reloadTime;
|
|
|
|
/// <summary>
|
|
/// 单次换弹数量
|
|
/// </summary>
|
|
public int perReloadCount;
|
|
|
|
/// <summary>
|
|
/// 是否允许换弹过程中未满子弹攻击
|
|
/// </summary>
|
|
public bool canAttackNoReloadFull;
|
|
|
|
/// <summary>
|
|
/// 防御力
|
|
/// </summary>
|
|
public int defense;
|
|
/// <summary>
|
|
/// 防御力缩放
|
|
/// </summary>
|
|
public float defenseScale
|
|
{
|
|
get;
|
|
set;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 最大血量
|
|
/// </summary>
|
|
public int maxHp;
|
|
/// <summary>
|
|
/// 最大护甲值
|
|
/// </summary>
|
|
public int maxShield;
|
|
/// <summary>
|
|
/// 移动速度
|
|
/// </summary>
|
|
public float moveSpeed;
|
|
/// <summary>
|
|
/// 无战斗移动速度
|
|
/// </summary>
|
|
public float noFightMoveSpeed;
|
|
/// <summary>
|
|
/// 逃跑速度
|
|
/// </summary>
|
|
public float retreatSpeed;
|
|
/// <summary>
|
|
/// 转身速度
|
|
/// </summary>
|
|
public float turnSpeed;
|
|
/// <summary>
|
|
/// 攻击距离
|
|
/// </summary>
|
|
public int shootDistance;
|
|
/// <summary>
|
|
/// 士气伤害值
|
|
/// </summary>
|
|
public int moraleAttack;
|
|
|
|
/// <summary>
|
|
/// 最大士气值
|
|
/// </summary>
|
|
public int maxMorale
|
|
{
|
|
get
|
|
{
|
|
return _maxMorale;
|
|
}
|
|
set
|
|
{
|
|
_maxMorale = value;
|
|
exitRetreatMorale = Mathf.FloorToInt(GLConfig.Inst.data.FightExitRetreatMoralePercent * _maxMorale);
|
|
}
|
|
}
|
|
private int _maxMorale;
|
|
|
|
/// <summary>
|
|
/// 脱离逃跑状态士气值
|
|
/// </summary>
|
|
public int exitRetreatMorale;
|
|
|
|
/// <summary>
|
|
/// 初始士气值
|
|
/// </summary>
|
|
public int initMorale;
|
|
|
|
/// <summary>
|
|
/// 进入被压制状态的士气值
|
|
/// </summary>
|
|
public int suppressMorale;
|
|
|
|
/// <summary>
|
|
/// 撤退士气值
|
|
/// </summary>
|
|
public int retreatMorale;
|
|
|
|
/// <summary>
|
|
/// 士气值恢复量
|
|
/// </summary>
|
|
public int moraleRecover;
|
|
|
|
/// <summary>
|
|
/// 对人形伤害增伤
|
|
/// </summary>
|
|
public float damageCharacterScale = 1;
|
|
/// <summary>
|
|
/// 对载具伤害增伤
|
|
/// </summary>
|
|
public float damageVehicleScale = 1;
|
|
/// <summary>
|
|
/// 对建筑伤害增伤
|
|
/// </summary>
|
|
public float damageBuildingsScale = 1;
|
|
|
|
/// <summary>
|
|
/// 暴击几率
|
|
/// </summary>
|
|
public float criticalRate;
|
|
/// <summary>
|
|
/// 暴击伤害缩放
|
|
/// </summary>
|
|
public float criticalScale;
|
|
/// <summary>
|
|
/// 职业
|
|
/// </summary>
|
|
public Ejob job;
|
|
/// <summary>
|
|
/// 阵营
|
|
/// </summary>
|
|
public Efaction faction;
|
|
/// <summary>
|
|
/// 星级
|
|
/// </summary>
|
|
public float rarity;
|
|
|
|
/// <summary>
|
|
/// 0 代表不可移动射击
|
|
/// 1 代表可移动射击
|
|
/// </summary>
|
|
public int moveShootType;
|
|
|
|
/// <summary>
|
|
/// 主动技能ID
|
|
/// </summary>
|
|
public int skillId;
|
|
|
|
/// <summary>
|
|
/// 模型路径
|
|
/// </summary>
|
|
public string modelPath
|
|
{
|
|
get;
|
|
set;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 使用行为树名字
|
|
/// </summary>
|
|
public string aiName;
|
|
|
|
/// <summary>
|
|
/// 武器Id
|
|
/// </summary>
|
|
public int weaponId;
|
|
|
|
/// <summary>
|
|
/// 索敌范围
|
|
/// </summary>
|
|
public float findEnemyRange;
|
|
|
|
/// <summary>
|
|
/// 怪物追踪范围
|
|
/// </summary>
|
|
public int trackRange;
|
|
|
|
public int crossLevel;
|
|
public int standLevel;
|
|
|
|
public string eyeBrowsType;
|
|
public string eyeBrowColor;
|
|
public string eyesColor;
|
|
|
|
public List<int> boundTags;
|
|
|
|
public float shiledRecoverDelay;
|
|
public float shieldRecoverFix;
|
|
public float shiledRecoverPercent;
|
|
public int overflowShield;
|
|
|
|
public float hpRecoverDelay;
|
|
public float hpRecoverFix;
|
|
public float hpRecoverPercent;
|
|
|
|
public float attackShiledScale = 1f;
|
|
public float attackHpScale = 1f;
|
|
|
|
public string nameId
|
|
{
|
|
get;
|
|
set;
|
|
}
|
|
|
|
public int breakPassiveSkillId;
|
|
public int awakePassiveSkillId;
|
|
|
|
public bool isAttackIgnoreBlock = false;
|
|
|
|
public List<int> passiveBuffIds = new List<int>();
|
|
|
|
public float attackEndTime
|
|
{
|
|
get;
|
|
set;
|
|
}
|
|
public int attackLoopCount = 1;
|
|
|
|
public DebugShowInfo debugShowInfo;
|
|
|
|
/// <summary>
|
|
/// 伤害穿甲等级
|
|
/// </summary>
|
|
public int attackPowerLevel;
|
|
|
|
|
|
}
|
|
}
|