Добрый всем день.
Переписываю DGUI на wurst. Версия 1.30.3 PTR
Для работы в мультиплеере с меньшими затратами ресурсов решил создавать интерфейс локально, а потом синхронизировать непосредственно действия игроков. Не думал, что с эти возникнет проблема, но ловлю десинк при различии координат дамми юнитов (элементы UI). В связи с чем возникает вопрос: что можно использовать взамен дамми юнитов или как их правильно настроить? Крайне хотелось бы оставить возможность изменять размер непропорционально, что, например невозможно для спецэффекта. Сейчас "непропорциональность" реализуется с помощью анимации модели.
Ну и похвастаюсь текущим состоянием в сингле))

Принятый ответ

как-то делается, но тонкостей дохера - нельзя иметь регионы на карте, чтобы это работало, нельзя иметь события на unitInRange, и тд. и тп. Проще говоря - обломись, дешевле сделать статичный магаз где-то в неиспользуемой зоне
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
0
13
5 лет назад
Отредактирован Nelloy
0
PyCCKuu_4eJl, завезти то завезли, но не до конца
native BlzSetSpecialEffectScale takes effect whichEffect, real scale returns nothing
не дает изменить соотношение сторон.
BlzPlaySpecialEffect - вообще нет в common.j
0
27
5 лет назад
0
круто. только спецэффекты как помогут определять выделен или нет?
мне кажется оставить как есть (не надо юнитам одним и тем же коррдинаты разные задавать разным локал машинам), только нужно визуально скрыть. А проверять что нажата кнопка (выделена) только нужные опред игроком.
не получится одному и тому же юниту на разных машинах разные координаты задать. это приводит у десинхрону
0
13
5 лет назад
Отредактирован Nelloy
0
Steal nerves, мне не нужно отслеживать выделение, есть нативные функции для получения мыши в глобальных координатах в 1.29+. Проецирую их на экран. Например, на скриншоте все слоты инвентаря - спецэффекты.
0
26
5 лет назад
0
Если обращаться к ссылке на юнита, а для разных игроков сделать разных юнитов под ссылкой, то должно быть нормально. В статье про LocalPlayer описано
0
13
5 лет назад
Отредактирован Nelloy
0
8gabriel8, не нашел в статье ничего про перемещение юнитов.
public class UI_Dummy extends UI_Object
protected unit instance = CreateUnit(dummy_owner, ui_dummy2d_id, 0, 0, 0)
override function setPos (vec3 world_pos)
this.instance.setPosFly(vec3(world_pos.x, world_pos.y, world_pos.z - world_pos.toVec2().getTerrainZ()))
Если закомментить последнюю строку, то десинка нет
1
16
5 лет назад
1
как-то делается, но тонкостей дохера - нельзя иметь регионы на карте, чтобы это работало, нельзя иметь события на unitInRange, и тд. и тп. Проще говоря - обломись, дешевле сделать статичный магаз где-то в неиспользуемой зоне
Принятый ответ
0
13
5 лет назад
Отредактирован Nelloy
0
DracoL1ch, хм... Попробую лепить все неквадратные элементы из нескольких эффектов, раз без очередных костылей никак.
DracoL1ch, еще вопрос немного не в тему. Спецэффекты намного легче деструбов?
1
16
5 лет назад
1
в разы, естественно
0
26
5 лет назад
0
Nelloy:
8gabriel8, не нашел в статье ничего про перемещение юнитов.
Да как же, вот xgm.guru/p/wc3/getlocalplayer внизу же про создание разных юнитов, у одного будет модель, а у другого нет. То есть один игрок увидит перемещение, а другой нет.
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.