Ñêðèïòû - Ñòðàíèöà 240 - Ôîðóì HeroesWorld-à

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

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

Îòâåò
Ñòðàíèöà 240 èç 262
 
Îïöèè òåìû
#3586
Ñòàðûé 17.03.2022, 11:22
  #3586
^
Jewily
 
Àâàòàð äëÿ Jewily
📖
Ðåãèñòðàöèÿ: 25.09.2016
Ñîîáùåíèÿ: 140
Jewily#4267
Ðåãèñòðàöèÿ: 25.09.2016
Ñîîáùåíèÿ: 140
Jewily#4267
Ïî óìîë÷àíèþ
Re: Ñêðèïòû

ДолгийIsAIPlayer(Player_ID)

Если игрок человек, возвращает 0, если ИИ, то 1.
Спасибо. 
В очередной раз я неудомеваю: что за документ валяется в папке с игрой? 
У меня (как вы заметили), опять нет этого... 
Хотя уж в документе то найти строчку я могу. 
В следующий раз буду интуитивно подбирать имя функции на авось.  

Добавлено через 1 минуту
АзгалорСреди официальных заметил только IsHuman и IsComputer в боевых скриптах. Но, как я понимаю, Вам нужны функции для не боевого скрипта?
Да, вообще я хотел для adv map. В целом я то знаю как это проверить,через некоторый танец, но там 10 строк на 1 простое действие. 
Долгий, вон, нарыл видимо на топике не задокументированных.  
__________________




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

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




                                                                                       




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

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




                                                                                       
Jewily âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#3587
Ñòàðûé 17.03.2022, 15:09
  #3587
^
}{0TT@6bI4
 
Àâàòàð äëÿ }{0TT@6bI4
📖
Ðåãèñòðàöèÿ: 05.09.2019
Àäðåñ: Ñåðåáðÿíûå Ãîðîäà, Àëü-Ñàôèð
Ñîîáùåíèÿ: 1980
Âûñòàâêà íàãðàä
Ðåãèñòðàöèÿ: 05.09.2019
Àäðåñ: Ñåðåáðÿíûå Ãîðîäà, Àëü-Ñàôèð
Ñîîáùåíèÿ: 1980
Âûñòàâêà íàãðàä
Ïî óìîë÷àíèþ
Re: Ñêðèïòû

Jewill, вы же редактором скриптов пользуетесь? В нужном месте файла нажимаете, потом Ctrl+SPACE. Откроется контекстное окно — в нём все функции + незадокументированные (около 99%). Заодно там же айдишники.

Если поставить каретку в свойствах функции, в которую нужно поставить айди,например, после Trigger( , то в контекстное меню сразу ввверх прилетят айдишники триггеров (или айдишники, которые нужны для функции).
__________________
Ñ óâàæåíèåì, }{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 âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#3588
Ñòàðûé 17.03.2022, 17:32
  #3588
^
Jewily
 
Àâàòàð äëÿ Jewily
📖
Ðåãèñòðàöèÿ: 25.09.2016
Ñîîáùåíèÿ: 140
Jewily#4267
Ðåãèñòðàöèÿ: 25.09.2016
Ñîîáùåíèÿ: 140
Jewily#4267
Ïî óìîë÷àíèþ
Re: Ñêðèïòû

}{0TT@6bI4Jewill, вы же редактором скриптов пользуетесь? В нужном месте файла нажимаете, потом Ctrl+SPACE. Откроется контекстное окно — в нём все функции + незадокументированные (около 99%). Заодно там же айдишники.

Если поставить каретку в свойствах функции, в которую нужно поставить айди,например, после Trigger( , то в контекстное меню сразу ввверх прилетят айдишники триггеров (или айдишники, которые нужны для функции).
Спасибо, действительно, так удобнее работать. 
У меня кстати получилось немного пошаманив интегрировать редактор скриптов в VS Code, но некоторые моменты ещё не работают. 
Если разберусь — нужно кому-нибудь? 
Ещё в принципе не является проблемой туда подключить файловую структуру через скрипт автоархивации. 
Но это запарно, а вот нужно ли это кому-то не знаю. 
__________________




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

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




                                                                                       




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

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




                                                                                       
Jewily âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#3589
Ñòàðûé 18.03.2022, 08:12
  #3589
^
}{0TT@6bI4
 
Àâàòàð äëÿ }{0TT@6bI4
📖
Ðåãèñòðàöèÿ: 05.09.2019
Àäðåñ: Ñåðåáðÿíûå Ãîðîäà, Àëü-Ñàôèð
Ñîîáùåíèÿ: 1980
Âûñòàâêà íàãðàä
Ðåãèñòðàöèÿ: 05.09.2019
Àäðåñ: Ñåðåáðÿíûå Ãîðîäà, Àëü-Ñàôèð
Ñîîáùåíèÿ: 1980
Âûñòàâêà íàãðàä
Ïî óìîë÷àíèþ
Re: Ñêðèïòû

Получилось — открыть код редактора скриптов в visual studio или visual studio превратить в редактор геройских скриптов?) Интересно узнать, какой функционал тогда

Пока преимущества работы в vs не очень понятны, поэтому скидывать не прошу...
__________________
Ñ óâàæåíèåì, }{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 âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#3590
Ñòàðûé 18.03.2022, 09:41
  #3590
^
Jewily
 
Àâàòàð äëÿ Jewily
📖
Ðåãèñòðàöèÿ: 25.09.2016
Ñîîáùåíèÿ: 140
Jewily#4267
Ðåãèñòðàöèÿ: 25.09.2016
Ñîîáùåíèÿ: 140
Jewily#4267
Ïî óìîë÷àíèþ
Re: Ñêðèïòû

}{0TT@6bI4Получилось — открыть код редактора скриптов в visual studio или visual studio превратить в редактор геройских скриптов?) Интересно узнать, какой функционал тогда

Пока преимущества работы в vs не очень понятны, поэтому скидывать не прошу...
Да нет преимуществ, кроме привычки. Мне это как сесть в любимые жигули: просто для души. А вот новичкам, не видевшим код в текстовых документах и на листочках, может было бы удобно. 
Но таковых очень мало, увы. А функционально там не работает  система сокращений(Механически нужно пораскидывать функции, описания им изменить(кодировки ругаются),в общем мелочи но муторные), и пока что не устранена проблема того, что , как вам известно, в героях версия lua одна, а в редакторе немного посвежее. 
__________________




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

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




                                                                                       




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

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




                                                                                       
Jewily âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#3591
Ñòàðûé 18.03.2022, 18:05
  #3591
^
}{0TT@6bI4
 
Àâàòàð äëÿ }{0TT@6bI4
📖
Ðåãèñòðàöèÿ: 05.09.2019
Àäðåñ: Ñåðåáðÿíûå Ãîðîäà, Àëü-Ñàôèð
Ñîîáùåíèÿ: 1980
Âûñòàâêà íàãðàä
Ðåãèñòðàöèÿ: 05.09.2019
Àäðåñ: Ñåðåáðÿíûå Ãîðîäà, Àëü-Ñàôèð
Ñîîáùåíèÿ: 1980
Âûñòàâêà íàãðàä
Ïî óìîë÷àíèþ
Re: Ñêðèïòû

Понял, спасибо
__________________
Ñ óâàæåíèåì, }{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 âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#3592
Ñòàðûé 06.05.2022, 14:58
  #3592
^
Äîëãèé
 
Àâàòàð äëÿ Äîëãèé
📖
Ðåãèñòðàöèÿ: 23.04.2019
Ñîîáùåíèÿ: 97
Ðåãèñòðàöèÿ: 23.04.2019
Ñîîáùåíèÿ: 97
Ïî óìîë÷àíèþ
Re: Ñêðèïòû

Кто-нибудь знает название функции, которая регулирует прирост существ в двеллингах? Моя идея следующая: если условие не соблюдается, то при наступлении новой недели в дневной функций(та, что NEW_DAY_TRIGGER) прирост двеллинга равен 0.

P.S. уже нашёл SetObjectDwellingCreatures. Как не странно, она не работает на двеллинги, только города. Есть ли подобная функция, работающая на двеллинги?
Äîëãèé âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#3593
Ñòàðûé 06.05.2022, 22:54
  #3593
^
Jewily
 
Àâàòàð äëÿ Jewily
📖
Ðåãèñòðàöèÿ: 25.09.2016
Ñîîáùåíèÿ: 140
Jewily#4267
Ðåãèñòðàöèÿ: 25.09.2016
Ñîîáùåíèÿ: 140
Jewily#4267
Ïî óìîë÷àíèþ
Re: Ñêðèïòû

ДолгийКто-нибудь знает название функции, которая регулирует прирост существ в двеллингах? Моя идея следующая: если условие не соблюдается, то при наступлении новой недели в дневной функций(та, что NEW_DAY_TRIGGER) прирост двеллинга равен 0.

P.S. уже нашёл SetObjectDwellingCreatures. Как не странно, она не работает на двеллинги, только города. Есть ли подобная функция, работающая на двеллинги?
Честно говоря задача вроде тривиальная, а я в своё время тоже решения не нашел) Описанная функция работает лишь с городами, это так. А другой не нашел, и в документации не видел лично.
__________________




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

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




                                                                                       




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

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




                                                                                       
Jewily âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#3594
Ñòàðûé 12.05.2022, 04:45
  #3594
^
Ìàðòà
📖
Ðåãèñòðàöèÿ: 31.01.2020
Ñîîáùåíèÿ: 80
Ðåãèñòðàöèÿ: 31.01.2020
Ñîîáùåíèÿ: 80
Ïî óìîë÷àíèþ
Re: Ñêðèïòû

Хоттабыч, хотя вас тут пару месяцев не было, но вдруг вы ответите.
(Или кто-нибудь, поможите, люди добрые).

Вы меня когда-то учили писать комбат скрипт для ГГ. Вот, если помните:
------------------------------------------------------------------------------------------------------
function Start()

Level_R = ceil(GetGameVar("LevR") + 0)

    if GetHeroName(GetAttackerHero()) == 'Raelag' then
        local mana = GetUnitManaPoints(GetAttackerHero());
        SetUnitManaPoints(GetAttackerHero(), 200);
        repeat sleep(1) until GetUnitManaPoints(GetAttackerHero())==200;
        sleep(1);
         if Level_R < 20 then
           for i, creature in GetDefenderCreatures() do
             startThread(UnitCastAimedSpell, GetAttackerHero(), 4, creature);
                 end;
               SetUnitManaPoints(GetAttackerHero(), mana);
            else
              for i, creature in GetDefenderCreatures() do
               startThread(UnitCastAimedSpell, GetAttackerHero(), 226, creature);
                end
                 SetUnitManaPoints(GetAttackerHero(), mana);
                   end
    else
    if GetHeroName(GetDefenderHero()) == 'Raelag' then
        local mana = GetUnitManaPoints(GetDefenderHero())
        SetUnitManaPoints(GetDefenderHero(), 200);
        repeat sleep(1) until GetUnitManaPoints(GetDefenderHero())==200
        sleep(1);
         if Level_R < 20 then
           for i, creature in GetAttackerCreatures() do
            startThread(UnitCastAimedSpell, GetDefenderHero(), 4, creature);
             end;
              SetUnitManaPoints(GetDefenderHero(), mana);
             else
               for i, creature in GetAttackerCreatures() do
                startThread(UnitCastAimedSpell, GetDefenderHero(), 226, creature);
                  end;
                  SetUnitManaPoints(GetDefenderHero(), mana);
                     end
                   end;
                  end;
                end;
------------------------------------------------------------------------------------------------------

А как добавить в комбат скрипт другой скрипт, для врага?
Я уж что только не пробовала.
Пыталась написать что-то вроде:

------------------------------------------------------------------------------------------------------
if GetHeroName(GetAttackerHero()) == 'Shadwyn' then
      if GetHeroName(GetDefenderHero()) == 'Nur' then
            local mana = GetUnitManaPoints(GetDefenderHero())
        SetUnitManaPoints(GetDefenderHero(), 200);
        repeat sleep(1) until GetUnitManaPoints(GetDefenderHero())==200
        for i, creature in GetAttackerCreatures() do
          startThread(UnitCastAimedSpell, GetDefenderHero(), 3, creature)
        end;
        SetUnitManaPoints(GetDefenderHero(), mana);
        
        else
        if GetHeroName(GetAttackerHero()) == 'Shadwyn' then
        local mana = GetUnitManaPoints(GetAttackerHero());
        SetUnitManaPoints(GetAttackerHero(), 200);
        repeat sleep(1) until GetUnitManaPoints(GetAttackerHero())==200;
        sleep(1);
         if Level_R < 20 then
           for i, creature in GetDefenderCreatures() do
             startThread(UnitCastAimedSpell, GetAttackerHero(), 4, creature);
                 end;
               SetUnitManaPoints(GetAttackerHero(), mana);
            else
              for i, creature in GetDefenderCreatures() do
               startThread(UnitCastAimedSpell, GetAttackerHero(), 279, creature);
                end
                 SetUnitManaPoints(GetAttackerHero(), mana);
                   end
------------------------------------------------------------------------------------------------------

И тд, дальше про защитника - так нифига не работает. Хотя Назир исправно фигачит по моей Илайе молнией, но в других боях она не может применить Ледяную глыбу, пишут "ERROR: Wrong type of argument 1,when calling function GetHeroName".

Пыталась менять местами if GetHeroName(GetAttackerHero()) == 'Shadwyn' then и  if GetHeroName(GetDefenderHero()) == 'Nur' then - такая же фигня.

