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

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

Ответ
 
Vadik29
Choice Battle 1.6а
offline
Опыт: 15,845
Активность:
Выбираемость юнита
Можно ли сделать такую модель или настроить юнита так, что если он в твоем поле зрения, то куда бы ты не кликнул он выбрался?
Старый 17.08.2014, 13:43
Melissa
Я всегда хочу как лучше!
offline
Опыт: 31,696
Активность:
Огромную модель с прозрачной текстурой всей модели. Хотя можно и масштабирование неогромной прозрачной модели вроде.
Старый 17.08.2014, 13:47
quq_CCCP
Я белый и пушистый!
offline
Опыт: 93,279
Активность:
Vadik29, ну круг выбора сделать во весь экран....
Старый 17.08.2014, 13:47
Vadik29
Choice Battle 1.6а
offline
Опыт: 15,845
Активность:
Задумка такая, двигать этого юнита (в инвизе) у каждого игрока в центре камеры и если он на него кликнет, то кик.
Старый 17.08.2014, 13:54
quq_CCCP
Я белый и пушистый!
offline
Опыт: 93,279
Активность:
Vadik29:
Задумка такая, двигать этого юнита (в инвизе) у каждого игрока в центре камеры и если он на него кликнет, то кик.
В некоторых мх этого сделать нельзя, клик по инвизерам и юнитам в тумане войны не разрешён...
Старый 17.08.2014, 15:01
Vadik29
Choice Battle 1.6а
offline
Опыт: 15,845
Активность:
quq_CCCP, ну модель будет не прозрачная, черная и заграждать обзор хотябы.
Vadik29 добавил:
В общем вот код, координаты камеры и юнита совпадают, но сам юнит застывает и не двигается, аего координаты меняются. (3 раза дамми пере создавал)
function CameraMovePoint2 takes nothing returns nothing
    timer t = GetExpiredTimer()
    int id = GetHandleId(t)
    unit d = LoadUnitHandle(h, id, 0)
    player p = Player(LoadInteger(h, id, 1))
    real x = 0
    real y = 0
    if GetLocalPlayer() == p then
        x = GetCameraTargetPositionX()
        y = GetCameraTargetPositionY()
    endif
    BJDebugMsg(R2S(x))
    BJDebugMsg(R2S(y))
    SetUnitX(d, x)
    SetUnitY(d, y)
    SetUnitPosition(d,x,y)
    BJDebugMsg(GetUnitName(d))
    BJDebugMsg(R2S(GetUnitX(d))+"Dummy")
    BJDebugMsg(R2S(GetUnitY(d))+"Dummy")
    d = null
    t = null
    p = null
endfunction

function CameraMovePoint takes unit d, int i returns nothing
    timer t = CreateTimer()
    int id = GetHandleId(t)
    SaveUnitHandle(h, id, 0, d)
    SaveInteger(h, id, 1, i)
    TimerStart(t, 0.07, true, function CameraMovePoint2)
    t = null
endfunction
Старый 17.08.2014, 16:29
nvc123
new status
offline
Опыт: 59,284
Активность:
боже
хэш
атач по хэндлу таймера
кроме того этот код вызовет десинк
Старый 17.08.2014, 16:36
Vadik29
Choice Battle 1.6а
offline
Опыт: 15,845
Активность:
nvc123, а как же тогда определять положение камеры игрока?
Старый 17.08.2014, 16:38
16GB
GhostOne User
offline
Опыт: 60,317
Активность:
nvc123:
боже
хэш
атач по хэндлу таймера
и чё? о великий диванный эксперт, абсолютно нормальная конструкция. Работает она нормально и не вызывает лагов. Моя карта тому подтверждение
Vadik29:
nvc123, а как же тогда определять положение камеры игрока?
надо синхронизировать данные полученные локально
Старый 17.08.2014, 16:42
nvc123
new status
offline
Опыт: 59,284
Активность:
надо синхронизировать значение x y между игроками
об этом написано в статье
так же надо использовать 1 таймер и в нём циклом двигать юнитов для игроков

так же можно просто сделать кучу больших дамиков со способностями постоянная невидимость и москиты и расставить их на карте повсюду
мхашники будут их видеть а игроки нет(даже с гемом)
nvc123 добавил:
16GB, всё зависит от количества таймеров
есть 1 карта в которой так система снарядов сделана
как только снарядов становиться за 50 у всех начинает лагать
Старый 17.08.2014, 16:45
Ответ

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

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

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

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



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