Вот для примера взял простейший скрипт из M2HL Tutorial Tutorial_2A3.js:
Игрок-Сервер может двигать кубик, а игрок-клиент только смотреть за движениями.
Вот код оригинала:
Синтаксис:
Используется javascript
private var lastPosition : Vector3;
function Update(){
if(Network.isServer){
//Only the server can move the cube!
var moveDirection : Vector3 = new Vector3(-1*Input.GetAxis("Vertical"), 0,Input.GetAxis("Horizontal"));
var speed : float = 5;
transform.Translate(speed * moveDirection * Time.deltaTime);
//Save some network bandwidth; only send an rpc when the position has moved more than X
if(Vector3.Distance(transform.position, lastPosition)>=0.05){
lastPosition=transform.position;
//Send the position Vector3 over to the others; in this case all clients
networkView.RPC("SetPosition", RPCMode.Others, transform.position);
}
}
}
@RPC
function SetPosition(newPos : Vector3){
//This RPC is in this case always called by the server,
// but executed on all clients
transform.position=newPos;
}
function Update(){
if(Network.isServer){
//Only the server can move the cube!
var moveDirection : Vector3 = new Vector3(-1*Input.GetAxis("Vertical"), 0,Input.GetAxis("Horizontal"));
var speed : float = 5;
transform.Translate(speed * moveDirection * Time.deltaTime);
//Save some network bandwidth; only send an rpc when the position has moved more than X
if(Vector3.Distance(transform.position, lastPosition)>=0.05){
lastPosition=transform.position;
//Send the position Vector3 over to the others; in this case all clients
networkView.RPC("SetPosition", RPCMode.Others, transform.position);
}
}
}
@RPC
function SetPosition(newPos : Vector3){
//This RPC is in this case always called by the server,
// but executed on all clients
transform.position=newPos;
}
Я добавил функцию Awake
function Awake() {
networkView.group = 2;
}
и скомпилировал файл.
Потом скомпилировал такой же файл с networkView.group = 3;
Запустил эти два примера, но результатов ноль. Сервер с группой 2, клиент с группой 3, а они всеравно взаимодействуют между собой!
Подскажите в чем проблема, пожалуйста!