Среда, 27 Ноября 2024, 11:00

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Здравствуйте. Не работает атрибут [command]
FearelesДата: Понедельник, 01 Июня 2020, 10:19 | Сообщение # 1
почетный гость
Сейчас нет на сайте
Решил разобраться с сетевой частью. Написал простенький класс.

Есть
[SyncVar] public int a;
Которая выводится на экран

Есть код в клиенте, который вызывает обработку его
if (Input.GetMouseButtonUp(0))

{
if(isLocalPlayer)
CmdAUp();
}
собсно функция
[Command] public void CmdAUp()
{
a++;
}

Но не работает
Причем, если увеличивать а на сервере, то у клиента отображается.

Галочку "LocalPlayerAuthiority" постаил


Делаю игру на unity 3d
https://vk.com/ser_gunnar


Сообщение отредактировал Feareles - Понедельник, 01 Июня 2020, 12:27
drcrackДата: Понедельник, 01 Июня 2020, 19:00 | Сообщение # 2
старожил
Сейчас нет на сайте
https://answers.unity.com/questio....ly.html
FearelesДата: Понедельник, 01 Июня 2020, 19:45 | Сообщение # 3
почетный гость
Сейчас нет на сайте
В том-то и дело, что вызов функции не происходит. т.е. при нажатии кнопки мыши, не происходит увеличение а.

Делаю игру на unity 3d
https://vk.com/ser_gunnar
shizofrenДата: Понедельник, 01 Июня 2020, 20:55 | Сообщение # 4
Starting MS-DOS...
Сейчас нет на сайте
Feareles, я работал с этим почти три года назад. Насколько я помню, у меня были большие проблемы с синк варами, так что я позже отказался от их использования. Попробуй подебажить код, вызывается ли вообще метод с этим атрибутом. Если да - проблема в синк варе, надо искать другое решение, а именно ручную синхронизацию делать. Это не сложно

Моя команда
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг