Ñêðèïòû äëÿ íà÷èíàþùèõ - Ñòðàíèöà 18 - Ôîðóì HeroesWorld-à

Áûñòðàÿ íàâèãàöèÿ ïî îñíîâíûì ðàçäåëàì ôîðóìà:
Òóðíèðû
ÊÀÐÒÛ
Heroes 6
Heroes 5
Heroes 4
Heroes 3
Heroes 2
Heroes 1
Might&Magic

Ãåðîè Ìå÷à è Ìàãèè 5 - Êàðòîñòðîèòåëüñòâî (Ðåäàêòîð êàðò)  ýòîì ðàçäåëå ìîæíî îáñóæäàòü âñå ÷òî êàñàåòñÿ ðåäàêòîðà êàðò äëÿ Heroes of Might and Magic V. Òàê æå çäåñü îáñóæäàåì êàðòîñòðîèòåëüñòâî.

Îòâåò
Ñòðàíèöà 18 èç 28
 
Îïöèè òåìû
#256
Ñòàðûé 05.03.2022, 19:12
  #256
^
Kragh
 
Àâàòàð äëÿ Kragh
📖
Ðåãèñòðàöèÿ: 26.01.2022
Ñîîáùåíèÿ: 8
Ðåãèñòðàöèÿ: 26.01.2022
Ñîîáùåíèÿ: 8
Ïî óìîë÷àíèþ
Re: Ñêðèïòû äëÿ íà÷èíàþùèõ

Всем привет. Может кто поможет со скриптом, все рудники дают ресы только если в их (гарнизоне - внутри рудника, шахты) находятся опр. кол. например юнитов первого уровня. 
Kragh âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#257
Ñòàðûé 28.04.2022, 01:08
  #257
^
sspi
📖
Ðåãèñòðàöèÿ: 28.04.2022
Ñîîáùåíèÿ: 2
Ðåãèñòðàöèÿ: 28.04.2022
Ñîîáùåíèÿ: 2
Ïî óìîë÷àíèþ
Re: Ñêðèïòû äëÿ íà÷èíàþùèõ

Сердечные мои! А не найдется ли у кого пары минут на помощь?
Пытаюсь сделать скрипт на удвоение армии. За основу стырил скрипт из "Random Wars".
Вот это работает, но для одного героя
function incom()
local day = GetDate(3)
if day == 2 then
        local hero = GetPlayerHeroes(5)[0]
        local types = {}
        types[0], types[1], types[2], types[3], types[4], types[5],types[6] = GetHeroCreaturesTypes(hero)
        for i = 0, 6 do
        if HasHeroCreature(hero, types[i])
        then
                --local stack = GetCreatureById(types[i])
                local amount = GetHeroCreatures(hero, types[i])
                AddHeroCreatures(hero, types[i], amount, i)
            end
        end
    end
end

Trigger(NEW_DAY_TRIGGER, "incom")


Жажду же я воплотить схему с несколькими героями, но не знаю как правильно это прописать.
Не работает
function incom()
local day = GetDate(3)
if day == 2 then
    local hero = {}
    hero[0], hero[1], hero[2], hero[3] = GetPlayerHeroes(5)
    for k = 0, 3 do
    if IsHeroAlive(hero)
    then
        local types = {}
        types[0], types[1], types[2], types[3], types[4], types[5],types[6] = GetHeroCreaturesTypes(hero)
        for i = 0, 6 do
        if HasHeroCreature(hero, types[i])
        then
                local stack = GetCreatureById(types[i])
                local amount = GetHeroCreatures(hero, types[i])
                AddHeroCreatures(hero, types[i], amount, i)
                end
                end
            end
        end
    end
end

Trigger(NEW_DAY_TRIGGER, "incom")

На функции IsHeroAlive(hero) появляется неверный аргумент №1, т.е. вместо hero появляется нечто несъедобное.
sspi âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#258
Ñòàðûé 28.04.2022, 08:03
  #258
