Скрипты - Страница 228 - Форум HeroesWorld-а

Быстрая навигация по основным разделам форума:
Турниры
КАРТЫ
Heroes 6
Heroes 5
Heroes 4
Heroes 3
Heroes 2
Heroes 1
Might&Magic

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

Ответ
Страница 228 из 237
 
Опции темы
#3406
Старый 28.07.2021, 16:04
  #3406
^
Flame Crystal
 
Аватар для Flame Crystal
📖
Регистрация: 22.08.2020
Адрес: Украина
Сообщения: 132
Прадруг#9221
Регистрация: 22.08.2020
Адрес: Украина
Сообщения: 132
Прадруг#9221
Радость
Re: Скрипты

Спасибо вам огромное (только сегодня смогла проверить)
__________________
С уважением, ваша Дарина)
Мои сценарии:  
Лесной хранитель (лесной союз)
Путь к свету (чернокнижник)
Фалькон Сокол (орден порядка)
Инквизиция Ариоха (некроманты) - готово на 90%
С уважением, ваша Дарина)
Мои сценарии:  
Лесной хранитель (лесной союз)
Путь к свету (чернокнижник)
Фалькон Сокол (орден порядка)
Инквизиция Ариоха (некроманты) - готово на 90%
Flame Crystal вне форума
Ответить с цитированием
#3407
Старый 29.07.2021, 22:52
  #3407
^
}{0TT@6bI4
 
Аватар для }{0TT@6bI4
📖
Регистрация: 05.09.2019
Адрес: Серебряные Города, Аль-Сафир
Сообщения: 1302
Выставка наград
Регистрация: 05.09.2019
Адрес: Серебряные Города, Аль-Сафир
Сообщения: 1302
Выставка наград
По умолчанию
Re: Скрипты

function RandomCircleSpawnCoords(x,y,r,fl)
  if x and y and r then
    if not fl then
      flooor = GROUND
    end
    local t = {}
    local n = 1
    x = x-r
    y = y-r
    r = r+r
    for i = x, r do
      print(i)
      for j = y, r do
        print(j)
        if (i - x)*(i - x) + (j - y)*(j - y) <= r*r then
          t[n] = {x1, y1, flooor}
          n = n + 1
        end
      end
    end
    print('Ìàññèâ: ', t)
    print('Äëèíà: ', length(t))
    local c = t[random(length(t))+1]
    return c[1], c[2], c[3]
  end
end

RCSC = RandomCircleSpawnCoords

Массив t не заполняется, циклы i и j не крутятся совсем. В чём может быть проблема?

__________________
С уважением, }{0TT@6bI4
_________________
Группа картостроителей
Там ответы на вопросы, руководства, гайды и прочее
_________________
С уважением, }{0TT@6bI4
_________________
Группа картостроителей
Там ответы на вопросы, руководства, гайды и прочее
_________________
}{0TT@6bI4 вне форума
Ответить с цитированием
#3408
Старый 29.07.2021, 22:58
  #3408
^
Gerter
 
Аватар для Gerter
📖
Регистрация: 16.07.2012
Адрес: Санкт-Петербург
Сообщения: 804
pegn0ly#9113
Выставка наград
Регистрация: 16.07.2012
Адрес: Санкт-Петербург
Сообщения: 804
pegn0ly#9113
Выставка наград
По умолчанию
Re: Скрипты

}{0TT@6bI4

function RandomCircleSpawnCoords(x,y,r,fl)
  if x and y and r then
    if not fl then
      flooor = GROUND
    end
    local t = {}
    local n = 1
    x = x-r
    y = y-r
    r = r+r
    for i = x, r do
      print(i)
      for j = y, r do
        print(j)
        if (i - x)*(i - x) + (j - y)*(j - y) <= r*r then
          t[n] = {x1, y1, flooor}
          n = n + 1
        end
      end
    end
    print('Ìàññèâ: ', t)
    print('Äëèíà: ', length(t))
    local c = t[random(length(t))+1]
    return c[1], c[2], c[3]
  end
end

RCSC = RandomCircleSpawnCoords

Массив t не заполняется, циклы i и j не крутятся совсем. В чём может быть проблема?


RCSC = RandomCircleSpawnCoords

прям так строчка и написана или скопировал не все? если так и написано, то очевидно, почему не работает)
__________________
MCCS v0.3.6 - мультиплеерный мод, добавляющий уникальный контент и механики в игру

Ушел в геймдев.
MCCS v0.3.6 - мультиплеерный мод, добавляющий уникальный контент и механики в игру

Ушел в геймдев.
Gerter вне форума
Ответить с цитированием
#3409
Старый 29.07.2021, 23:32
  #3409
