using vnxbqy.UI;
|
using UnityEngine;
|
|
public class GA_JiaPlayer : GActorPlayerBase
|
{
|
private PlayerInfo m_PlayerInfo;
|
public void Init(uint serverInstID, uint clientInstID, PlayerInfo info, E_ActorGroup group)
|
{
|
m_PlayerInfo = info;
|
Init(serverInstID, clientInstID, group, null);
|
}
|
|
protected sealed override void OnInit(GameNetPackBasic package)
|
{
|
base.OnInit(package);
|
|
if (m_PlayerInfo == null)
|
{
|
return;
|
}
|
|
JobSetup = JobSetupConfig.Get(m_PlayerInfo.job);
|
|
ActorInfo.moveSpeed = 3;
|
ActorInfo.atkSpeed = 1;
|
|
CEquipInfo _itemInfo;
|
|
if (m_PlayerInfo.itemDatas != null)
|
{
|
// 因为衣服是所有装备的父节点, 需要预先处理衣服
|
for (int i = 0; i < m_PlayerInfo.itemDatas.Length; ++i)
|
{
|
_itemInfo = m_PlayerInfo.itemDatas[i];
|
|
if (_itemInfo.place == (int)RoleEquipType.Clothes)
|
{
|
SwitchClothes((uint)_itemInfo.id);
|
break;
|
}
|
}
|
|
if (ClothesItemID == 0 || ClothesItemID == uint.MaxValue)
|
{
|
SwitchClothes(0);
|
}
|
|
if (m_PlayerInfo.itemDatas != null)
|
{
|
for (int i = 0; i < m_PlayerInfo.itemDatas.Length; ++i)
|
{
|
_itemInfo = m_PlayerInfo.itemDatas[i];
|
|
if (_itemInfo.place == (int)RoleEquipType.Weapon)
|
{
|
SwitchWeapon((uint)_itemInfo.id);
|
}
|
else if (_itemInfo.place == (int)RoleEquipType.Weapon2)
|
{
|
SwitchSecondary((uint)_itemInfo.id);
|
}
|
}
|
}
|
|
if (WeaponItemID == 0 || WeaponItemID == uint.MaxValue)
|
{
|
SwitchWeapon(0);
|
}
|
}
|
|
ActorInfo.LV = m_PlayerInfo.level == 0 ? (ushort)1 : m_PlayerInfo.level;
|
ActorInfo.Job = m_PlayerInfo.job;
|
ActorInfo.face = m_PlayerInfo.face;
|
ActorInfo.facePic = m_PlayerInfo.facePic;
|
ActorInfo.PlayerName = m_PlayerInfo.name;
|
ActorInfo.Hp = m_PlayerInfo.hp == 0 ? 1 : m_PlayerInfo.hp;
|
ActorInfo.MaxHp = m_PlayerInfo.maxHp == 0 ? 1 : m_PlayerInfo.maxHp;
|
|
RequestName();
|
}
|
|
public override void RequestName()
|
{
|
ReleaseName();
|
if (MovingState == E_MovingState.Ride)
|
{
|
m_HeadUpName = HeadUpName.RequireHeadUpName(HeadUpName.Pattern.Player, MP_Name1, 0, CameraController.Instance.CameraObject);
|
}
|
else
|
{
|
m_HeadUpName = HeadUpName.RequireHeadUpName(HeadUpName.Pattern.Player, MP_Name, 0, CameraController.Instance.CameraObject);
|
}
|
|
m_HeadUpName.SetPlayerInfo(new HeadUpName.PlayerInfo()
|
{
|
realm = ActorInfo.realm,
|
title = ActorInfo.titleID,
|
name = ActorInfo.PlayerName,
|
alliance = ActorInfo.familyName,
|
});
|
RefreshShediaoEffect(ActorInfo.titleID);
|
}
|
|
protected override void OnPutonClothes(uint clothesItemID, GameObject clothed)
|
{
|
clothed.layer = LayerUtility.Player;
|
|
SkinnedMeshRenderer _renderer = clothed.GetComponentInChildren<SkinnedMeshRenderer>();
|
_renderer.gameObject.SetLayer(LayerUtility.Player, false);
|
}
|
|
protected override void OnPutonSecondary(uint secondaryItemID, GameObject secondary)
|
{
|
Renderer _renderer = secondary.GetComponentInChildren<Renderer>();
|
if (_renderer)
|
{
|
_renderer.gameObject.SetLayer(LayerUtility.Player, false);
|
}
|
}
|
|
protected override void OnPutonWeapon(uint weaponItemID, GameObject weapon)
|
{
|
Renderer _renderer = weapon.GetComponentInChildren<Renderer>();
|
_renderer.gameObject.SetLayer(LayerUtility.Player, false);
|
}
|
|
protected override void OnPutonWing(uint wingItemID, GameObject wing)
|
{
|
SkinnedMeshRenderer _renderer = wing.GetComponentInChildren<SkinnedMeshRenderer>();
|
_renderer.gameObject.SetLayer(LayerUtility.Player, false);
|
}
|
|
public override void SyncSuitEffect(bool onOrOff = true)
|
{
|
}
|
|
protected override void OnSwitchHorse(uint horseID, GameObject horse)
|
{
|
}
|
|
public override void Destroy()
|
{
|
}
|
|
public override void OnHorse(byte upOrDown) { }
|
|
public override void RefreshLifeBar(ulong value) { }
|
|
public override bool CanAtked()
|
{
|
return false;
|
}
|
|
private int m_ComAtkIndex;
|
private int m_AtkCount;
|
public bool PlaySkill()
|
{
|
m_AtkCount++;
|
Skill _skill = null;
|
if (m_AtkCount == 1)
|
{
|
int skillID = ActorInfo.Job == 1 ? 50000 : 55000;
|
_skill = SkillMgr.Get(skillID);
|
}
|
else if (m_AtkCount == 4)
|
{
|
m_AtkCount = 0;
|
return false;
|
}
|
|
|
if (_skill == null)
|
{
|
if (m_ComAtkIndex > JobSetup.ComAtkIdList.Length - 1)
|
{
|
m_ComAtkIndex = 0;
|
}
|
int _comSkillId = JobSetup.ComAtkIdList[m_ComAtkIndex];
|
_skill = SkillMgr.Get(_comSkillId);
|
m_ComAtkIndex += 1;
|
}
|
|
SkillMgr.CastSkill(ServerInstID, _skill.id);
|
|
if (_skill.skillInfo.config.Skillactmark > 0
|
&& _skill.skillInfo.config.Skillactmark < 20)
|
{
|
switch (_skill.skillInfo.config.Skillactmark)
|
{
|
case 10:
|
Play(GAStaticDefine.State_Attack1Hash, 0);
|
break;
|
case 11:
|
Play(GAStaticDefine.State_Attack2Hash, 0);
|
break;
|
case 12:
|
Play(GAStaticDefine.State_Attack3Hash, 0);
|
break;
|
case 13:
|
Play(GAStaticDefine.State_Attack4Hash, 0);
|
break;
|
}
|
|
}
|
else
|
{
|
switch (_skill.skillInfo.config.Skillactmark)
|
{
|
case 21:
|
Play(GAStaticDefine.State_Skill21, 0);
|
break;
|
case 22:
|
Play(GAStaticDefine.State_Skill22, 0);
|
break;
|
case 23:
|
Play(GAStaticDefine.State_Skill23, 0);
|
break;
|
case 24:
|
Play(GAStaticDefine.State_Skill24, 0);
|
break;
|
case 25:
|
Play(GAStaticDefine.State_Skill25, 0);
|
break;
|
case 26:
|
Play(GAStaticDefine.State_Skill26, 0);
|
break;
|
case 27:
|
Play(GAStaticDefine.State_Skill27, 0);
|
break;
|
case 28:
|
Play(GAStaticDefine.State_Skill28, 0);
|
break;
|
case 29:
|
Play(GAStaticDefine.State_Skill29, 0);
|
break;
|
case 99:
|
Play(GAStaticDefine.State_RollHash, 0);
|
break;
|
}
|
}
|
return true;
|
}
|
}
|