^
}{0TT@6bI4
 
Àâàòàð äëÿ }{0TT@6bI4
📖
Ðåãèñòðàöèÿ: 05.09.2019
Àäðåñ: Ñåðåáðÿíûå Ãîðîäà, Àëü-Ñàôèð
Ñîîáùåíèÿ: 1980
Âûñòàâêà íàãðàä
Ðåãèñòðàöèÿ: 05.09.2019
Àäðåñ: Ñåðåáðÿíûå Ãîðîäà, Àëü-Ñàôèð
Ñîîáùåíèÿ: 1980
Âûñòàâêà íàãðàä
Ïî óìîë÷àíèþ
Re: Ñêðèïòû äëÿ íà÷èíàþùèõ

Дело в том, что функция GetPlayerHeroes сама возвращает массив, поэтому значение полей массива heroes со 2 по 5 — nil, а первое — table. То же самое относится и к самой таблице "hero", поэтому в вашем случае и IsHeroAlive(hero) и IsHeroAlive(hero[k]) будут ломаться — с указанной вами ошибкой.
Поэтому нужно в локальный массив heroes скинуть таблицу из функции GetPlayerHeroes, потом пройтись по массиву с указанными действиями и всё.
function incom()
local day = GetDate(3)
if day == 2 then
    local heroes = GetPlayerHeroes(5)
    for k, hero in heroes do
    if IsHeroAlive(hero)
    then
        local types = {}
        types[0], types[1], types[2], types[3], types[4], types[5],types[6] = GetHeroCreaturesTypes(hero)
        for i = 0, 6 do
        if HasHeroCreature(hero, types[i])
        then
                local stack = GetCreatureById(types[i]) --Если вы копировали из RW, то, надеюсь, скопировали и функцию GetCreatureByld.
                local amount = GetHeroCreatures(hero, types[i])
                AddHeroCreatures(hero, types[i], amount, i)
                end
                end
            end
        end
    end
end

Trigger(NEW_DAY_TRIGGER, "incom")
__________________
Ñ óâàæåíèåì, }{0TT@6bI4
_________________
Ãðóïïà êàðòîñòðîèòåëåé
Òàì îòâåòû íà âîïðîñû, ðóêîâîäñòâà, ãàéäû è ïðî÷åå
Discord-ñåðâåð "Ãåðîè 5: S.T.A.L.K.E.R"
Ñåðâåð ïî ìîäèôèêàöèè "Ãåðîè 5: S.T.A.L.K.E.R"
_________________
Ñ óâàæåíèåì, }{0TT@6bI4
_________________
Ãðóïïà êàðòîñòðîèòåëåé
Òàì îòâåòû íà âîïðîñû, ðóêîâîäñòâà, ãàéäû è ïðî÷åå
Discord-ñåðâåð "Ãåðîè 5: S.T.A.L.K.E.R"
Ñåðâåð ïî ìîäèôèêàöèè "Ãåðîè 5: S.T.A.L.K.E.R"
_________________
}{0TT@6bI4 âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#259
Ñòàðûé 28.04.2022, 18:38
  #259
^
sspi
📖
Ðåãèñòðàöèÿ: 28.04.2022
Ñîîáùåíèÿ: 2
Ðåãèñòðàöèÿ: 28.04.2022
Ñîîáùåíèÿ: 2
Ïî óìîë÷àíèþ
Re: Ñêðèïòû äëÿ íà÷èíàþùèõ

  Низкий поклон Вам, Мудрейший Кудесник! Без готового скрипта я бы ничего не понял, ибо неуч.
И да, функции есть, но local stack я аннулировал (закомментил?) за ненадобностью.
sspi âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#260
Ñòàðûé 28.04.2022, 18:58
  #260
^
Jewily
 
Àâàòàð äëÿ Jewily
📖
Ðåãèñòðàöèÿ: 25.09.2016
Ñîîáùåíèÿ: 140
Jewily#4267
Ðåãèñòðàöèÿ: 25.09.2016
Ñîîáùåíèÿ: 140
Jewily#4267
Ïî óìîë÷àíèþ
Re: Ñêðèïòû äëÿ íà÷èíàþùèõ

sspi  Низкий поклон Вам, Мудрейший Кудесник! Без готового скрипта я бы ничего не понял, ибо неуч.
И да, функции есть, но local stack я аннулировал (закомментил?) за ненадобностью.
Советую вам перейти по ссылке в подписи уважаемого Кудесника, в разделе Файлы оной содержится бесценная библиотека Скриптовых (и не только) Искусств, за авторством Хоттабыча и других Атлантов картостроения.
__________________




Íå óõîäè áåçðîïîòíî âî òüìó,
Áóäü ÿðîñòíåé ïðåä íî÷üþ âñåõ íî÷åé,
Íå äàé ïîãàñíóòü ñâåòó ñâîåìó!

Õîòü ìóäðûé çíàåò – íå îñèëèøü òüìó
Âî ìãëå ñëîâàìè íå çàææ¸øü ëó÷åé –
Íå óõîäè áåçðîïîòíî âî òüìó.




                                                                                       




Íå óõîäè áåçðîïîòíî âî òüìó,
Áóäü ÿðîñòíåé ïðåä íî÷üþ âñåõ íî÷åé,
Íå äàé ïîãàñíóòü ñâåòó ñâîåìó!

Õîòü ìóäðûé çíàåò – íå îñèëèøü òüìó
Âî ìãëå ñëîâàìè íå çàææ¸øü ëó÷åé –
Íå óõîäè áåçðîïîòíî âî òüìó.




                                                                                       
Jewily âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#261
Ñòàðûé 06.06.2022, 04:43
  #261
^
Andy2266
📖
Ðåãèñòðàöèÿ: 06.06.2021
Ñîîáùåíèÿ: 2
Ðåãèñòðàöèÿ: 06.06.2021
Ñîîáùåíèÿ: 2
Ïî óìîë÷àíèþ
Re: Ñêðèïòû äëÿ íà÷èíàþùèõ

Здравствуйте! Может ли кто-то подсказать, как сделать скрипт для того, чтобы на определенный день строилась будка существ определенного уровня в городе, если ранее эта постройка была запрещена. (т.е. например существ 7го уровня построить нельзя в городе, но через 2 недели становится можно, будка строится автоматически или постройка становится доступна) если такие можно сделать, конечно. Спасибо. сорри я ничего не понимаю в скриптах...
В моем случае чтобы через 14 дней появилась возможность построить Титанов в Академии, при том, что ранее существ 7го уровня построить было нельзя.
P.S. прошу прощения за свой нубский вопрос, но я пересмотрела все предыдущие страницы и такого вопроса  и скрипта не нашла.
Andy2266 âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#262
Ñòàðûé 06.06.2022, 07:58
  #262
^
}{0TT@6bI4
 
Àâàòàð äëÿ }{0TT@6bI4
📖
Ðåãèñòðàöèÿ: 05.09.2019
Àäðåñ: Ñåðåáðÿíûå Ãîðîäà, Àëü-Ñàôèð
Ñîîáùåíèÿ: 1980
Âûñòàâêà íàãðàä
Ðåãèñòðàöèÿ: 05.09.2019
Àäðåñ: Ñåðåáðÿíûå Ãîðîäà, Àëü-Ñàôèð
Ñîîáùåíèÿ: 1980
Âûñòàâêà íàãðàä
Ïî óìîë÷àíèþ
Re: Ñêðèïòû äëÿ íà÷èíàþùèõ

function NewDay()
if GetDate(DAY) == 14 then
  UpgradeTownBuilding("Город", TOWN_BUILDING_DWELLING_7, уровень) --0— не построен, 1 — отстроен, 2 — улучшен
end
end

Trigger(NEW_DAY_TRIGGER, "NewDay")
__________________
Ñ óâàæåíèåì, }{0TT@6bI4
_________________
Ãðóïïà êàðòîñòðîèòåëåé
Òàì îòâåòû íà âîïðîñû, ðóêîâîäñòâà, ãàéäû è ïðî÷åå
Discord-ñåðâåð "Ãåðîè 5: S.T.A.L.K.E.R"
Ñåðâåð ïî ìîäèôèêàöèè "Ãåðîè 5: S.T.A.L.K.E.R"
_________________
Ñ óâàæåíèåì, }{0TT@6bI4
_________________
Ãðóïïà êàðòîñòðîèòåëåé
Òàì îòâåòû íà âîïðîñû, ðóêîâîäñòâà, ãàéäû è ïðî÷åå
Discord-ñåðâåð "Ãåðîè 5: S.T.A.L.K.E.R"
Ñåðâåð ïî ìîäèôèêàöèè "Ãåðîè 5: S.T.A.L.K.E.R"
_________________
}{0TT@6bI4 âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#263
Ñòàðûé 06.06.2022, 15:16
  #263
^
Andy2266
📖
Ðåãèñòðàöèÿ: 06.06.2021
Ñîîáùåíèÿ: 2
Ðåãèñòðàöèÿ: 06.06.2021
Ñîîáùåíèÿ: 2
Ïî óìîë÷àíèþ
Re: Ñêðèïòû äëÿ íà÷èíàþùèõ

}{0TT@6bI4
function NewDay()
if GetDate(DAY) == 14 then
  UpgradeTownBuilding("Город", TOWN_BUILDING_DWELLING_7, уровень) --0— не построен, 1 — отстроен, 2 — улучшен
end
end

Trigger(NEW_DAY_TRIGGER, "NewDay")

Огромное Вам спасибо, шеф)!
Andy2266 âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#264
Ñòàðûé 03.09.2022, 20:14
  #264