^
}{0TT@6bI4
 
Аватар для }{0TT@6bI4
📖
Регистрация: 05.09.2019
Адрес: Серебряные Города, Аль-Сафир
Сообщения: 1302
Выставка наград
Регистрация: 05.09.2019
Адрес: Серебряные Города, Аль-Сафир
Сообщения: 1302
Выставка наград
По умолчанию
Re: Скрипты

Да, так и написано. Это я алиас для функции создал; вызываю RCSC(14,14,2), например.
__________________
С уважением, }{0TT@6bI4
_________________
Группа картостроителей
Там ответы на вопросы, руководства, гайды и прочее
_________________
С уважением, }{0TT@6bI4
_________________
Группа картостроителей
Там ответы на вопросы, руководства, гайды и прочее
_________________
}{0TT@6bI4 вне форума
Ответить с цитированием
#3410
Старый 30.07.2021, 14:05
  #3410
^
}{0TT@6bI4
 
Аватар для }{0TT@6bI4
📖
Регистрация: 05.09.2019
Адрес: Серебряные Города, Аль-Сафир
Сообщения: 1302
Выставка наград
Регистрация: 05.09.2019
Адрес: Серебряные Города, Аль-Сафир
Сообщения: 1302
Выставка наград
По умолчанию
Re: Скрипты

С проблемой разобрался.
__________________
С уважением, }{0TT@6bI4
_________________
Группа картостроителей
Там ответы на вопросы, руководства, гайды и прочее
_________________
С уважением, }{0TT@6bI4
_________________
Группа картостроителей
Там ответы на вопросы, руководства, гайды и прочее
_________________
}{0TT@6bI4 вне форума
Ответить с цитированием
#3411
Старый 05.08.2021, 13:04
  #3411
^
Andrei_21
 
Аватар для Andrei_21
📖
Регистрация: 14.03.2021
Сообщения: 89
Регистрация: 14.03.2021
Сообщения: 89
По умолчанию
Re: Скрипты

Не хочу показаться надоедливым, но снова проблема с потоком:

function Diff_setup()
slozhnost = GetDifficulty();
if slozhnost == DIFFICULTY_EASY  then
print("easy");
startThread(sloz_easy);
elseif slozhnost == DIFFICULTY_NORMAL then
print("norm");
startThread(sloz_norm);
elseif slozhnost == DIFFICULTY_HARD then
print("hard");
startThread(sloz_hard);
elseif slozhnost == DIFFICULTY_HEROIC then
print("hero");
startThread(sloz_hero);
end;
end;

function sloz_easy()
if (GetDate( DAY ) == 31) then
SetRegionBlocked("blok", nil, 4);
end;
end;

function sloz_norm()
if (GetDate( DAY ) == 28) then
SetRegionBlocked("blok", nil, 4);
end;
end;

function sloz_hard()
if (GetDate( DAY ) == 14) then
SetRegionBlocked("blok", nil, 4);
end;
end;

function sloz_hero()
if (GetDate( DAY ) == 12) then
SetRegionBlocked("blok", nil, 4);
end;
end;

startThread(Diff_setup);

Консоль ругается и выдаёт ошибку.

Миниатюры
Нажмите на изображение для увеличения
Название:  a6.png
Просмотров: 6
Размер:	26.9 Кбайт
ID:	65906  
__________________


Кампании:
Новый порядок,  Серый Альянс (Стадия тестирования)
Руководство "Создание пользовательской кампании"


Кампании:
Новый порядок,  Серый Альянс (Стадия тестирования)
Руководство "Создание пользовательской кампании"
Andrei_21 вне форума
Ответить с цитированием
#3412
Старый 05.08.2021, 15:13
  #3412
^
RedHeavenHero
 
Аватар для RedHeavenHero
📖
Регистрация: 10.02.2012
Сообщения: 2369
Выставка наград
Регистрация: 10.02.2012
Сообщения: 2369
Выставка наград
По умолчанию
Re: Скрипты

Andrei_21Не хочу показаться надоедливым, но снова проблема с потоком:

function Diff_setup()
slozhnost = GetDifficulty();
if slozhnost == DIFFICULTY_EASY  then
print("easy");
startThread(sloz_easy);
elseif slozhnost == DIFFICULTY_NORMAL then
print("norm");
startThread(sloz_norm);
elseif slozhnost == DIFFICULTY_HARD then
print("hard");
startThread(sloz_hard);
elseif slozhnost == DIFFICULTY_HEROIC then
print("hero");
startThread(sloz_hero);
end;
end;

function sloz_easy()
if (GetDate( DAY ) == 31) then
SetRegionBlocked("blok", nil, 4);
end;
end;

function sloz_norm()
if (GetDate( DAY ) == 28) then
SetRegionBlocked("blok", nil, 4);
end;
end;

function sloz_hard()
if (GetDate( DAY ) == 14) then
SetRegionBlocked("blok", nil, 4);
end;
end;

function sloz_hero()
if (GetDate( DAY ) == 12) then
SetRegionBlocked("blok", nil, 4);
end;
end;

startThread(Diff_setup);

Консоль ругается и выдаёт ошибку.

Скопировал код в консоль с добавлением @ в начале и он исполнился - т. е. как минимум напечатал уровень сложности.
Если это не весь код, то ошибка, полагаю, в чём-то другом.
К слову, код, скорее всего, работает не так, как вы от него ожидаете.
__________________
Карты для Героев Меча и Магии 5
Одиночные: Завеса срывается, Посол, Последний рывок, Эхо Пустоты
Кампания: Империя Единорога

Существа NCF
Орден Порядка: 1
Нейтралы: 1 2 3 4
Карты для Героев Меча и Магии 5
Одиночные: Завеса срывается, Посол, Последний рывок, Эхо Пустоты
Кампания: Империя Единорога

Существа NCF
Орден Порядка: 1
Нейтралы: 1 2 3 4
RedHeavenHero вне форума
Ответить с цитированием
#3413
Старый 05.08.2021, 15:28
  #3413
^
Andrei_21
 
Аватар для Andrei_21
📖
Регистрация: 14.03.2021
Сообщения: 89
Регистрация: 14.03.2021
Сообщения: 89
По умолчанию
Re: Скрипты

Ясно. Не исключаю, что напортачил где-то раньше. Спасибо за помощь, RedHeavenHero.
__________________


Кампании:
Новый порядок,  Серый Альянс (Стадия тестирования)
Руководство "Создание пользовательской кампании"


Кампании:
Новый порядок,  Серый Альянс (Стадия тестирования)
Руководство "Создание пользовательской кампании"
Andrei_21 вне форума
Ответить с цитированием
#3414
Старый 05.08.2021, 15:34
  #3414
^
Ment
 
Аватар для Ment
📖
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 24646
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 24646
По умолчанию
Re: Скрипты

АвторК слову, код, скорее всего, работает не так, как вы от него ожидаете.
Ну да. Код выполняется однократно в первый день, выдаёт false на проверки даты и заканчивается. Если только там ещё чего-нибудь нет.
__________________
Можешь ли слышать мой стон
Слабый, из темноты пучин?    
Пустотой он поглощён             
Без остатка почти.                   





















Стикеры GBF в Telegram
Можешь ли слышать мой стон
Слабый, из темноты пучин?    
Пустотой он поглощён             
Без остатка почти.                   





















Стикеры GBF в Telegram
Ment сейчас на форуме
Ответить с цитированием
#3415
Старый 05.08.2021, 15:39
  #3415
^
Andrei_21
 
Аватар для Andrei_21
📖
Регистрация: 14.03.2021
Сообщения: 89
Регистрация: 14.03.2021
Сообщения: 89
По умолчанию
Re: Скрипты

MentНу да. Код выполняется однократно в первый день, выдаёт false на проверки даты и заканчивается. Если только там ещё чего-нибудь нет.

Подозревал такой исход событий. Ну ничего, переделаю по-другому.
__________________


Кампании:
Новый порядок,  Серый Альянс (Стадия тестирования)
Руководство "Создание пользовательской кампании"


Кампании:
Новый порядок,  Серый Альянс (Стадия тестирования)
Руководство "Создание пользовательской кампании"
Andrei_21 вне форума
Ответить с цитированием
#3416
Старый 05.08.2021, 16:56
  #3416
^
}{0TT@6bI4
 
Аватар для }{0TT@6bI4
📖
Регистрация: 05.09.2019
Адрес: Серебряные Города, Аль-Сафир
Сообщения: 1302
Выставка наград
Регистрация: 05.09.2019
Адрес: Серебряные Города, Аль-Сафир
Сообщения: 1302
Выставка наград
По умолчанию
Re: Скрипты

RedHeavenHero, а не подскажете такой момент? Если переписать функцию Errormessage например даже так:
errmsg = _ERRORMESSAGE
function _ERRORMESSAGE(msg)
errmsg(msg)
end

И в консоли вызвать MessageBox(''), то вместо обычной ошибки "Empty message text!" происходит вылет игры. Давным-давно вы помогали дурману скрыть ошибку attmept to call a nil value; таким же методом я хочу отловить ошибку отсутствия текстового файла, т.е. определять, существует ли он. Буду признателен за помощь
__________________
С уважением, }{0TT@6bI4
_________________
Группа картостроителей
Там ответы на вопросы, руководства, гайды и прочее
_________________
С уважением, }{0TT@6bI4
_________________
Группа картостроителей
Там ответы на вопросы, руководства, гайды и прочее
_________________
}{0TT@6bI4 вне форума
Ответить с цитированием
#3417
Старый 06.08.2021, 11:21
  #3417
^
Flame Crystal
 
Аватар для Flame Crystal
📖
Регистрация: 22.08.2020
Адрес: Украина
Сообщения: 132
Прадруг#9221
Регистрация: 22.08.2020
Адрес: Украина
Сообщения: 132
Прадруг#9221
Вопрос
Re: Скрипты

Здравствуйте, дорогие картостроители.  Можете подсказать скрипт, который убирает существо с карты?
__________________
С уважением, ваша Дарина)
Мои сценарии:  
Лесной хранитель (лесной союз)
Путь к свету (чернокнижник)
Фалькон Сокол (орден порядка)
Инквизиция Ариоха (некроманты) - готово на 90%
С уважением, ваша Дарина)
Мои сценарии:  
Лесной хранитель (лесной союз)
Путь к свету (чернокнижник)
Фалькон Сокол (орден порядка)
Инквизиция Ариоха (некроманты) - готово на 90%
Flame Crystal вне форума
Ответить с цитированием
#3418
Старый 06.08.2021, 13:31
  #3418
