서버와 클라이언트 통신간 플레이어 상태에 따른 애니메이션 변경 처리에 문제가 발생했습니다.
public void SetState(PlayerState state)
{
if (currentState == PlayerState.Die)
return;
if (state == PlayerState.Die)
{
currentState = state;
SetAnim((int)state);
myCollider.enabled = false;
IsDie = true;
DieStart();
return;
}
C_AnimationPlayer enterPacket = new C_AnimationPlayer { AnimCode = (int)state, MonsterIdx = -1 };
GameManager.Network.Send(enterPacket);
}
SetState(PlayerState state)
: 클라이언트가 서버에 상태 전송ReceiveState(PlayerState state)
: 서버로부터 상태 수신 및 설정SetState(PlayerState state)
SetState(PlayerState state, int monsterIndex)
SetState(PlayerState state, TransformInfo tr)
public void ReceiveState(PlayerState state, int monsterIndex)
{
if (state == PlayerState.Die)
return;
playerAttack.targetMonster = DungeonManager.Instance.activeMonsters[monsterIndex];
currentState = state;
SetAnim((int)state);
transform.LookAt(DungeonManager.Instance.activeMonsters[monsterIndex].transform);
Move(transform.position, Quaternion.identity);
}