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

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

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

Îòâåò
Ñòðàíèöà 264 èç 264
 
Îïöèè òåìû
#3946
Ñòàðûé 14.10.2024, 23:37
  #3946
^
CetusSantis
📖
Ðåãèñòðàöèÿ: 13.10.2024
Ñîîáùåíèÿ: 5
Ðåãèñòðàöèÿ: 13.10.2024
Ñîîáùåíèÿ: 5
Ïî óìîë÷àíèþ
Re: Ñêðèïòû

При нажатии на check в редакторе пишет, что "Function FightUnitExp not definied, line 1". Но раз в ванилле работает, то видимо просто забью.
CetusSantis âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#3947
Ñòàðûé 14.10.2024, 23:42
  #3947
^
Äîëãèé
 
Àâàòàð äëÿ Äîëãèé
📖
Ðåãèñòðàöèÿ: 23.04.2019
Ñîîáùåíèÿ: 103
Ðåãèñòðàöèÿ: 23.04.2019
Ñîîáùåíèÿ: 103
Ïî óìîë÷àíèþ
Re: Ñêðèïòû

Скопируйте и вставьте прям вот так в главный скрипт карты (не скрипт юнита, не боевой скрипт):

function FightUnitExp(hero, unit)
 while IsObjectExists(hero) == not nil and IsObjectExists(unit) == not nil do
  sleep(5)
 end 
 if IsObjectExists(unit) == nil then
  ChangeHeroStat(hero, 0, 999999999)
 end
end
Trigger(OBJECT_TOUCH_TRIGGER, "UnitExp", "FightUnitExp")

и проверьте в игре
Äîëãèé âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#3948
Ñòàðûé 15.10.2024, 22:18
  #3948
^
CetusSantis
📖
Ðåãèñòðàöèÿ: 13.10.2024
Ñîîáùåíèÿ: 5
Ðåãèñòðàöèÿ: 13.10.2024
Ñîîáùåíèÿ: 5
Ïî óìîë÷àíèþ
Re: Ñêðèïòû

Все получилось! И с модом тоже работает! Огромное спасибо!

Добавлено через 22 часа 28 минут
Один момент, а если я хочу таких юнитов несколько поставить на карту? То им всем нужны свои имена и своя функция? Я пробовал просто поставить ещё одного юнита с таким же именем, но скрипт срабатывает лишь при убийстве первого.
CetusSantis âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#3949
Ñòàðûé 15.10.2024, 23:56
  #3949
^
Äîëãèé
 
Àâàòàð äëÿ Äîëãèé
📖
Ðåãèñòðàöèÿ: 23.04.2019
Ñîîáùåíèÿ: 103
Ðåãèñòðàöèÿ: 23.04.2019
Ñîîáùåíèÿ: 103
Ïî óìîë÷àíèþ
Re: Ñêðèïòû

CetusSantisВсе получилось! И с модом тоже работает! Огромное спасибо!

Добавлено через 22 часа 28 минут
Один момент, а если я хочу таких юнитов несколько поставить на карту? То им всем нужны свои имена и своя функция? Я пробовал просто поставить ещё одного юнита с таким же именем, но скрипт срабатывает лишь при убийстве первого.

параметр Name должен быть уникальным для каждого объекта. 

Если функционал после победы всегда одинаков (дать герою 999999999 опыта), то достаточно пронумеровать name всех юнитов (UnitExp1, UnitExp2, UnitExp3 и т. д.) и линию с триггером Trigger(OBJECT_TOUCH_TRIGGER, "UnitExp", "FightUnitExp") посадить в цикл for

for i = 1,5 do --5 для 5 объектов
 Trigger(OBJECT_TOUCH_TRIGGER, "UnitExp"..i , "FightUnitExp")
end

теперь на каждом объекте с именем UnitExp от 1 до 5 будет триггер при дотрагивании, запускающий функцию  FightUnitExp
Äîëãèé âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#3950
Ñòàðûé 04.12.2024, 02:43
  #3950