^
Andrei_21
 
Аватар для Andrei_21
📖
Регистрация: 14.03.2021
Сообщения: 89
Регистрация: 14.03.2021
Сообщения: 89
По умолчанию
Re: Скрипты

Flame CrystalЗдравствуйте, дорогие картостроители.  Можете подсказать скрипт, который убирает существо с карты?

RemoveObject("скриптовое имя монстра");
__________________


Кампании:
Новый порядок,  Серый Альянс (Стадия тестирования)
Руководство "Создание пользовательской кампании"


Кампании:
Новый порядок,  Серый Альянс (Стадия тестирования)
Руководство "Создание пользовательской кампании"
Andrei_21 вне форума
Ответить с цитированием
#3419
Старый 06.08.2021, 15:02
  #3419
^
Flame Crystal
 
Аватар для Flame Crystal
📖
Регистрация: 22.08.2020
Адрес: Украина
Сообщения: 132
Прадруг#9221
Регистрация: 22.08.2020
Адрес: Украина
Сообщения: 132
Прадруг#9221
Сообщение
Re: Скрипты

Andrei_21RemoveObject("скриптовое имя монстра");
Спасибо большое)
__________________
С уважением, ваша Дарина)
Мои сценарии:  
Лесной хранитель (лесной союз)
Путь к свету (чернокнижник)
Фалькон Сокол (орден порядка)
Инквизиция Ариоха (некроманты) - готово на 90%
С уважением, ваша Дарина)
Мои сценарии:  
Лесной хранитель (лесной союз)
Путь к свету (чернокнижник)
Фалькон Сокол (орден порядка)
Инквизиция Ариоха (некроманты) - готово на 90%
Flame Crystal вне форума
Ответить с цитированием
#3420
Старый 11.08.2021, 14:16
  #3420
