как присвоить локальные значения игрока в глобальные переменные?
(не путать с local внутри функций)
т.е. например у игрока стоит -zoom 2500
но это у него только локально, и другие игроки не знают о его зуме
if GetLocalPlayer()==Player(i-1) then
set zz[i] = GetCameraField(CAMERA_FIELD_TARGET_DISTANCE)
endif
как глобальной переменной zz[i] присвоить значение зума какого-то игрока?
в коде выше это конечно же будет десинхрон сразу
в принципе можно было бы через отправку сообщения в чат от игрока
а потом парсануть это сообщение из чата в переменную
только нативной функции отправки сообщения в общий чат не существует
даже новомодная BlzDisplayChatMessage и то - только в личку
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
26
это самый главный вопрос.
самый главный вопрос находится в шапке темы
Hate:
если вы не можете ответить на него, то оно вам не нужно. тогда следует вопрос, зачем вы пытаетесь решать несуществующие проблемы?
приём пациентов у домашних психотерапевтов - в соседней комнате, так что ты ошибся дверью со своими левыми вопросами не по теме и такими же левыми выводами - сам придумал, сам сделал выводы, сам парировал
за сим делаю вывод: такое средствами JASS сделать невозможно, раз за сутки никто не смог ответить на базовый вопрос
можно, но вам найух не нужно. когда будут конкретные вопросы а не влажные абстрактные фантазии тогда поговорим.
в контексте зума, другим игрокам вообще нет смысла знать зум других
14
когда будут конкретные вопросы а не влажные абстрактные фантазии тогда поговорим.
тебя бы следовало игнорировать, т.к. решений от тебя не будет
но смотри, публичная проверка:
как, зная координаты центра камеры игрока, или по-другому - координаты его центра экрана, то есть имея значения X Y - GetCameraTargetPositionX() GetCameraTargetPositionY() - заспавнить в этом центре по этим координатам, через строку чата, скажем, юнита, и не поймать десинхрона, чтобы этот юнит появился у всех игроков. т.е. перевести локальные координаты камеры игрока в глобального юнита.
ещё раз - игрок пишет тригер-текст в чат -unitcam и в его текущих координатах экрана GetCameraTargetPositionX() GetCameraTargetPositionY() (в момент нажатия клавиши Enter) появляется юнит без десинхрона и все другие игроки его видят
либо ты выдаёшь решение, ответом на этот пост
либо пишешь "ой, тебя неправильно поняли"
три, два, один:
30
host_pi, кто мешает синхронизировать координаты любым методом по вкусу?
14
кто мешает синхронизировать координаты
что под этим понятием имеется ввиду?
nazarpunk:
любым методом по вкусу
какие несколько методов имеются ввиду?
30
что под этим понятием имеется ввиду?
Подрузамевается синхронизация значений между игроками.
какие несколько методов имеются ввиду?
Какая версия игры имеется ввиду?
14
Подрузамевается синхронизация значений между игроками.
т.е. я спрашиваю как по координатам камеры одного из игроков создать юнита, а мне в ответ предлагают поставить камеры всех игроков в одну (неизвестно какую) точку и там заспавнить юнита? а камеры потом пусть игроки возвращают самостоятельно в исходные точки? я сейчас правильно перевёл твою мысль?
nazarpunk:
Какая версия игры имеется ввиду?
1.26
Загруженные файлы
18
host_pi, Ну ты и душнила ))
Просто возьми друга, и протести создание юнита в центре камеры, с вероятностю в 98% десинхрона не будет(2% на то, что не понял тебя). Но не проверяй значение переменных, а именно функцию в целом.
30
host_pi, создать параллельные массивы точек и синхронизировать по индексу игрока религия запрещает?
14
создать массивы точек
давай ещё раз
ты мне предлагаешь задать самому в коде переменные set X=100 set Y=200 и создать по этим координатам там же в коде юнита? так?
или как конкретно ты предлагаешь создать массив точек? пиши код

Просто возьми друга
на xgm ещё не изобрели multiwindow ?
Borodach:
))
протести создание юнита в центре камеры, с вероятностю в 98% десинхрона не будет
я это протестил ещё ДО создания этой темы
и если бы десинхрона от координат камеры не было, этой темы бы тоже не было
да даже без тестов ясно как белый день что будет десинхрон
и да, на тестах десинхрон был физический а не только в значениях переменных
и да, на разных клиентах был разный результат исполнения кода
и да, на одном клиенте был объект, а на втором клиенте не было объекта
но это не десинхрон, это просто надо "правильно" кодить. но как конкретно - за 20 коментов никто не знает , да?
)))))))))))))) пиу пиу тирлюм тирлюм )))))))) весила смишна ))))))
Borodach:
Но не проверяй значение переменных, а именно функцию в целом.
а если у вас десинхрон это не разные значения у одних и тех же переменных, а табличка "ОЖИДАНИЕ ИГРОКА" - то удачи. щас бы сидеть и ловить когда игра обнаружит несоответствие переменных и выдаст тебе табличку не сразу в моменте, а минуты через две. зато две минуты не было десинхрона ага
Borodach:
с вероятностю в 98% десинхрона не будет
это после таких советов появляются карты, которые крашат даже на стадии инициализации? а "умные" дяди советуют перезайти в лобби после скачки карты? а из новшеств в карте примерно НИЧЕГО особенного, но ты перезайди, а то вася-кодер криво накодил и обложил всё мемхаками. да?
23
А если сделать глобал массив чисел, куда отправлять все 2500 итп по индексу игрока, вводящего сообщение, это будет десинк? Мне кажется, что нет.
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.