^
Dogenator
📖
Ðåãèñòðàöèÿ: 06.06.2024
Ñîîáùåíèÿ: 25
Ðåãèñòðàöèÿ: 06.06.2024
Ñîîáùåíèÿ: 25
Ïî óìîë÷àíèþ
Re: Ñêðèïòû

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

Вложение 73917

И возможно сделать такой скрипт, который бы автоматически пропускал ход в первый день у игрока 2? Не нашел ничего подобного в мануалах, поэтому пошел путем изменения числа MP игрока 2

Подскажите, пожалуйста

Ìèíèàòþðû
Íàæìèòå íà èçîáðàæåíèå äëÿ óâåëè÷åíèÿ
Íàçâàíèå:  2024-12-04_01-38-39.png
Ïðîñìîòðîâ: 11
Ðàçìåð:	58.6 Êáàéò
ID:	73917  
Dogenator âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#3951
Ñòàðûé 04.12.2024, 10:03
  #3951
^
}{0TT@6bI4
 
Àâàòàð äëÿ }{0TT@6bI4
📖
Ðåãèñòðàöèÿ: 05.09.2019
Àäðåñ: Ñåðåáðÿíûå Ãîðîäà, Àëü-Ñàôèð
Ñîîáùåíèÿ: 1996
Âûñòàâêà íàãðàä
Ðåãèñòðàöèÿ: 05.09.2019
Àäðåñ: Ñåðåáðÿíûå Ãîðîäà, Àëü-Ñàôèð
Ñîîáùåíèÿ: 1996
Âûñòàâêà íàãðàä
Ïî óìîë÷àíèþ
Re: Ñêðèïòû

Dogenator

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

Вложение 73917

И возможно сделать такой скрипт, который бы автоматически пропускал ход в первый день у игрока 2? Не нашел ничего подобного в мануалах, поэтому пошел путем изменения числа MP игрока 2

Подскажите, пожалуйста

Так, собственно, какую ошибку выдаёт? Или ошибок нет? Добавьте отладочную печать в ф-ию нового дня, посмотрите, что выводят GetTownRace(...). Также просьба не по скрипту — прикреплять код не в виде скриншота, а в виде текста, оформленного блоком кода:
function MyFunc(var)
  -- Немного lua-кода
  print("Hello, ", var);
end

Можно из скрипта включить читы и скипнуть ход:

consoleCmd("enable_cheats")
consoleCmd("eot")

Более простой способ — отобрать очки передвижения у героя:

ChangeHeroStat("Герой", HERO_STAT_MOVE_POINTS, -GetHeroStat("герой", HERO_STAT_MOVE_POINTS)
__________________
Ñ óâàæåíèåì, }{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 âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#3952
Ñòàðûé 04.12.2024, 18:31
  #3952
^
Dogenator
📖
Ðåãèñòðàöèÿ: 06.06.2024
Ñîîáùåíèÿ: 25
Ðåãèñòðàöèÿ: 06.06.2024
Ñîîáùåíèÿ: 25
Ïî óìîë÷àíèþ
Re: Ñêðèïòû

Еще не до конца разобрался со всеми возможностями форума и как вставлять сюда части кода... Прошу простить

Ошибок в синтаксисе нет, но тем не менее, не работает. 

Сделал так, как вы сказали, а именно добавил отладочную печать, но в консоли ничего не выходит.

Насчет способа с читами и пропуском хода, читы вроде бы не работают в сетевой игре(А карта именно для сетевой), поэтому этот вариант не подходит
Подставил отладочную печать в функцию первого дня:

function first_day ()
 if GetDate (0) == 1 then         -----Проверка дня недели (понедельник)
  startThread (day_1);
  print("hello,");
 elseif GetDate (0) == 3 then     -----Проверка дня недели (среда)
  startThread (day_3rd);
 end;
end;

Весь скрипт:

function first_day ()
 if GetDate (0) == 1 then         -----Проверка дня недели (понедельник)
  startThread (day_1);
  print("hello,");
 elseif GetDate (0) == 3 then     -----Проверка дня недели (среда)
  startThread (day_3rd);
 end;
end;

function day_1 ()
ChangeHeroStat ('Brem', 7, -999999999);      -----Убираем мувы у игрока 2
end;

function day_3rd ()
if GetTownRace ('player_1') == 1 then     -----Проверка фракции города игрока 1
  sleep(5);
  startThread (zaclyatye_1);
 end;
 if GetTownRace ('player_2') == 1 then    -----Проверка фракции города игрока 2
  sleep(5);
  startThread (zaclyatye_2);
 end;
end;


function zaclyatye_1 ()
  if GetTownRace ('player_2') == 0 then SetObjectPosition('zaclyatye_humy_1', 125, 15);
  elseif GetTownRace ('player_2') == 1 then SetObjectPos('zaclyatye_elfy_1_1', 125, 15);
  elseif GetTownRace ('player_2') == 2 then SetObjectPos('zaclyatye_magi_1', 125, 15);
  elseif GetTownRace ('player_2') == 3 then SetObjectPos('zaclyatye_liga_1', 125, 15);
  elseif GetTownRace ('player_2') == 4 then SetObjectPos('zaclyatye_nekry_1', 125, 15);
  elseif GetTownRace ('player_2') == 5 then SetObjectPos('zaclyatye_demony_1', 125, 15);
  elseif GetTownRace ('player_2') == 6 then SetObjectPos('zaclyatye_gnomy_1', 125, 15);
  elseif GetTownRace ('player_2') == 7 then SetObjectPos('zaclyatye_orki_1', 125, 15);
  end;
 end;


function zaclyatye_2 ()
  if GetTownRace ('player_1') == 0 then SetObjectPosition('zaclyatye_humy_1', 8, 122);
  elseif GetTownRace ('player_1') == 1 then SetObjectPos('zaclyatye_elfy_1_2', 8, 122);
  elseif GetTownRace ('player_1') == 2 then SetObjectPos('zaclyatye_magi_1', 8, 122);
  elseif GetTownRace ('player_1') == 3 then SetObjectPos('zaclyatye_liga_1', 8, 122);
  elseif GetTownRace ('player_1') == 4 then SetObjectPos('zaclyatye_nekry_1', 8, 122);
  elseif GetTownRace ('player_1') == 5 then SetObjectPos('zaclyatye_demony_1', 8, 122);
  elseif GetTownRace ('player_1') == 6 then SetObjectPos('zaclyatye_gnomy_1', 8, 122);
  elseif GetTownRace ('player_1') == 7 then SetObjectPos('zaclyatye_orki_1', 8, 122);
  end;
 end;

Trigger(NEW_DAY_TRIGGER, 'first_day' );

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

function Spawn_army()
....
....
....
Trigger(NEW_DAY_TRIGGER, 'Spawn_army' );

Каким образом можно запустить 2 скрипта так, чтобы они начинались в один день? На примере, в среду - спавн армии в караванах и перенос пака существ на координаты игрока(Эльфу для выставления заклятых)

Dogenator âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#3953
Ñòàðûé 05.12.2024, 06:07
  #3953
^
Jack_of_shadows
 
Àâàòàð äëÿ Jack_of_shadows
📖
Ðåãèñòðàöèÿ: 08.09.2013
Ñîîáùåíèÿ: 531
Âûñòàâêà íàãðàä
Ðåãèñòðàöèÿ: 08.09.2013
Ñîîáùåíèÿ: 531
Âûñòàâêà íàãðàä
Ïî óìîë÷àíèþ
Re: Ñêðèïòû

Dogenator, на оба вопроса я отвечал в своём ЧаВо.
1. Скрипт начинает выполнение в начале первого дня и поэтому триггер NEW_DAY_TRIGGER не сработает для первого хода, он в этот момент ещё не установлен. Можно просто добавить в конце всего скрипта вызов функции вручную first_day().
2. Когда проверяется день недели, можно же вызвать не одну функцию, а несколько:
function first_day ()
 if GetDate (0) == 3 then     -----Проверка дня недели (среда)
  function_1();
  function_2();
 end;
end;

3. И бонусом: то, что вы вызываете все функции в новом потоке через startThread(day_1) конечно в данном случае работать будет, но если вы не уверены зачем именно вы это делаете, а просто где-то подсмотрели, то это потенциально источник багов, например если будет код наподобие:
startThread(function_1) -- какой-то код
startThread(function_2) -- другой код, который предполагает что код из function_1 уже выполнен

то оно работать не будет (или ещё хуже, будет работать не всегда), так как эти две функции фактически запускаются параллельно и нельзя определённо сказать какая из них будет выполнена первой. Можно просто делать так:
function_1();
function_2();
__________________
ÐÏÃ-ñöåíàðèé äëÿ HoMM5: Ïóòü ãåðîÿ

×àÂî ïî ñîçäàíèþ êàðò äëÿ HoMM5: ×àÂî
ÐÏÃ-ñöåíàðèé äëÿ HoMM5: Ïóòü ãåðîÿ

×àÂî ïî ñîçäàíèþ êàðò äëÿ HoMM5: ×àÂî
Jack_of_shadows âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#3954
Ñòàðûé 05.12.2024, 19:40
  #3954
^
Dogenator
📖
Ðåãèñòðàöèÿ: 06.06.2024
Ñîîáùåíèÿ: 25
Ðåãèñòðàöèÿ: 06.06.2024
Ñîîáùåíèÿ: 25
Ïî óìîë÷àíèþ
Re: Ñêðèïòû

Jack, спасибо вам за ответ. Прочитал ваш документ, много полезной информации.

Касаемо пункта 2, я не совсем понял, что вы подразумеваете под «function_1” и “function_2”… Название самих функций? Или это функции, подобные function first_day , но для проверки других дней?

Насчет пункта 3, часть кода я взял из другой карты , где все работает в том виде, в каком я изначально пытался его копировать в свою карту. Но у меня это не работает.

И насчет последнего пункта, не совсем понял, что вы имеете ввиду.

Я уже попробовал сделать вызов функции через триггер прикосновения к объекту, но это тоже не дало результата.

Уже не знаю что и делать, в теории вроде бы понятно, а на деле как «обезьяна с гранатой»
Dogenator âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#3955
Ñòàðûé 06.12.2024, 07:02
  #3955
^
Jack_of_shadows
 
Àâàòàð äëÿ Jack_of_shadows
📖
Ðåãèñòðàöèÿ: 08.09.2013
Ñîîáùåíèÿ: 531
Âûñòàâêà íàãðàä
Ðåãèñòðàöèÿ: 08.09.2013
Ñîîáùåíèÿ: 531
Âûñòàâêà íàãðàä
Ïî óìîë÷àíèþ
Re: Ñêðèïòû

DogenatorКасаемо пункта 2, я не совсем понял, что вы подразумеваете под «function_1” и “function_2”… Название самих функций? Или это функции, подобные function first_day , но для проверки других дней?
Названия функций, просто для примера. Скажем, возникло у вас желание сделать два события для одного триггера:
function first_day ()
  ...
end;
Trigger(NEW_DAY_TRIGGER, 'first_day' );

function Spawn_army()
  ....
end;
Trigger(NEW_DAY_TRIGGER, 'Spawn_army' );

Второй триггер перезапишет первый, работать не будет. Аналог этой конструкции:

function NewDayTrigger()
  first_day();
  Spawn_army();
end
Trigger(NEW_DAY_TRIGGER, 'NewDayTrigger' );

То есть чтобы исполнить функцию не надо обязательно Trigger'ы, startThread'ы и прочее, просто пишешь название функции и скобочки. В любом месте, в любых количествах. Ваши функции ничем не отличаются от встроенных функций, типа того же print().

Если что-то не работает, надо последовательно дебажить. Наверное, случай, с которым сталкивались все - нафигачил кода, допустил в нём ошибку в синтаксисе, ну там название функции вместо print() написал pint(), почти и не заметно. Движок игры просто выполняет скрипт карты строчка за строчкой - дошёл до неправильного названия функции, не понял что это такое, вылетел. Всё, скрипт больше не выполняется. Вы не поняли в чём дело, начали другой код какой-нибудь пробовать писать, а он тоже не работает. Можно сломать мозг думая что вы делаете не так, а на самом деле выполнение скрипта до вашего нового кода ни разу даже не доходило, крашилось раньше. Поэтому и очень важно ставить везде print'ы, чтобы понимать какой участок кода выполнился, какой нет. Я вам гарантирую, что если скопировать из ЧаВо конкретный кусок кода и вставить в карту (и не ошибиться в названиях объектов и файлов), то точно будет работать.

 

__________________
ÐÏÃ-ñöåíàðèé äëÿ HoMM5: Ïóòü ãåðîÿ

×àÂî ïî ñîçäàíèþ êàðò äëÿ HoMM5: ×àÂî
ÐÏÃ-ñöåíàðèé äëÿ HoMM5: Ïóòü ãåðîÿ

×àÂî ïî ñîçäàíèþ êàðò äëÿ HoMM5: ×àÂî
Jack_of_shadows âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#3956
Ñòàðûé 06.12.2024, 16:00
  #3956
^
Dogenator
📖
Ðåãèñòðàöèÿ: 06.06.2024
Ñîîáùåíèÿ: 25
Ðåãèñòðàöèÿ: 06.06.2024
Ñîîáùåíèÿ: 25
Ïî óìîë÷àíèþ
Re: Ñêðèïòû

Сделал так, как вы сказали и вот что получилось:
Сделав отладочную печать, выяснилось, что часть этого кода просто не работает само по себе, хотя ошибок никаких нет. 
Нажмите на изображение для увеличения
Название: 2024-12-06_14-45-50.png
Просмотров: 4
Размер:	406.5 Кбайт
ID:	73946

На скрине видно, что function day_3rd обрывается с момента:
if GetTownRace ('player_1') == 1 then
  sleep(5);
zaclyatye_1 ()
end;
 if GetTownRace ('player_2') == 1 then
  sleep(5);
zaclyatye_2 ()
 end;
end;

То есть, эта часть почему то не работает в моем коде. В чем может быть причина? И для чего используется функция sleep в данном скрипте?

И да, я сделал как вы сказали, а именно:

function new_day_trigger()
Spawn_army()
day_3rd()
end

Trigger(NEW_DAY_TRIGGER, 'new_day_trigger' );

Это сработало для меня, осталось решить проблему с function day_3rd. Может у вас есть какие то идеи?

Dogenator âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#3957
Ñòàðûé 06.12.2024, 17:16
  #3957
^
Jack_of_shadows
 
Àâàòàð äëÿ Jack_of_shadows
📖
Ðåãèñòðàöèÿ: 08.09.2013
Ñîîáùåíèÿ: 531
Âûñòàâêà íàãðàä
Ðåãèñòðàöèÿ: 08.09.2013
Ñîîáùåíèÿ: 531
Âûñòàâêà íàãðàä
Ïî óìîë÷àíèþ
Re: Ñêðèïòû

Dogenator, очевидно, нужно проверить корректность функции GetTownRace:
1. Имя городов точно 'player_1' и 'player_2'?
2. Раса которая вам нужна точно имеет идентификатор 1? А что именно возвращает данная функция? По документации вроде как RaceID, где 1 это RACE_RANDOM_TYPE, но сам я не использовал её, точно не уверен. Вообще юзать числа вместо понятных идентификаторов это путь к отладочному аду. Можно написать в консоли print(GetTownRace ('player_1')) и посмотреть что она реально вернула.

sleep() в данном скрипте используется без надобности. Два основных случая его применения, это:
1. Почти все функции работающие с объектами карты (с монстрами, строениями, героями и т.д.) исполняются условно говоря не мгновенно. Например вы хотите повесить обработчик касания на вражеского героя. Для этого надо обязательно выключить стандартный обработчик и только потом повесить свой, таковы правила игры. Но если написать:
SetObjectEnabled(hero, nil); -- выключение стандартного триггера касания героя
Trigger(HERO_TOUCH_TRIGGER, hero, func); -- установка своего триггера касания

То работать не будет, так как SetObjectEnabled(hero, nil); выполняется не мгновенно и не успеет выполниться до триггера (это упрощённое объяснение, причины конечно чуть другие). Так вот, в таких случаях всегда надо использовать sleep():
SetObjectEnabled(hero, nil); -- выключение стандартного триггера касания героя
sleep(1); -- минимальная задержка, обычно 1 хватает
Trigger(HERO_TOUCH_TRIGGER, hero, func); -- установка своего триггера касания

2. И конечно когда делаются всякие анимации, эффекты, всплывающие сообщения на карте, с помощью sleep() выставляются для них задержки.
__________________
ÐÏÃ-ñöåíàðèé äëÿ HoMM5: Ïóòü ãåðîÿ

×àÂî ïî ñîçäàíèþ êàðò äëÿ HoMM5: ×àÂî
ÐÏÃ-ñöåíàðèé äëÿ HoMM5: Ïóòü ãåðîÿ

×àÂî ïî ñîçäàíèþ êàðò äëÿ HoMM5: ×àÂî
Jack_of_shadows âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#3958
Ñòàðûé 06.12.2024, 18:23
  #3958
^
Dogenator
📖
Ðåãèñòðàöèÿ: 06.06.2024
Ñîîáùåíèÿ: 25
Ðåãèñòðàöèÿ: 06.06.2024
Ñîîáùåíèÿ: 25
Ïî óìîë÷àíèþ
Re: Ñêðèïòû

Действительно, я перепроверил в редакторе карт названия городов и оказалось, что они называются не 'player_1' , а 'castle1'. Из за этого все не работало. Хотя я изначально думал, что эта функция зависит от принадлежности игрока к замку (PlayerID)
По итогу я вписал названия в замки, и, о чудо, существа появляются на следующий день, скрипт заработал как нужно.

Спасибо большое вам за помощь и полезную информацию, вы действительно мне помогли😅
Dogenator âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#3959
Ñòàðûé 06.12.2024, 19:37
  #3959
^
Jack_of_shadows
 
Àâàòàð äëÿ Jack_of_shadows
📖
Ðåãèñòðàöèÿ: 08.09.2013
Ñîîáùåíèÿ: 531
Âûñòàâêà íàãðàä
Ðåãèñòðàöèÿ: 08.09.2013
Ñîîáùåíèÿ: 531
Âûñòàâêà íàãðàä
Ïî óìîë÷àíèþ
Re: Ñêðèïòû

Если что, 'player_1' это строка, PLAYER_1 это числовая переменная, и есть чувствительность к регистру, то есть PLAYER_1 не равнозначен player_1 и они оба не равнозначны 'player_1'.
__________________
ÐÏÃ-ñöåíàðèé äëÿ HoMM5: Ïóòü ãåðîÿ

×àÂî ïî ñîçäàíèþ êàðò äëÿ HoMM5: ×àÂî
ÐÏÃ-ñöåíàðèé äëÿ HoMM5: Ïóòü ãåðîÿ

×àÂî ïî ñîçäàíèþ êàðò äëÿ HoMM5: ×àÂî
Jack_of_shadows âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
Îòâåò
Ñòðàíèöà 264 èç 264


Îïöèè òåìû



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


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

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