Скрипты для начинающих - Страница 10 - Форум HeroesWorld-а

Вернуться   Форум HeroesWorld-а > Все о игре Герои 5. All about Heroes 5 > Герои Меча и Магии 5 - Картостроительство (Редактор карт)
Имя
Пароль
Карта сайта Регистрация Справка Пользователи Календарь Все разделы прочитаны
Быстрая навигация по основным разделам форума:
Кланы HW Турниры на HW КАРТЫ и Картостроительство Heroes 6 Heroes 5 Heroes 4 Heroes 3 Heroes 2 Heroes 1 Might&Magic

Герои Меча и Магии 5 - Картостроительство (Редактор карт) В этом разделе можно обсуждать все что касается редактора карт для Heroes of Might and Magic V. Так же здесь обсуждаем картостроительство.

Ответ
 
Опции темы
Старый 08.08.2017, 19:52   #136
MapEditor
Регистрация: 08.08.2017
Сообщения: 1
MapEditor - уровень боевого духа
По умолчанию Re: Скрипты для начинающих

Ребят подскажите скрипт чтобы убиваешь входишь в зону и появляется вражеский герой

Добавлено через 1 минуту
Ребят подскажите скрипт чтобы убиваешь входишь в зону и появляется вражеский герой
MapEditor вне форума   Ответить с цитированием
Старый 20.08.2017, 14:17   #137
I_Am_Walking
Регистрация: 20.08.2017
Сообщения: 3
I_Am_Walking - уровень боевого духа
По умолчанию Re: Скрипты для начинающих

а не подскажете, как проверку фракции замка или фракции игрока сделать? и после этого установить на существо определенный кураж
I_Am_Walking вне форума   Ответить с цитированием
Старый 20.08.2017, 17:43   #138
Jack_of_shadows
 
Аватар для Jack_of_shadows
Регистрация: 08.09.2013
Сообщения: 464
Jack_of_shadows - уровень боевого духа
Выставка наград
По умолчанию Re: Скрипты для начинающих

I_Am_Walking, насколько я знаю, функции прямого определения фракции нет. Для героев можно делать это косвенно, проверяя наличие фракционных умений.
Jack_of_shadows вне форума   Ответить с цитированием
Старый 20.08.2017, 18:00   #139
I_Am_Walking
Регистрация: 20.08.2017
Сообщения: 3
I_Am_Walking - уровень боевого духа
По умолчанию Re: Скрипты для начинающих

то есть если надо, например, проверить фракцию города или игрока, то прямо этого не сделать? только косвенно - через существ?
I_Am_Walking вне форума   Ответить с цитированием
Старый 20.08.2017, 21:20   #140
Jack_of_shadows
 
Аватар для Jack_of_shadows
Регистрация: 08.09.2013
Сообщения: 464
Jack_of_shadows - уровень боевого духа
Выставка наград
По умолчанию Re: Скрипты для начинающих

Я думаю, если это стандартная карта без всяких кастомных штук, то можно просто в 1 день скриптом просмотреть всех героев всех игроков, если есть некромантия - значит это некромант, призыв - значит демон и т.д., и запомнить результаты в глобальную таблицу (ключ - номер игрока, значение - фракция). А потом можно использовать её хоть по отношению к героям, хоть к замкам.
Jack_of_shadows вне форума   Ответить с цитированием
Старый 21.08.2017, 00:04   #141
I_Am_Walking
Регистрация: 20.08.2017
Сообщения: 3
I_Am_Walking - уровень боевого духа
По умолчанию Re: Скрипты для начинающих

попробовать конечно можно, только человеку не близкому к програмированию надо будет надолго засесть в мануалы)
I_Am_Walking вне форума   Ответить с цитированием
Старый 21.08.2017, 00:06   #142
AstralLein
 
Аватар для AstralLein
Регистрация: 02.06.2017
Адрес: На планете Земля.
Сообщения: 1525
AstralLein - уровень боевого духа AstralLein - уровень боевого духа
По умолчанию Re: Скрипты для начинающих

Только в мануалы скриптов игры, а не учебник по программированию...
__________________
Готовые проекты:

Карты для героев 5:
"Плата за любовь"
"Путь некроманта"

Карты для Disciples 3:
"Противостояние"

Проекты в разработке:

Моды для Disciples 3:
"Астельнаир" - ориентировочная дата выхода - конец 2019 - начало 2020 года (разработка возобновлена в мае 2019 года)

Карты для героев 5:

"Темные грани" - ориентировочная дата выхода - август 2019 года (разработка стартует после релиза "Темниц разума")

Карты для героев 6:

"Темницы разума" - ориентировочная дата выхода - июль 2019 года. Готовность 99%. В данный момент идет создание английского текста.
AstralLein вне форума   Ответить с цитированием
Старый 21.08.2017, 19:56   #143
Jack_of_shadows
 
Аватар для Jack_of_shadows
Регистрация: 08.09.2013
Сообщения: 464
Jack_of_shadows - уровень боевого духа
Выставка наград
По умолчанию Re: Скрипты для начинающих

Ну почему, любую обзорную статью по lua из интернета я бы рекомендовал прочитать, а ещё лучше сохранить и периодически заглядывать.
Jack_of_shadows вне форума   Ответить с цитированием
Старый 22.08.2017, 22:49   #144
RedHeavenHero
 
Аватар для RedHeavenHero
Регистрация: 10.02.2012
Сообщения: 2358
RedHeavenHero - уровень боевого духа RedHeavenHero - уровень боевого духа RedHeavenHero - уровень боевого духа
Выставка наград
По умолчанию Re: Скрипты для начинающих

I_Am_Walking,
фракцию замка можно узнать функцией GetTownRace, установить настроение и отвагу - SetMonsterCourageAndMood.
__________________
Карты для Героев Меча и Магии 5
Одиночные: Завеса срывается, Посол, Последний рывок, Эхо Пустоты
Кампания: Империя Единорога

Существа NCF
Орден Порядка: 1
Нейтралы: 1 2 3 4
RedHeavenHero вне форума   Ответить с цитированием
Старый 23.08.2017, 11:46   #145
sergejez
Регистрация: 08.01.2017
Сообщения: 20
sergejez - уровень боевого духа
По умолчанию Re: Скрипты для начинающих

Ребята помогите. У меня почему-то после вопроса (QuestionBox) и ответа "ОК" не проигрывается битва (StartCombat). Если же StartCombat скопировать в функцию с вопросом, то всё ок - работает. В вопросе делал ссылку на другую функцию.
sergejez вне форума   Ответить с цитированием
Старый 24.11.2017, 10:30   #146
zahar0z
Регистрация: 09.06.2017
Сообщения: 51
zahar0z - уровень боевого духа
По умолчанию Re: Скрипты для начинающих

Доброго времени суток всем, подскажите такую вещь, пожалуйста, кто знает.

Можно ли настроить выполнение функции не по конкретному тригеру из списка тригеров а по какому то другому, скажем постройке здания или появлению у определённого героя или определённого игрока определённого артефакта или существа.

что-то похожее кажется делает команда, запускающая новый поток(что такое поток правда в душе не знаю)
startThread( fProc, vParam1, vParam2, ... )
по идее если я правильно понимаю, она должна постоянно проверять наличие определённого условия, но вот как ей пользоваться я чего то не могу разобраться.



если конкретно то мне нужно при постройке определённого строения в городе заменить у героя одно существо другим

пока у меня выходит как то так



function replacecreature ();
if GetHeroCreatures( "Sarge", CREATURE_ARCHER ) >= 1;
and GetTownBuildingLevel( "cheast_town", TOWN_BUILDING_DWELLING_2 ) = 2;
then AddHeroCreatures( "Sarge", CREATURE_LONGBOWMAN, 1 );
RemoveHeroCreatures( "Sarge", CREATURE_ARCHER, 9999 );
else nil;
end;
end;

startThread( "replacecreature", TOWN_BUILDING_DWELLING_2 );





что там не так и вообще возможно ли сделать то что я описываю, если нет то есть какая нибудь похожая альтернатива?

