Добавлен , опубликован
Не работает в версии 1.29
Наработка для RPG-карт, позволяющая дать герою двенадцать способностей без спелбука, переключения и занимания инвентаря.
Основой прикола является абилка на основе канала с командной строкой «smart».
Наработка 2010 года, была залита недавно, т.к. про неё забыли
Тема наработки на форуме
`
ОЖИДАНИЕ РЕКЛАМЫ...
15
Хорошая наработка, отсталость только придумать где ее применить .
33
Я обнаружил в этой системе один баг: невозможно покупать предметы в лавках. Я попробовал обойти его вот такими триггерами:
триггер ShopCheck
function Trig_ShopCheck_Conditions takes nothing returns boolean
     return (GetUnitAbilityLevel(GetTriggerUnit(), 'Aneu') > 0) or (GetUnitAbilityLevel(GetTriggerUnit(), 'Aall') > 0)
endfunction

function Trig_ShopCheck_Actions takes nothing returns nothing
     call SetPlayerAlliance(Player(0), Player(0), ALLIANCE_SHARED_CONTROL, true)
     call SetPlayerAlliance(Player(0), Player(0), ALLIANCE_SHARED_ADVANCED_CONTROL, true)
     call ClearTextMessages()
endfunction

//===========================================================================
function InitTrig_ShopCheck takes nothing returns nothing
    set gg_trg_ShopCheck = CreateTrigger()
    call TriggerRegisterPlayerUnitEvent(gg_trg_ShopUncheck, Player(0), EVENT_PLAYER_UNIT_DESELECTED)
    call TriggerAddCondition(gg_trg_ShopChek, Condition(function Trig_ShopCheck_Conditions))
    call TriggerAddAction(gg_trg_ShopCheck, function Trig_ShopCheck_Actions)
endfunction
триггер ShopUncheck
function Trig_ShopUncheck_Conditions takes nothing returns boolean
     return (GetUnitAbilityLevel(GetTriggerUnit(), 'Aneu') > 0) or (GetUnitAbilityLevel(GetTriggerUnit(), 'Aall') > 0)
endfunction

function Trig_ShopUncheck_Actions takes nothing returns nothing
    call SetPlayerAlliance(Player(0), Player(0), ALLIANCE_SHARED_CONTROL, false)
    call SetPlayerAlliance(Player(0), Player(0), ALLIANCE_SHARED_ADVANCED_CONTROL, false)
    call ClearTextMessages()
endfunction

//===========================================================================
function InitTrig_ShopUncheck takes nothing returns nothing
    set gg_trg_ShopUnchek = CreateTrigger()
    call TriggerRegisterPlayerUnitEvent(gg_trg_ShopUncheck, Player(0), EVENT_PLAYER_UNIT_DESELECTED)
    call TriggerAddCondition(gg_trg_ShopUncheck, Condition(function Trig_ShopUncheck_Conditions))
    call TriggerAddAction(gg_trg_ShopUncheck, function Trig_ShopUncheck_Actions)
endfunction
3 комментария удалено
25
Ну наконец) Теперь смогу норм скиллов сделать.
2 комментария удалено
21
Системка для одного юнита
Ну двигаться может только один
23
RiseD_Konst, возьми и добавь способность другим юнитам, тоже буду ходить
33
Obelick, думаю, нужно будет ещё что-то придумать с группами юнитов, если делать не чисто для RPG.
21
Еще есть баг при атаке: юнит не всегда атакует указанную цель.
Obelick, будешь использовать?
12
Какой смысл вообще от подобной наработки? Тот, кому надо сделает себе сам так, как хочет, а разбираться в чужом коде - потёмки...
33
xANDYx, вот что-то никто не делает. Даже те, кому не помешало бы. ( Obelick вон уже внедрил.)
6
Так это же неудобно же! же же же, же же же
А как идти через атаку, говорить стопт и не атаковайт! Это ж вапсче, идти через атаку куда важней по моему чем ульт Левитана xD
21
SiT3D, кто будет юзать систему сам решит что ему нужно, а что нет
33
SiT3D, в слешерах как-то справляются без этого. Можно автоатаку отключить, например, это решит вторую проблему.
23
SiT3D, не во всех картах атака как таковая вобще есть. Помнится мне, кое-кто делал карту даже без движения.
24
Общие войска - все( call SetPlayerAlliance(Player(0), Player(0), ALLIANCE_SHARED_ADVANCED_CONTROL, false)) по моему тут лишние. И без них работает.
И ещё - при попытке сделать в карте изменения в обычном редакторе - выдаёт ошибку и тредует какую-то функцию init.
И ещё - выбирать несолько юнитов невозможно, при триггерном выборе приказ всем отправляется, всего то надо делать триггерный выбор. Ну это не очень страшно, думаю.
И ещё - выше уже написали правда, лечить надо дополнительными триггерами, т.к. не даёт покупать предметы.
И ещё - по райтклику деревья не выбираются. (лечится при необходимости)
И ещё - клик мышью по герою не центрирует его на экране, только F1.
SiT3D, систему можно дополнить своей кнопкой атаки при желании.
24
Кстать, если вдруг кому понадобится GUI-вариант то вот(без утечек, баг с покупкой выпилен).
Загруженные файлы
15
харошая вещь, подшийте плз и версию...~Melissa,
также вопрос по наработке к знающим, можна ли сделать каст приказов что спрядались на цыфрах(ну или мансим (ф1-ф6)), по тому как без некоторых приказов которые нажно отдавать в ходе игры геймплей не полноценый.(я о таких приказах как, стоп, или удерживать позиции, или патруль(да она редко юзается, но я юзаю в карте., поэтому и спрашиваю)
7
можно сделать свою кнопку любого приказа если надо, правда чет у меня приказ удерживать позицию никак не хотел отдаваться юниту, мб что накосячил и сам не заметил...
24
destr, он вроде бы с задержкой даётся, таймер запуска на 0 сек или вейт.
7
ну так я внедрил в саму систему его, приказ атаки работает как надо, а вот холдпозишен ни в какую.
Сделал пустышку, после её использования таймер на 0 запускает проверку на полученный ордер и отдает приказ holdposition, но юнит теряет его почему-то, хотя если убрать передачу контроля самому себе все нормально работает.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.