Пыталась в MapScript прописывать Назира вместе с Илайей:

path = '/'..GetMapDataPath()
main_hero = 'Shadwyn'
MagHero = 'Nur'

SetHeroCombatScript('Shadwyn', path.."CombatScript.xdb#xpointer(/Script)");
SetHeroCombatScript('Nur', path.."CombatScript.xdb#xpointer(/Script)");

- тоже не помогает.
Пыталась даже навесить Назиру отдельный CombatScript  - но похоже, игра его вообще не видит.

Вообще, возможно прописать комбат-скрипты нескольким героям, и как это сделать?
Ìàðòà âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#3595
Ñòàðûé 13.05.2022, 00:09
  #3595
^
}{0TT@6bI4
 
Àâàòàð äëÿ }{0TT@6bI4
📖
Ðåãèñòðàöèÿ: 05.09.2019
Àäðåñ: Ñåðåáðÿíûå Ãîðîäà, Àëü-Ñàôèð
Ñîîáùåíèÿ: 1980
Âûñòàâêà íàãðàä
Ðåãèñòðàöèÿ: 05.09.2019
Àäðåñ: Ñåðåáðÿíûå Ãîðîäà, Àëü-Ñàôèð
Ñîîáùåíèÿ: 1980
Âûñòàâêà íàãðàä
Ïî óìîë÷àíèþ
Re: Ñêðèïòû

Марта, здравствуйте. Ну, почему не было несколько месяцев? Я форум по обязанностям посещаю не реже двух раз в неделю. С телефона не очень удобно понимать код; завтра вечером гляну с компьютера

Одно скажу сразу: если в бою встретились два героя, у которых у обоих привязан боевой скрипт, то используется боевой скрипт нападающего.
__________________
Ñ óâàæåíèåì, }{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 âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#3596
Ñòàðûé 13.05.2022, 09:47
  #3596
^
Ìàðòà
📖
Ðåãèñòðàöèÿ: 31.01.2020
Ñîîáùåíèÿ: 80
Ðåãèñòðàöèÿ: 31.01.2020
Ñîîáùåíèÿ: 80
Ïî óìîë÷àíèþ
Re: Ñêðèïòû

Хоттабыч, - не было потому что я в прошлый раз нарисовала здоровенную карту, очень рельефную и высокую, но оказалось, что играть так одно мучение).
Так что, я тогда плюнула и забила, сорри, - столько сил зря потратила.
Сейчас-то всё легче, я учла прошлые ошибки. Напишите как сможете, - мне ещё долго до главного гада рисовать, а второй комбат скрипт нужен ему.
Ìàðòà âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#3597
Ñòàðûé 13.05.2022, 20:41
  #3597