Заранее спасибо большое всем за советы.
zahar0z вне форума   Ответить с цитированием
Старый 24.11.2017, 10:54   #147
Ment
 
Аватар для Ment
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 22333
Ment - уровень боевого духа Ment - уровень боевого духа Ment - уровень боевого духа
По умолчанию Re: Скрипты для начинающих

Триггер не сделать. А вот проверку в бесконечном цикле -- да. У Вас вроде нормально написано, только Ваш if надо обернуть в конструкцию:

while 1 do
if.....
sleep(4);
end;

Про sleep не забудьте, а то зависнет всё...
__________________
"Ок."




Ment вне форума   Ответить с цитированием
Старый 24.11.2017, 16:44   #148
zahar0z
Регистрация: 09.06.2017
Сообщения: 51
zahar0z - уровень боевого духа
По умолчанию Re: Скрипты для начинающих

Исправил вот так, всё равно не работает
Что-то я делаю не так, если кто знает, где именно ошибка, я буду очень благодарен если подскажите



п.с. за одно, как бэ случайно пропалил мод который пытаюсь склепать))
zahar0z вне форума   Ответить с цитированием
Старый 24.11.2017, 16:50   #149
Ment
 
Аватар для Ment
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 22333
Ment - уровень боевого духа Ment - уровень боевого духа Ment - уровень боевого духа
По умолчанию Re: Скрипты для начинающих

function replacecreature ()
while 1 do
if GetHeroCreatures( "Sarge", CREATURE_ARCHER ) >= 1 and GetTownBuildingLevel( "cheast_town", TOWN_BUILDING_DWELLING_2 ) == 2 then
RemoveHeroCreatures( "Sarge", CREATURE_ARCHER, 9999 );
AddHeroCreatures( "Sarge", CREATURE_LONGBOWMAN, 1 );
end;
sleep(4);
end;
end;

startThread( replacecreature );


А так?
Цитата:
за одно, как бэ случайно пропалил мод который пытаюсь склепать
Заинтриговали...
---
Впрочем, код, что я написал, имеет слабое звено. Подозреваю, у Вас там не 9999 лучников на самом деле. Ошибку выдаст. Надо сделать проверку точного числа лучников и это точное число вычитать! Если смысл в том, чтобы в армии их больше не было. Но пока проверьте без вычитания лучников просто.
__________________
"Ок."




Ment вне форума   Ответить с цитированием
Старый 24.11.2017, 17:16   #150
zahar0z
Регистрация: 09.06.2017
Сообщения: 51
zahar0z - уровень боевого духа
По умолчанию Re: Скрипты для начинающих

Цитата:
Сообщение от Ment
function replacecreature ()
while 1 do
if GetHeroCreatures( "Sarge", CREATURE_ARCHER ) >= 1 and GetTownBuildingLevel( "cheast_town", TOWN_BUILDING_DWELLING_2 ) = 2 then
RemoveHeroCreatures( "Sarge", CREATURE_ARCHER, 9999 );
AddHeroCreatures( "Sarge", CREATURE_LONGBOWMAN, 1 );
end;
end;
end;

startThread( "replacecreature" );


Проверил, всё так же не работает
(не запускается причём, как если здание построено с самого начала карты, так и если его строишь уже во время игры)

Где-то читал, что вроде надо писать не
startThread( "replacecreature" )
а
startThread( replacecreature)
например, попробовал и такой вариант, тоже результата не дало

В руководстве у новика, насчёт startThread есть ещё такой кусок
while(1) do
local heroes = GetPlayerHeroes(PLAYER_1)
for i, h in heroes do
if....
но как это применить и что это значит я понятия не имею ибо нуб
zahar0z вне форума   Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Вкл.
Быстрый переход


Часовой пояс GMT +4, время: 23:53.


vBulletin v3.5.0, Copyright ©2000-2019, Jelsoft Enterprises Ltd. (Русский)

Яндекс цитирование  Rambler\'s Top100   Рейтинг@Mail.ru

Авторские права - Copyright © 2002-2018 www.HeroesWorld.ru All rights reserved (new server)


На правах рекламы:123123