^
RedHeavenHero
 
Аватар для RedHeavenHero
📖
Регистрация: 10.02.2012
Сообщения: 2369
Выставка наград
Регистрация: 10.02.2012
Сообщения: 2369
Выставка наград
По умолчанию
Re: Скрипты

}{0TT@6bI4RedHeavenHero, а не подскажете такой момент? Если переписать функцию Errormessage например даже так:
errmsg = _ERRORMESSAGE
function _ERRORMESSAGE(msg)
errmsg(msg)
end

И в консоли вызвать MessageBox(''), то вместо обычной ошибки "Empty message text!" происходит вылет игры. Давным-давно вы помогали дурману скрыть ошибку attmept to call a nil value; таким же методом я хочу отловить ошибку отсутствия текстового файла, т.е. определять, существует ли он. Буду признателен за помощь
По какой-то причине игра вылетает, когда пытается вызвать _ERRORMESSAGE, который не является встроенной С-функцией. То есть ее можно только переназначить на другую уже существующую, например, print или StopTrigger (последняя, не смотря на свое название, ничего не делает по моим наблюдениям).
Если надо выловить ошибку, используйте errorHook.
__________________
Карты для Героев Меча и Магии 5
Одиночные: Завеса срывается, Посол, Последний рывок, Эхо Пустоты
Кампания: Империя Единорога

Существа NCF
Орден Порядка: 1
Нейтралы: 1 2 3 4
Карты для Героев Меча и Магии 5
Одиночные: Завеса срывается, Посол, Последний рывок, Эхо Пустоты
Кампания: Империя Единорога

Существа NCF
Орден Порядка: 1
Нейтралы: 1 2 3 4
RedHeavenHero вне форума
Ответить с цитированием
Ответ
Страница 228 из 237


Опции темы



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


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

Яндекс цитирование    Top.Mail.Ru