using System.Collections;
|
|
using System.Collections.Generic;
|
|
using UnityEngine;
|
|
|
|
public class RemotePlayer : Player {
|
|
|
|
public Animator Animator;
|
|
public GameObject PlayerModel;
|
|
|
|
private float walkSpeed;
|
|
private Vector3 lastPosition;
|
|
|
|
private float LastSpeed = 0;
|
|
|
|
protected override void Start()
|
|
{
|
|
base.Start();
|
|
lastPosition = transform.position;
|
|
}
|
|
|
|
protected override void Update()
|
|
{
|
|
DoAnimation();
|
|
base.Update();
|
|
}
|
|
|
|
|
|
private void DoAnimation()
|
|
{
|
|
Vector3 dir = transform.position - lastPosition;
|
|
lastPosition = transform.position;
|
|
|
|
float DesiredSpeed = dir.magnitude * 10;
|
|
float setSpeed = Mathf.Lerp(LastSpeed, DesiredSpeed, 0.1f);
|
|
|
|
Animator.SetFloat("WalkSpeed", setSpeed);
|
|
//Debug.Log(setSpeed);
|
|
LastSpeed = setSpeed;
|
|
|
|
PlayerModel.transform.LookAt(PlayerModel.transform.position + dir, Vector3.up);
|
|
//PlayerModel.transform.forward = dir.normalized;
|
|
}
|
|
|
|
public override void SetName(string Name)
|
|
{
|
|
TMPro.TextMeshPro textMesh = GetComponentInChildren<TMPro.TextMeshPro>();
|
|
if (textMesh != null)
|
|
textMesh.text = Name;
|
|
}
|
|
}
|