17

» WarCraft 3 / Баф на уменьшение физ. размера.

если вы имеете в виду уменьшение масштаба, то делаем так создаём таймер периодический каждые 3сек,потом под таймером каждые 3 сек ищем всех юнитов на карте и пребираем их ( сразу скажу что до этого вы должны были сделать абилу и навесить на неё баф(ну типо чтоб под игроком отображался)),если у юнита есть эта абила даём ему масштаб,даём ему всякие дебафные абилы ну делаем с ним что хотим
17

» WarCraft 3 / Аура возмездия

ну там типо воображаемые шипы,ну как от них можно уколоться если ты в 100 метрах от него
17

» WarCraft 3 / Включение/выключение способности с заклинанием

конечно можно если вы сделаете пасивки триггерными,но придётся сделать на панеле в разделе заклинания\эфекты бафф и добавить её в способность выкл(на основе канала)
17

» WarCraft 3 / Включение/выключение способности с заклинанием

EnergyFrost: Прав 2 абилки вкл\выкл просто при вкл даёшь какую те нужно пасифку(с нужным те бафом а можно несколько пасивок с бафами) а при выкл удаляешь её и всё
17

» WarCraft 3 / Нужна модель? - Вам сюда!

ClotPh:
ledoed, ух, спасибо. А как сделал, если не секрет?
нажал "F" и кликал по треугольникам и удалял
17

» WarCraft 3 / Обработка предметов

а вариант с 2мя массивами в одном ид предметов во 2м ид спела тоесть если massitemid[4] у тебя в инвентаре то значит massspellid[4] у тебя есть
активный даёшь дамику а он активирует
17

» WarCraft 3 / Обработка предметов

это заставляет активировать итем юниту,цель сам юнит на юнита на точку
17

» WarCraft 3 / Обработка предметов

Sergey105:
ledoed, будут срабатывать только пассивные эффекты такие как криты станы слеши всякие орбы
но не активные
"UnitUseItem,UnitUseItemTarget,UnitUseItemTarget" а эти функции пробовал
17

» WarCraft 3 / Обработка предметов

как я понял ты хочешь в момент атаки посмотреть какие итемы на юните и запустить их в нужный момент думаю такая функция как "it=UnitItemInSlot(u,i)"
где "u"-твой юнит
"i"- номер слота
"it"-переменная типа item
ну запускать активки не советую тем юнитом на котором эта система лучше сделай дамиков которые это всё пулять будут
а активировать итемы функциями "UnitUseItem,UnitUseItemTarget,UnitUseItemTarget" и сделай если нужно в способностях итемов одинаковый ид приказа
17

» WarCraft 3 / Нужна модель? - Вам сюда!

Nosferoh:
Он немного меньше
и вообще там на дефолтном крестьянине привязка просто ужас
17

» WarCraft 3 / Нужна модель? - Вам сюда!

насчёт заказа невкоем случае не растягивайте не изменяйте меш модели, лутше кости уменьшить чем меш
17

» WarCraft 3 / Нужна модель? - Вам сюда!

натяните эту модель на кости обычного крестьянина и ещё сделайте нормальную камеру для портрета чтобы на лицо смотрела
Загруженные файлы
17

» WarCraft 3 / Конфликт нескольких таймеров для юнита

Extremator:
два варианта
  1. Глобалки
  2. Структуры, которые строятся на глобалках
Ммм... что же выбрать
вы видели во что они компилируются, если писать это используя обычный jass будет очень много кода,не читаемости и тд,по мне так лутше ездить на этом велосипеде чем строить свой
17

» WarCraft 3 / Конфликт нескольких таймеров для юнита

тут я вижу 2 варианта
1.глобалки:если добавляеться абилка а таймер работает то обновляем таймер
2.структуры:можно 1 таймером отслеживать всё всё и на всех юнитах
17

» Unity / ui префаб

alexprey:
Может координаты не правильно задаешь при создании?
ага оказалась так что маска у меня стояла вот за её пределами и невидно было
17

» WarCraft 3 / Как сделать ускорение за счёт длительности передвижения?

если правильно я понял но это я утчел
if((GetOrderPointX()+GetOrderPointY())!=0){
Name[i].x=GetOrderPointX()
Name[i].y=GetOrderPointY()
}else{
Name[i].x=GetWidgetX(GetOrderTarget())
Name[i].y=GetWidgetY(GetOrderTarget())

}
так что к юнитам подбегать можно
17

» WarCraft 3 / Как сделать ускорение за счёт длительности передвижения?

вот вариант с проверкой приказов, открой через нормальный редактор который поддерживает cjass а нестандартный вариковский
Загруженные файлы
17

» WarCraft 3 / Как сделать ускорение за счёт длительности передвижения?

отлавливаешь приказ движения и гонишь его к точке с нужным ускорением(таймером) и пределом скорости и делаешь условие типо он не выйдет с таймера пока его расстояние до точки последнего приказа на передвижение не будет меньше 100-50(если скорость не больше 90)
17

» WarCraft 3 / Как правильно инициализировать способности и юнитов в массиве?

а не легче будет в начале игры таймером создавать юнитов,дамаиков и тдд + ещё создать юнита которому дать все способности ("таймером естественно")а потом всё это дело дружно удалить
главное учитывать что после 'A00Z' нужно делать условие которое сделает так 'A010'
17

» WarCraft 3 / ГКД

ну можно сделать,создаёшь структуру (на cjass они есть),а также иконку способности +8 затенёных типо перезарядка для анимации ,а также делаешь 9 способностей,1я будет активируемая а 8 пустышек которые нельзя нажать но на них вешаешь иконки перезярядки,так вот в струтуре делаешь массив размера 8
struct mystruct{
static mystruct mymy[]
static int count=0

int idspellCD[8]

void Action(){
сдесь обработка способностей у юнита, какие должны кд делать, отсеевать и тд
}

static void Mymethodadd(unit u,int idspell ){
   сдесь добавляем в mymy[] нашего юнита и спел который активировался
   }


}
после нажатия способности должна пройти обработка всех присутствующих способностей в юните если вы занесли всё в структуру где указывается ид способности и 8 иконок к ней, то просто перебираем нам нужный сегмент таймером ,где эти способности должны добавляться удаляться делая вид перезарядки(соответственно удалив активирующую)
17

» WarCraft 3 / Как сохранить перезарядку при удалении спэлла.

даёшь юниту все эти способности потом скрываешь(функция которая скрывает способность действует на игрока то есть если у игрока 2 таких юнита,!!!непроканает!!!,но работать будет если 2-12 игрока и по 1му персу с этими способностями(советую всю эту тему в структуры сделать)) потом от id оружия просто включаешь эти способности
17

» WarCraft 3 / Фильтр, еще раз

ну тода так
bool main(){
return GetUnitState(GetFilterUnit(),UNIT_STATE_LIFE)>0)
}

void lalaal(){
GroupEnumUnitsInRange(g,x,y,rad,function main)
}
17

» WarCraft 3 / Фильтр, еще раз

GetFilterunit должен выглятеть так GetFilterUnit(),и ещё твоя функция ничего не принимает и не выдаёт, ещё ты ищешь юнитов вокруг юнита(d)=null
и поподробней что ты хочешь найти юнитов вокруг когото или просто проверить жив ли он