XGM Forum
Сайт - Статьи - Проекты - Ресурсы - Блоги

Форуме в режиме ТОЛЬКО ЧТЕНИЕ. Вы можете задать вопросы в Q/A на сайте, либо создать свой проект или ресурс.
Вернуться   XGM Forum > Warcraft> Академия: форум для вопросов> Jass
Ник
Пароль
Войти через VK в один клик
Сайт использует только имя.

Ответ
 
FatalBlade

offline
Опыт: 7,398
Активность:
Десинк
У меня такая проблема, через 2 минуты после начала игры по инету, всех кроме хоста выкидывает из игры. Говорят это десинхронизация. Если да, то что её вызывает и как её исправить. Если нет, тот в чём может быть проблема?
Вот кусок кода:
             if GetLocalPlayer() == p2 then
                  set bt = CreateTextTag()
                  call SetTextTagText( bt, rwd, 0.027 )
                  call SetTextTagPos( bt, x0, y0, 0.0 )
                  call SetTextTagColor( bt, 255, 180, 0, 0 )
                  set t1 = CreateTimer()
                  set id1 = GetHandleId(t1)
                  call SaveTextTagHandle(udg_Hash, id1, 0, bt)
                  call SaveReal(udg_Hash, id1, 1, 0.0)
                  call SaveInteger(udg_Hash, id1, 2, 1)
                  call SaveStr(udg_Hash, id1, 3, rwd)
                  call SaveReal(udg_Hash, id1, 4, x0)
                  call SaveReal(udg_Hash, id1, 5, y0)
                  call TimerStart( t1, 0.04, true, function RWText )
             endif
Возможно что десинк происходит изза этого?

Отредактировано ShadoW DaemoN, 27.01.2012 в 09:12.
Старый 21.01.2012, 21:13
Furman

offline
Опыт: 399
Активность:
Если не ошибаюсь создание текста вызывает десинк, пробуй 100% прозрачность для остальных
Старый 21.01.2012, 21:21
16GB
GhostOne User
offline
Опыт: 60,317
Активность:
нельзя локально создавать обьекты
((код jass
set bt = CreateTextTag()
if GetLocalPlayer() == p2 then
call SetTextTagText( bt, rwd, 0.027 )
call SetTextTagPos( bt, x0, y0, 0.0 )
call SetTextTagColor( bt, 255, 180, 0, 0 )
endif
set t1 = CreateTimer()
set id1 = GetHandleId(t1)
call SaveTextTagHandle(udg_Hash, id1, 0, bt)
call SaveReal(udg_Hash, id1, 1, 0.0)
call SaveInteger(udg_Hash, id1, 2, 1)
call SaveStr(udg_Hash, id1, 3, rwd)
call SaveReal(udg_Hash, id1, 4, x0)
call SaveReal(udg_Hash, id1, 5, y0)
call TimerStart( t1, 0.04, true, function RWText )
))
Старый 21.01.2012, 21:23
FatalBlade

offline
Опыт: 7,398
Активность:
16GB, спс.
Старый 21.01.2012, 21:29
16GB
GhostOne User
offline
Опыт: 60,317
Активность:
советую почитать
Старый 21.01.2012, 21:32
FatalBlade

offline
Опыт: 7,398
Активность:
Значит GetLocalPlayer() десинхронизирует если с его помощью был локально создан хэндл?..
А вообще, есть ещё случаи которые могут вызвать десинк? Не обязательно с GetLocalPlayer()
Старый 21.01.2012, 21:46
FatalBlade

offline
Опыт: 7,398
Активность:
New_Enegry:
есть - деформация террайна при разных настройках графики;
этого слава богу нету у меня)
New_Enegry:
спам критическими ("тонкими") функциями; ...
например?
Старый 21.01.2012, 22:06
ScorpioT1000
Работаем
offline
Опыт: отключен
Взятие координат камеры - локальные значения =)
Старый 22.01.2012, 01:58
FatalBlade

offline
Опыт: 7,398
Активность:
ScorpioT1000:
Взятие координат камеры - локальные значения =)
У меня работает взятие и проверка координаты Z камеры, и оно не приводит к десинку.
Старый 22.01.2012, 03:29
ScorpioT1000
Работаем
offline
Опыт: отключен
И создание юнита в этих координатах?
Старый 22.01.2012, 09:32
FatalBlade

offline
Опыт: 7,398
Активность:
ScorpioT1000:
И создание юнита в этих координатах?
нет) но даже если буду создавать не должно быть десинка. Координаты камера для игрока можно вычислять и без GetLocalPlayer()
Старый 22.01.2012, 09:57
ScorpioT1000
Работаем
offline
Опыт: отключен
Должно, они являются локальными. Ты спрашивал:
А вообще, есть ещё случаи которые могут вызвать десинк?
Я ответил.
Старый 22.01.2012, 10:49
Ответ

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы можете скачивать файлы

BB-коды Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход



Часовой пояс GMT +3, время: 04:46.