^
BlueHeavenHero
 
Àâàòàð äëÿ BlueHeavenHero
📖
Ðåãèñòðàöèÿ: 20.08.2022
Àäðåñ: Ðîññèéñêàÿ Èìïåðèÿ.
Ñîîáùåíèÿ: 423
Ðåãèñòðàöèÿ: 20.08.2022
Àäðåñ: Ðîññèéñêàÿ Èìïåðèÿ.
Ñîîáùåíèÿ: 423
Ïî óìîë÷àíèþ
Re: Ñêðèïòû äëÿ íà÷èíàþùèõ

Доброго времени суток! Может ли кто подсказать такой скрипт, чтобы при захвате города Heaven этот самый город удалялся и вместо него появлялся разрушенный город?
BlueHeavenHero âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#265
Ñòàðûé 04.09.2022, 00:07
  #265
^
Andrei_21
 
Àâàòàð äëÿ Andrei_21
📖
Ðåãèñòðàöèÿ: 14.03.2021
Ñîîáùåíèÿ: 235
andrei_21
Âûñòàâêà íàãðàä
Ðåãèñòðàöèÿ: 14.03.2021
Ñîîáùåíèÿ: 235
andrei_21
Âûñòàâêà íàãðàä
Ïî óìîë÷àíèþ
Re: Ñêðèïòû äëÿ íà÷èíàþùèõ

