using UnityEngine;
using System.Collections;
using Assets.Model;
public class PlayerMove : MonoBehaviour {
// Use this for initialization
private PlayerAnimation m_ScriptPlayerAnimation;
public int PlayerMoveSpeed;
private UnityEngine.Vector3 MoveDistanceX, MoveDistanceY;
private CharacterController m_CharacterController;
private UnityEngine.Vector3 TargetPostion;
public int m_State;
private MoveDTO SendDto;
private string SendStr;
void Start () {
m_ScriptPlayerAnimation = this.GetComponent<PlayerAnimation>();
SendDto = new MoveDTO();
SendDto.name = GameInfo.GetInstance().MyHeroModel.name;
SendDto.map = GameInfo.GetInstance().MyHeroModel.map;
m_State = PlayerState.Idle;
PlayerMoveSpeed = 6;
m_CharacterController = this.GetComponent<CharacterController>();
if (gameObject.name == "jiansheng(Clone)")
PlayerMoveSpeed = -PlayerMoveSpeed;
}
// Update is called once per frame
void Update () {
MoveDistanceX = transform.right * PlayerMoveSpeed * Input.GetAxis("Horizontal");
MoveDistanceY = transform.forward * PlayerMoveSpeed * Input.GetAxis("Vertical");
if (MoveDistanceX + MoveDistanceY == UnityEngine.Vector3.zero)
m_ScriptPlayerAnimation.MyState = PlayerState.Idle;
else
{
m_CharacterController.SimpleMove(MoveDistanceX + MoveDistanceY);
m_ScriptPlayerAnimation.MyState = PlayerState.Move;
//发送自己的位置、状态信息给服务器
SendDto.Point = new Assets.Model.Vector3(transform.position);
SendDto.Rotation = new Assets.Model.Vector4(transform.rotation);
SendDto.Dir = PlayerState.Move;
SendStr = Coding<MoveDTO>.encode(SendDto);
NetWorkScript.getInstance().sendMessage(Protocol.MAP, 0, MapProtocol.MOVE_CREQ, SendStr);
}
/* if(Input.GetAxis("Fire1")>0)
m_State = PlayerStates.attack1;
else if (Input.GetAxis("Fire2") > 0)
m_State = PlayerStates.attack2;
else if (Input.GetAxis("Fire3") > 0)
m_State = PlayerStates.skill;*/
}
}