Просто отлавливаем общий приказ, в котором айди юнита, который мы нанимаем меняем в очереди, и воля. Ну и проверяем здание отдавшее сей приказ, то ли здание, которому нужно менять. Вот полный пример:
globals
constant integer barrack = 'hbar'
constant integer footman = 'hfoo'
constant integer footman_a = 'h000'
constant integer footman_b = 'h001'
constant integer footman_c = 'h002'
constant integer footman_d = 'h003'
constant integer footman_e = 'h004'
integer array RandomTrain
endglobals
function AssetTrains takes nothing returns nothing
local player p = Player(0)
call DestroyTimer(GetExpiredTimer())
set RandomTrain[0] = footman
set RandomTrain[1] = footman_a
set RandomTrain[2] = footman_b
set RandomTrain[3] = footman_c
set RandomTrain[4] = footman_d
set RandomTrain[5] = footman_e
call SetPlayerTechMaxAllowed( p, footman_a, 0 )
call SetPlayerTechMaxAllowed( p, footman_b, 0 )
call SetPlayerTechMaxAllowed( p, footman_c, 0 )
call SetPlayerTechMaxAllowed( p, footman_d, 0 )
call SetPlayerTechMaxAllowed( p, footman_e, 0 )
set p = null
endfunction
function Trig_New_Actions takes nothing returns nothing
local unit u = GetTriggerUnit()
local integer id = GetIssuedOrderId()
local player p = GetOwningPlayer(u)
local integer newId = 0
if GetUnitTypeId(u) == barrack then
set newId = RandomTrain[GetRandomInt(0,5)]
if newId != footman then
call SetPlayerTechMaxAllowed( p, footman, 0 )
call SetPlayerTechMaxAllowed( p, newId, -1 )
call IssueImmediateOrderById( u, 851976 )
call IssueImmediateOrderById( u, newId )
call SetPlayerTechMaxAllowed( p, footman, -1 )
call SetPlayerTechMaxAllowed( p, newId, 0 )
endif
endif
set u = null
set id = 0
set p = null
set newId = 0
endfunction
function InitTrig_New takes nothing returns nothing
set gg_trg_New = CreateTrigger( )
call TimerStart( CreateTimer(), 1., false, function AssetTrains )
// call AssetTrains()
call TriggerAddAction( gg_trg_New, function Trig_New_Actions )
call TriggerRegisterPlayerUnitEvent( gg_trg_New, Player(0), EVENT_PLAYER_UNIT_ISSUED_ORDER, null )
endfunction
Надеюсь, что ты наалисишься. Если будут зулусы в коде, дай знать.
Ну в общем, я сделал всё что мог, чтобы дать вам чёткий ответ.
crusader556, это можно реализовать без даммика даже, только потребуется отменять или продолжать найм этого же.
Мы будет проверять с помощью GetTrainedUnitType(), а в самой казарме скроем 5 тех юнитов на найм, при помощи блокировки исследований, триггерно конечно же.
Для этого у нас есть реакция на событие:
Далее, если нам выпал шанс, то мы временно блокируем Пехотинца, отменяем, разблокируем рандного другого и нанимаем. А если ничего не выпало на рандом, то оставляем как есть.
Однако, я с подобным вообще не возился, успех не гарантирован. Проблема возникает уже с очередью)
crusader556, т.е. тебе нужно заменять уже нанимающегося юнита я так понял?
Нанял, а он уже другой. Кликнул по пехотинцу, а он уже бугай или страж ночных эльфов, но нанимается.
Hanabishi, зря метели перевили варик на каск. Он потерял некую свою изюминку или оригинальность. И мы привыкли ко старому и доброму mpq. Вот интересно, а обращается ли он к сторонним каск архивам?
Лучше бы оставили MPQ, и сделали возможность подключать собственные или к примеру отдельно для карты mapname.w3x-MapMod.mpq. Ну или просто запилили бы параметр, который мог линковать любой MPQ к карте. Просто проще заранее заложить файлы для карты в mpq. И постепенно обновлять карту с лёгким весом. Опыт с миксами показал хорошие итоги.
Пытался подключить ruRU-War3Mod.mpq, но не робит. Что я делаю не так? Создавал новый архив в MPQMaster HS: 8192 и BS: 4096 и всё как положено, в папке с игрой.
Вопрос (3\3): Какой самый удачный венец вашего творения, который посчитали для себя хорошим али великолепным, т.е. я про любое творчество, созданное вами, и которое вам запалу в ваш хладный дух, воспламенив его? +Бонус вопрос: Какой из вас художник и пробовали ли вы нарисовать рисунки? +Экстра вопрос: Вы автор какого бога, или ваш блог - вами придуманный бог, и какой по тематике?
Просто сделай найм даммика, при этом создай несколько версий этого юнита с разными моделями.
Забей типы в массив, и триггерно создавай случайно при помощи RandomInt в позиции дамика, сам дамик после сего - удаляй.
Или жди новый патч, в котором добавят функцию по смене моделей для объекта.
Fakov, а вы не думали, что автор хочет также, как и на рисунках. А продающиеся предметы имеют циферки, а вдруг автору вопроса они не нужны в правом нижнем углу кнопки те самые циферки.
Флаг автора не очень, у товарища Слипа в комментариях и то вариант получше будет. Раз автор старался, поставлю пал вверх из жалости.
Лучше бы замутил целую коллекцию красивых флагов.
А ты учитывал, что магазином будут пользоваться несколько игроков одновременно?
И вообще не реакции на событие, которая позволяет, какой игрок пользовался способностью юнита чужого игрока. Если была бы такая функция, то я не возразил.
Оперирует лишь 1 дамик, который принадлежит игроку, а магазы там в стопке стоят, что их не выберешь без помощью тригга.
О боже, это куда проще.
Для этого у нас есть даммик, которые манипулирует преключением магазинов. В нём куча способностей пустышек.
Как выбираешь основной магазин, то триггером выбираешь даммик для игрока магазин для игрока (этот дамммик должен быть подконтрольный этому игроку), который с абилками пустышками. Правда уменьшенный в масштабе, и созданный триггерно за за магазином, как бы спрятанный.
Далее, просто делаешь реакции на события, какую абилку и выбираешь уже магазины-даммики с той же моделью, только уменьшенный спрятанное за большим магазином.
И покупаешь через них.
16GB, привет Михаил. Я думал, что тебе вообще не интересен мой блог.
Из-за того, что шкики используют подобные выражения словечек, сразу шкикоюмор? Ну очень тонко, очень.
Есть способ, просто сохраните изображение 64x64 в прозрачном альфа канале. Т.е. прозрачное изображение конвертируйте в blp, затем вставьте через ро в иконках героя статистике всем героям это blp прозрачное изображение. И иконок героя нет.
Пресвятой белый конь! Где же ты раньше был, ведь можно было делать такие чудеса!
Хотя, есть и минус, пришлось бы менять каждый такой архив уже для другой карты.
Ред. Волчачка
» WarCraft 3 / Модели Юнита
Вот полный пример:
Ну в общем, я сделал всё что мог, чтобы дать вам чёткий ответ.
Ред. Волчачка
» WarCraft 3 / Модели Юнита
Мы будет проверять с помощью GetTrainedUnitType(), а в самой казарме скроем 5 тех юнитов на найм, при помощи блокировки исследований, триггерно конечно же.
Для этого у нас есть реакция на событие:
Однако, я с подобным вообще не возился, успех не гарантирован. Проблема возникает уже с очередью)
» WarCraft 3 / Модели Юнита
Нанял, а он уже другой. Кликнул по пехотинцу, а он уже бугай или страж ночных эльфов, но нанимается.
» WarCraft 3 / Где можно скачать иконки предметов из 1 доты?
» WarCraft 3 / Простой способ подключения собственных MPQ-архивов
Лучше бы оставили MPQ, и сделали возможность подключать собственные или к примеру отдельно для карты mapname.w3x-MapMod.mpq. Ну или просто запилили бы параметр, который мог линковать любой MPQ к карте. Просто проще заранее заложить файлы для карты в mpq. И постепенно обновлять карту с лёгким весом. Опыт с миксами показал хорошие итоги.
» WarCraft 3 / Простой способ подключения собственных MPQ-архивов
» WarCraft 3 / Простой способ подключения собственных MPQ-архивов
» Fa_losophy / Интерактив (кековая)
+Бонус вопрос: Какой из вас художник и пробовали ли вы нарисовать рисунки?
+Экстра вопрос: Вы автор какого бога, или ваш блог - вами придуманный бог, и какой по тематике?
» Fa_losophy / Интерактив (кековая)
» Книга Опыта (E) / Интерактив
И становишься ли милым, когда поешь?
Ред. Волчачка
» Fa_losophy / Интерактив (кековая)
А всё ведь началось с моего "Задай вопрос"Ладно, ўот тебе мой первый вопрос(1\3):: Что привело к такому нику, ну или как он придумался?
Ред. Волчачка
» WarCraft 3 / Модели Юнита
Забей типы в массив, и триггерно создавай случайно при помощи RandomInt в позиции дамика, сам дамик после сего - удаляй.
Или жди новый патч, в котором добавят функцию по смене моделей для объекта.
Ред. Волчачка
» Блог Кета Голосова / Ярмарка тщеславия
» Блог Кета Голосова / Ярмарка тщеславия
» WarCraft 3 / Как сделать Магазин с 25 слотами, как на карте warlock ?
Ред. Волчачка
» WarCraft 3 / Флаг клана Пылающего Клинка
из жалости.Лучше бы замутил целую коллекцию красивых флагов.
Ред. Волчачка
» Огонёк Феникса / Нищие родители
» WarCraft 3 / Как сделать Магазин с 25 слотами, как на карте warlock ?
И вообще не реакции на событие, которая позволяет, какой игрок пользовался способностью юнита чужого игрока. Если была бы такая функция, то я не возразил.
Оперирует лишь 1 дамик, который принадлежит игроку, а магазы там в стопке стоят, что их не выберешь без помощью тригга.
» WarCraft 3 / Как сделать Магазин с 25 слотами, как на карте warlock ?
Для этого у нас есть даммик, которые манипулирует преключением магазинов. В нём куча способностей пустышек.
Как выбираешь основной магазин, то триггером выбираешь даммик для игрока магазин для игрока (этот дамммик должен быть подконтрольный этому игроку), который с абилками пустышками. Правда уменьшенный в масштабе, и созданный триггерно за за магазином, как бы спрятанный.
Далее, просто делаешь реакции на события, какую абилку и выбираешь уже магазины-даммики с той же моделью, только уменьшенный спрятанное за большим магазином.
И покупаешь через них.
Ред. Волчачка
» Кузня Волчачки / Pavel Quest или просто "Обзоршик Павел"
Из-за того, что шкики используют подобные выражения словечек, сразу шкикоюмор? Ну очень тонко, очень.
» WarCraft 3 / Экран статистики
» WarCraft 3 / Простой способ подключения собственных MPQ-архивов
Хотя, есть и минус, пришлось бы менять каждый такой архив уже для другой карты.
» Кузня Волчачки / Мелисса: В поисках нового дома
» Naadir / Первый интерактив
Если да, то что понравилась во сём повествовании?
» Битва Зимой / Лавка: Барахолка