public void SendSheepMovementMessage(string _sheepID, Vector3 _position, Quaternion _rotation, float _timeTolerp, int anim_index) { SheepMovementMessage _msg = new SheepMovementMessage() { objectPosition = _position, objectRotation = _rotation, objectTransformName = _sheepID, time = _timeTolerp, objectAnimation = anim_index }; //NetworkServer.SendToAll(sheep_movement_msg, _msg); NetworkManager.singleton.client.Send(sheep_movement_msg, _msg); }
public void processSheepMovementMessage(SheepMovementMessage _msg) { //server does not care about sheep movement receiving messages if (isServer) { return; } GameObject sheep = GameObject.Find(_msg.objectTransformName); if (sheep != null) { SheepMovement sheep_movement = sheep.GetComponent <SheepMovement>(); if (sheep_movement.getState() != (int)State.Unavailable) { sheep_movement.localMove(_msg.objectPosition, _msg.objectRotation, _msg.time, _msg.objectAnimation); } } }
//recebe do servidor movement de uma ovelha private void OnReceiveSheepMovementMessage(NetworkMessage _message) { SheepMovementMessage _msg = _message.ReadMessage <SheepMovementMessage>(); sheepManager.GetComponent <SheepAI>().processSheepMovementMessage(_msg); }
public void SendSheepMovement(NetworkMessage _message) { SheepMovementMessage _msg = _message.ReadMessage <SheepMovementMessage>(); NetworkServer.SendToAll(sheep_movement_msg, _msg); }