^
}{0TT@6bI4
 
Àâàòàð äëÿ }{0TT@6bI4
📖
Ðåãèñòðàöèÿ: 05.09.2019
Àäðåñ: Ñåðåáðÿíûå Ãîðîäà, Àëü-Ñàôèð
Ñîîáùåíèÿ: 1980
Âûñòàâêà íàãðàä
Ðåãèñòðàöèÿ: 05.09.2019
Àäðåñ: Ñåðåáðÿíûå Ãîðîäà, Àëü-Ñàôèð
Ñîîáùåíèÿ: 1980
Âûñòàâêà íàãðàä
Ïî óìîë÷àíèþ
Re: Ñêðèïòû

local defH, attH = GetDefenderHero(), GetAttackerHero()
if defH then --Если присутствует герой защищ. (нападающий есть абсолютно всегда), то...
  if GetHeroName(defH) == ".." and GetHeroName(attH) = "...." then --Если защищается такой-то герой, а нападает такой-то, то...
    --Дальше действия с героями; defH — содержит имя защищающегося героя, attH — нападающего
   --Также для этого, второго скрипта уберите проверку if Level_R>20 (и её else и end'ы) — это же проверка уровней Раилага?
    --Ваш код...
  end
end
__________________
Ñ óâàæåíèåì, }{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 âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#3598
Ñòàðûé 13.05.2022, 20:43
  #3598
^
}{0TT@6bI4
 
Àâàòàð äëÿ }{0TT@6bI4
📖
Ðåãèñòðàöèÿ: 05.09.2019
Àäðåñ: Ñåðåáðÿíûå Ãîðîäà, Àëü-Ñàôèð
Ñîîáùåíèÿ: 1980
Âûñòàâêà íàãðàä
Ðåãèñòðàöèÿ: 05.09.2019
Àäðåñ: Ñåðåáðÿíûå Ãîðîäà, Àëü-Ñàôèð
Ñîîáùåíèÿ: 1980
Âûñòàâêà íàãðàä
Ïî óìîë÷àíèþ
Re: Ñêðèïòû

Ошибка Wrong type of argument 1, when calling function GetHeroName() связана с тем, что когда нет защищающегося героя (битва с нейтралами), то GetDefenderHero возвращает nil, а GetHeroName первым параметром обязана принимать имя героя. И когда в неё прилетает nil, она выдает ошибку. В связи с этим нужна проверка на отличие переменной от nil (код выше)
__________________
Ñ óâàæåíèåì, }{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 âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#3599
Ñòàðûé 13.05.2022, 22:55
  #3599
^
Ìàðòà
📖
Ðåãèñòðàöèÿ: 31.01.2020
Ñîîáùåíèÿ: 80
Ðåãèñòðàöèÿ: 31.01.2020
Ñîîáùåíèÿ: 80
Ïî óìîë÷àíèþ
Re: Ñêðèïòû

Хоттабыч, пожалуйста, будьте проще с народом). Я нифига не поняла, так как программированию никогда не училась.

Имелось ввиду, что при нападении на главного гада (Назира, скажем), он будет кастовать на нападающую  Илайю молнии, хотя в обычном бою она кастует на всех ледяную глыбу.

Это всё в комбат-скрипт писать? А функцию надо новую сделать, и написать её под первой?
Так , вроде, ошибку выдаёт:

-------------------------------------------------------------------------------------------
function Nur_battle()

local defH, attH = GetDefenderHero(), GetAttackerHero()

  if GetHeroName(defH) == "Nur" and GetHeroName(attH) = "Shadwyn" then
        local mana = GetUnitManaPoints(GetDefenderHero())
        SetUnitManaPoints(GetDefenderHero(), 200);
        repeat sleep(1) until GetUnitManaPoints(GetDefenderHero())==200
        for i, creature in GetAttackerCreatures() do
        startThread(UnitCastAimedSpell, GetDefenderHero(), 3, creature)
        end;
        SetUnitManaPoints(GetDefenderHero(), mana);
elseif
if GetHeroName(defH) == "Shadwyn" and GetHeroName(attH) = "Nur" then
        local mana = GetUnitManaPoints(GetAttackerHero())
        SetUnitManaPoints(GetAttackerHero(), 200);
        repeat sleep(1) until GetUnitManaPoints(GetAttackerHero())==200
        for i, creature in GetDefenderCreatures() do
        startThread(UnitCastAimedSpell, GetAttackerHero(), 3, creature)
        end;
        SetUnitManaPoints(GetAttackerHero(), mana);
-------------------------------------------------------------------------------------------
и тд.

Editor выдаёт ошибку на строчке 
if GetHeroName(defH) == "Nur" and GetHeroName(attH) = "Shadwyn" then

Если пишешь 
if defH then
if GetHeroName(defH) == "Nur" and GetHeroName(attH) = "Shadwyn" then
то он выдаёт ошибку на строчке if defH then.

Я понимаю, что туплю, но не тупить не могу). Ответьте, когда у вас будет время, пока мне это не горит.

Ìàðòà âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#3600
Ñòàðûé 14.05.2022, 00:37
  #3600
^
Jewily
 
Àâàòàð äëÿ Jewily
📖
Ðåãèñòðàöèÿ: 25.09.2016
Ñîîáùåíèÿ: 140
Jewily#4267
Ðåãèñòðàöèÿ: 25.09.2016
Ñîîáùåíèÿ: 140
Jewily#4267
Ïî óìîë÷àíèþ
Re: Ñêðèïòû

Марта

Editor выдаёт ошибку на строчке 
if GetHeroName(defH) == "Nur" and GetHeroName(attH) = "Shadwyn" then

Если пишешь 
if defH then
if GetHeroName(defH) == "Nur" and GetHeroName(attH) = "Shadwyn" then
то он выдаёт ошибку на строчке if defH then.

Я понимаю, что туплю, но не тупить не могу). Ответьте, когда у вас будет время, пока мне это не горит.

Конкретно тут ошибка потому что  GetHeroName(attH) = "Shadwyn" содержит одно равно, а нужно два. 
Прочитайте руководства в группе Хоттабыча, комбат скрипты это не самое простое, что есть в героях. Я,например, с учётом достаточного опыта написания скриптов глобальной карты вам особо не помогу - т.к не имею опыта написания боевых скриптов, могу чушь посоветовать.
__________________




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

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




                                                                                       




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

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




                                                                                       
Jewily âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
Îòâåò
Ñòðàíèöà 240 èç 262


Îïöèè òåìû



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


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

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