BlueHeavenHeroДоброго времени суток! Может ли кто подсказать такой скрипт, чтобы при захвате города Heaven этот самый город удалялся и вместо него появлялся разрушенный город?
 Есть скриптовая команда RazeTown("скриптовое имя города"). С её помощью можно по дефолту разрушать замки людей и демонов. С замками остальных рас надо чуть подшаманить.
__________________
Ñöåíàðèé: "Íàñëåäèå ïðîøëîãî"
Êàìïàíèè:
"
Íîâûé ïîðÿäîê", "Ñåðûé Àëüÿíñ""Ïîèñêè Èñòèíû"

Òðåéëåð êàìïàíèè "Äûõàíèå Ïóñòîòû": https://www.youtube.com/watch?v=NH04dyKPmw8&ab_channel=%D0%90ndrei_21

Andrei_21 âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#266
Ñòàðûé 04.09.2022, 11:44
  #266
^
BlueHeavenHero
 
Àâàòàð äëÿ BlueHeavenHero
📖
Ðåãèñòðàöèÿ: 20.08.2022
Àäðåñ: Ðîññèéñêàÿ Èìïåðèÿ.
Ñîîáùåíèÿ: 423
Ðåãèñòðàöèÿ: 20.08.2022
Àäðåñ: Ðîññèéñêàÿ Èìïåðèÿ.
Ñîîáùåíèÿ: 423
Ïî óìîë÷àíèþ
Re: Ñêðèïòû äëÿ íà÷èíàþùèõ

Andrei_21 Есть скриптовая команда RazeTown("скриптовое имя города"). С её помощью можно по дефолту разрушать замки людей и демонов. С замками остальных рас надо чуть подшаманить.
Можете разъяснить? Просто я порылся в файлах игры и нашел этот скрипт, но, к сожалению, ничего не понял.
Заранее спасибо
BlueHeavenHero âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#267
Ñòàðûé 04.09.2022, 15:19
  #267
^
Andrei_21
 
Àâàòàð äëÿ Andrei_21
📖
Ðåãèñòðàöèÿ: 14.03.2021
Ñîîáùåíèÿ: 235
andrei_21
Âûñòàâêà íàãðàä
Ðåãèñòðàöèÿ: 14.03.2021
Ñîîáùåíèÿ: 235
andrei_21
Âûñòàâêà íàãðàä
Ïî óìîë÷àíèþ
Re: Ñêðèïòû äëÿ íà÷èíàþùèõ

function CaptureTown()
RazeTown('ваше имя города')
end

Trigger(OBJECT_CAPTURE_TRIGGER, 'ваше имя города', 'CaptureTown')

Все просто: даете в редакторе карт скриптовое имя городу, после в редакторе скриптов пишите что-то вроде такой функции.
__________________
Ñöåíàðèé: "Íàñëåäèå ïðîøëîãî"
Êàìïàíèè:
"
Íîâûé ïîðÿäîê", "Ñåðûé Àëüÿíñ""Ïîèñêè Èñòèíû"

Òðåéëåð êàìïàíèè "Äûõàíèå Ïóñòîòû": https://www.youtube.com/watch?v=NH04dyKPmw8&ab_channel=%D0%90ndrei_21

Andrei_21 âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#268
Ñòàðûé 09.09.2022, 16:32
  #268
^
BlueHeavenHero
 
Àâàòàð äëÿ BlueHeavenHero
📖
Ðåãèñòðàöèÿ: 20.08.2022
Àäðåñ: Ðîññèéñêàÿ Èìïåðèÿ.
Ñîîáùåíèÿ: 423
Ðåãèñòðàöèÿ: 20.08.2022
Àäðåñ: Ðîññèéñêàÿ Èìïåðèÿ.
Ñîîáùåíèÿ: 423
Ïî óìîë÷àíèþ
Re: Ñêðèïòû äëÿ íà÷èíàþùèõ

Может ли кто разъяснить мне, как использовать скрипт SetObjectiveState? Многие говорили использовать его, когда я спрашивал, как сделать объект, дающий задание.
Желательно с примерами, а то я мало что пойму без них.
BlueHeavenHero âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#269
Ñòàðûé 09.09.2022, 17:44
  #269
^
Ãðèãîðèé Êîâàëåâ
 
Àâàòàð äëÿ Ãðèãîðèé Êîâàëåâ
📖
Ðåãèñòðàöèÿ: 16.08.2021
Àäðåñ: Êðåñòüÿíñêèå õèæèíû
Ñîîáùåíèÿ: 81
Ðåãèñòðàöèÿ: 16.08.2021
Àäðåñ: Êðåñòüÿíñêèå õèæèíû
Ñîîáùåíèÿ: 81
Ïî óìîë÷àíèþ
Re: Ñêðèïòû äëÿ íà÷èíàþùèõ

BlueHeavenHeroМожет ли кто разъяснить мне, как использовать скрипт SetObjectiveState? Многие говорили использовать его, когда я спрашивал, как сделать объект, дающий задание.
Желательно с примерами, а то я мало что пойму без них.
SetObjectiveState изменяет состояние задания с именем objectiveName для определенного игрока. Для заданий принадлежащих конкретному игроку параметр playerID игнорируется. Для общих заданий, если параметр playerID задан, он указывает для какого игрока нужно изменить состояние задания, в противном случае — меняется состояние задания для первого игрока. 

Грубо говоря, скрипт активирует задание, выполняет/проваливает его. 

SetObjectiveState("prim1", OBJECTIVE_ACTIVE) -- первый параметр имя задания, второй - статус.
function PRIM3_COMPL()
Trigger(REGION_ENTER_AND_STOP_TRIGGER, '4', nil)
    if GetCurrentPlayer()==1 then
SetObjectiveState("prim3", OBJECTIVE_COMPLETED)  -- тоже самое, только статус задания другой.
print("32")
      end
           end
           
           
Trigger(REGION_ENTER_AND_STOP_TRIGGER, '4', 'PRIM3_COMPL')


__________________
Íà äàëüíåé ñòàíöèè ñîéäó...
Òðàâà ïî ïîÿñ,
Çàéäó â òðàâó, êàê â ìîðå áîñèêîì...
Íà äàëüíåé ñòàíöèè ñîéäó...
Òðàâà ïî ïîÿñ,
Çàéäó â òðàâó, êàê â ìîðå áîñèêîì...
Ãðèãîðèé Êîâàëåâ âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#270
Ñòàðûé 10.09.2022, 11:18
  #270
^
Àçãàëîð
 
Àâàòàð äëÿ Àçãàëîð
📖
Ðåãèñòðàöèÿ: 24.04.2016
Ñîîáùåíèÿ: 219
Ðåãèñòðàöèÿ: 24.04.2016
Ñîîáùåíèÿ: 219
Ïî óìîë÷àíèþ
Re: Ñêðèïòû äëÿ íà÷èíàþùèõ

BlueHeavenHero

OBJECTIVE_ACTIVE - сделать задание активным, т.е. задание можно выполнить и оно станет отображаться для игрока(ков)

OBJECTIVE_COMPLETED - выполнить задание

OBJECTIVE_FAILED - провалить задание

Для разных ситуаций ещё используется статус OBJECTIVE_UNKNOWN. В основном для функции GetObjectiveState, чтобы проверить не выдавалось ли ещё наше задание, иначе говоря не стоит ли у него один из ранее упомянутых статусов.

p.s. Так же могу добавить, что можно в кости "CanUncomplete" заданий поставить вариант "true", и тогда можно будет перезапускать квесты, т.е. выполненные квесты делать снова активными.

Àçãàëîð âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
Îòâåò
Ñòðàíèöà 18 èç 28


Îïöèè òåìû



×àñîâîé ïîÿñ GMT +4, âðåìÿ: 23:39.


vBulletin v3.5.0, Copyright ©2000-2024, Jelsoft Enterprises Ltd. (Ðóññêèé)

ßíäåêñ öèòèðîâàíèå    Top.Mail.Ru