Сейчас 18:53:34 Пятница, 29 марта, 2024 год
[ x ] Главная ⇒ Форум ⇐ RSS Файлы Cтатьи Картинки В о й т и   или   з а р е г и с т р и р о в а т ь с я


[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Модератор форума: PUVer, SirNikolas, Ty3uK  
Форум о Warcraft 3 » Раздел для картостроителей » Вопросы по картостроению » Syntax error, unexpected: "index"? (Скопировал с карты-наработки код, но выдает 1 ошибку.)
Syntax error, unexpected: "index"?
disturbed74Дата: Пятница, 02 Мая 2014, 16:08:36 | Сообщение # 1
1 уровень
Группа: Пользователи
Сообщений: 7
Награды: 0
Репутация: 0
Блокировки:
Вот собственно сам код в котором в строчке integer index выдает ошибку.
function Trig_Dead_Dummy_2_Conditions takes nothing returns boolean
return IsUnitDeadBJ(GetTriggerUnit()) == IsUnitIdType('h00B', UNIT_TYPE_FLYING)
return IsUnitDeadBJ(GetTriggerUnit()) == IsUnitIdType('h00C', UNIT_TYPE_FLYING)
return IsUnitDeadBJ(GetTriggerUnit()) == IsUnitIdType('h00D', UNIT_TYPE_FLYING)
return IsUnitDeadBJ(GetTriggerUnit()) == IsUnitIdType('h00E', UNIT_TYPE_FLYING)
return IsUnitDeadBJ(GetTriggerUnit()) == IsUnitIdType('h00F', UNIT_TYPE_FLYING)
return IsUnitDeadBJ(GetTriggerUnit()) == IsUnitIdType('h00G', UNIT_TYPE_FLYING)
return IsUnitDeadBJ(GetTriggerUnit()) == IsUnitIdType('h00H', UNIT_TYPE_FLYING)
return IsUnitDeadBJ(GetTriggerUnit()) == IsUnitIdType('h00I', UNIT_TYPE_FLYING)
return IsUnitDeadBJ(GetTriggerUnit()) == IsUnitIdType('h00J', UNIT_TYPE_FLYING)
return IsUnitDeadBJ(GetTriggerUnit()) == IsUnitIdType('h00K', UNIT_TYPE_FLYING)
return IsUnitDeadBJ(GetTriggerUnit()) == IsUnitIdType('h00L', UNIT_TYPE_FLYING)
return IsUnitDeadBJ(GetTriggerUnit()) == IsUnitIdType('h00M', UNIT_TYPE_FLYING)
return IsUnitDeadBJ(GetTriggerUnit()) == IsUnitIdType('h00N', UNIT_TYPE_FLYING)
return IsUnitDeadBJ(GetTriggerUnit()) == IsUnitIdType('h00O', UNIT_TYPE_FLYING)
return IsUnitDeadBJ(GetTriggerUnit()) == IsUnitIdType('h00P', UNIT_TYPE_FLYING)
return IsUnitDeadBJ(GetTriggerUnit()) == IsUnitIdType('h00Q', UNIT_TYPE_FLYING)
return IsUnitDeadBJ(GetTriggerUnit()) == IsUnitIdType('h00R', UNIT_TYPE_FLYING)
return IsUnitDeadBJ(GetTriggerUnit()) == IsUnitIdType('h00S', UNIT_TYPE_FLYING)
endfunction

function Trig_Dead_Dummy_2_Actions takes nothing returns nothing
call RemoveUnit( GetTriggerUnit() )
endfunction

//===========================================================================
function InitTrig_Dead_Dummy_2 takes nothing returns nothing
set gg_trg_Dead_Dummy_2 = CreateTrigger( )
integer index
set index = 0
loop
TriggerRegisterPlayerUnitEvent(gg_trg_Dead_Dummy_2, Player(index), EVENT_PLAYER_UNIT_DEATH, null)
set index = index + 1
exitwhen index == bj_MAX_PLAYER_SLOTS
endloop
TriggerAddCondition( gg_trg_Dead_Dummy_2, Condition( function Trig_Dead_Dummy_2_Conditions ) )
TriggerAddAction( gg_trg_Dead_Dummy_2, function Trig_Dead_Dummy_2_Actions )
endfunction
 

GodOfDeadДата: Пятница, 02 Мая 2014, 16:35:44 | Сообщение # 2
7 уровень
Группа: Проверенные
Сообщений: 302
Награды: 0
Репутация: 115
Блокировки:
Копировал через JNGP?

Если ты не знаешь кто это ---> , то ты оочень многое упустил в своей жизни...
 

disturbed74Дата: Пятница, 02 Мая 2014, 16:42:03 | Сообщение # 3
1 уровень
Группа: Пользователи
Сообщений: 7
Награды: 0
Репутация: 0
Блокировки:
GodOfDead, Я не знаю что это такое, редактор кстати UMS World Editor

Добавлено (02 Мая 2014, 16:42:03)
---------------------------------------------
GodOfDead, А точно! Нью джасс ген пак, да да да через это. Аббревиатуру не запомнил)

 

BiboДата: Пятница, 02 Мая 2014, 16:49:13 | Сообщение # 4
Группа: Проверенные
Сообщений: 741
Награды: 0
Блокировки:
Объявление локальных переменных должно происходить до каких-либо действий внутри функции.
И начинаться словом local
local integer index
set gg_trg_Dead_Dummy_2 = CreateTrigger( )


Сообщение отредактировал Bibo - Пятница, 02 Мая 2014, 16:50:06
 

disturbed74Дата: Пятница, 02 Мая 2014, 16:52:02 | Сообщение # 5
1 уровень
Группа: Пользователи
Сообщений: 7
Награды: 0
Репутация: 0
Блокировки:
Bibo, Спасибо - появилась еще ошибка syntax error, unexpected : "t"?
 

BiboДата: Пятница, 02 Мая 2014, 16:55:55 | Сообщение # 6
Группа: Проверенные
Сообщений: 741
Награды: 0
Блокировки:
перед вызовом функции необходимо указывать слово call
call TriggerRegisterPlayerUnitEvent(gg_trg_Dead_Dummy_2, Player(index), EVENT_PLAYER_UNIT_DEATH, null)
call TriggerAddCondition( gg_trg_Dead_Dummy_2, Condition( function Trig_Dead_Dummy_2_Conditions ) )
call TriggerAddAction( gg_trg_Dead_Dummy_2, function Trig_Dead_Dummy_2_Actions )
 

disturbed74Дата: Пятница, 02 Мая 2014, 16:59:42 | Сообщение # 7
1 уровень
Группа: Пользователи
Сообщений: 7
Награды: 0
Репутация: 0
Блокировки:
Bibo, проблема после этого не исчезла(

Добавлено (02 Мая 2014, 16:59:42)
---------------------------------------------
Bibo, Но спасибо за информацию!

 

abidinДата: Пятница, 02 Мая 2014, 17:01:48 | Сообщение # 8
7 уровень
Группа: Проверенные
Сообщений: 330
Награды: 0
Репутация: 305
Блокировки:
Bibo,
Код
Как известно, скриптовый язык JASS2 был создан Blizzard Entertainment для использования в Warcraft III. Синтаксически он больше всего напоминает Turing, поэтому не отличается лаконичностью. Для вызова функций используется ключевое слово call, для присвоения значения переменным — set, для объявления локальных переменных — local. Также необходимо выделять глобальные переменные в отдельный блок:

   globals
       integer f = 12
   endglobals
    
   function test takes nothing returns nothing
       local integer i
       call DoNothing()
       set i = f + 3
   endfunction
При использовании cJass парсер самостоятельно определяет смысл выражения исходя из контекста его применения, что позволяет опускать указаные выше ключевые слова и добиваться большего удобства при записи кода:
  integer f = 12
    
   function test takes nothing returns nothing
       integer i
       DoNothing()
       i = f + 3
   endfunction

источник:http://cjass.xgm.guru/manual-ru#htoc1
 

BiboДата: Пятница, 02 Мая 2014, 17:04:52 | Сообщение # 9
Группа: Проверенные
Сообщений: 741
Награды: 0
Блокировки:
abidin, мы говорим не о сJass и у меня нет информации о правильной настойки JNGP у товарища выше.

Добавлено (02 Мая 2014, 17:04:52)
---------------------------------------------

Цитата disturbed74 ()
Bibo, проблема после этого не исчезла(

Больше информации.
 

disturbed74Дата: Пятница, 02 Мая 2014, 17:13:34 | Сообщение # 10
1 уровень
Группа: Пользователи
Сообщений: 7
Награды: 0
Репутация: 0
Блокировки:
Bibo, насчет настройки jngp?

Добавлено (02 Мая 2014, 17:11:24)
---------------------------------------------
Bibo, Во я немного покапался в настройках что то выключил или наоборот, и карта стала открываться, ща посмотрю робят ли скиллы

Добавлено (02 Мая 2014, 17:13:34)
---------------------------------------------
Bibo, Блин не понимаю, сейчас перестает открываться, что за бред

 

abidinДата: Пятница, 02 Мая 2014, 17:16:04 | Сообщение # 11
7 уровень
Группа: Проверенные
Сообщений: 330
Награды: 0
Репутация: 305
Блокировки:
disturbed74,
Кинь скрин кода в модулях триггеров а не то что ты копируешь при ошибке.
А в галочках ты наверное выключил проверку на ошибки или jasshelper
 

disturbed74Дата: Пятница, 02 Мая 2014, 17:19:50 | Сообщение # 12
1 уровень
Группа: Пользователи
Сообщений: 7
Награды: 0
Репутация: 0
Блокировки:
abidin, Я включал джасс хелпер,но без него карта просто блочилась, а щас через раз грузится
Как кидать скрин на этом сайте?
 

abidinДата: Пятница, 02 Мая 2014, 17:27:31 | Сообщение # 13
7 уровень
Группа: Проверенные
Сообщений: 330
Награды: 0
Репутация: 305
Блокировки:
Кнопака PrintScreen или ctrl+PrintScreen => ctrv+v в пеинте => Сохранить как file.jpg => Заходишь на сайт http://radikal.ru/ и кидаешь туда скрин => дальше копируешь код картинки и кидаешь его сюда в виде
Код
Сюда код картинки
.Т.к ты ещё не проверенный то для тебя недопустимы коды [url] и [img]
 

disturbed74Дата: Пятница, 02 Мая 2014, 17:42:35 | Сообщение # 14
1 уровень
Группа: Пользователи
Сообщений: 7
Награды: 0
Репутация: 0
Блокировки:
Bibo, Все работает,я кайфую, спасибо огромное, если через джасс хелпер пересохранять, все робит, если потом пересохранять без него - возникают ошибки, ну ладно...
 

BiboДата: Пятница, 02 Мая 2014, 18:12:44 | Сообщение # 15
Группа: Проверенные
Сообщений: 741
Награды: 0
Блокировки:
Цитата disturbed74 ()
если через джасс хелпер пересохранять, все робит, если потом пересохранять без него - возникают ошибки

Значит что-то было написано выходящее за рамки обычного Jass2.
 

abidinДата: Пятница, 02 Мая 2014, 18:43:38 | Сообщение # 16
7 уровень
Группа: Проверенные
Сообщений: 330
Награды: 0
Репутация: 305
Блокировки:
Bibo,
ну по коду можн сказать лишь то, что либо он на писан на cjass либо сильно изменен после преобразования gui=>jass.
Т.к есть такое ощущение что он создал гуишный цикл ,преобразовал его в jass а потом засунул в код другого триггера не отделив локальную переменную от кода
 

BiboДата: Пятница, 02 Мая 2014, 18:54:34 | Сообщение # 17
Группа: Проверенные
Сообщений: 741
Награды: 0
Блокировки:
Цитата disturbed74 ()
function Trig_Dead_Dummy_2_Conditions takes nothing returns boolean
return IsUnitDeadBJ(GetTriggerUnit()) == IsUnitIdType('h00B', UNIT_TYPE_FLYING)
return IsUnitDeadBJ(GetTriggerUnit()) == IsUnitIdType('h00C', UNIT_TYPE_FLYING)
return IsUnitDeadBJ(GetTriggerUnit()) == IsUnitIdType('h00D', UNIT_TYPE_FLYING)
return IsUnitDeadBJ(GetTriggerUnit()) == IsUnitIdType('h00E', UNIT_TYPE_FLYING)
return IsUnitDeadBJ(GetTriggerUnit()) == IsUnitIdType('h00F', UNIT_TYPE_FLYING)
return IsUnitDeadBJ(GetTriggerUnit()) == IsUnitIdType('h00G', UNIT_TYPE_FLYING)
return IsUnitDeadBJ(GetTriggerUnit()) == IsUnitIdType('h00H', UNIT_TYPE_FLYING)
return IsUnitDeadBJ(GetTriggerUnit()) == IsUnitIdType('h00I', UNIT_TYPE_FLYING)
return IsUnitDeadBJ(GetTriggerUnit()) == IsUnitIdType('h00J', UNIT_TYPE_FLYING)
return IsUnitDeadBJ(GetTriggerUnit()) == IsUnitIdType('h00K', UNIT_TYPE_FLYING)
return IsUnitDeadBJ(GetTriggerUnit()) == IsUnitIdType('h00L', UNIT_TYPE_FLYING)
return IsUnitDeadBJ(GetTriggerUnit()) == IsUnitIdType('h00M', UNIT_TYPE_FLYING)
return IsUnitDeadBJ(GetTriggerUnit()) == IsUnitIdType('h00N', UNIT_TYPE_FLYING)
return IsUnitDeadBJ(GetTriggerUnit()) == IsUnitIdType('h00O', UNIT_TYPE_FLYING)
return IsUnitDeadBJ(GetTriggerUnit()) == IsUnitIdType('h00P', UNIT_TYPE_FLYING)
return IsUnitDeadBJ(GetTriggerUnit()) == IsUnitIdType('h00Q', UNIT_TYPE_FLYING)
return IsUnitDeadBJ(GetTriggerUnit()) == IsUnitIdType('h00R', UNIT_TYPE_FLYING)
return IsUnitDeadBJ(GetTriggerUnit()) == IsUnitIdType('h00S', UNIT_TYPE_FLYING)
endfunction

Следует сказать слово еще по поводу этого грандиозного куска. Здесь проверка закончится после первой же строчки, т.е. после проверки первого типа юнита с рав-кодом 'h00B' Да и сама запись вульгарная хоть и рабочая и бессмысленная.


Сообщение отредактировал Bibo - Пятница, 02 Мая 2014, 19:23:54
 

Форум о Warcraft 3 » Раздел для картостроителей » Вопросы по картостроению » Syntax error, unexpected: "index"? (Скопировал с карты-наработки код, но выдает 1 ошибку.)
  • Страница 1 из 1
  • 1
Поиск:

Copyright © 2006 - 2024 Warcraft3FT.info При копировании материалов c сайта ставьте, пожалуйста, активную обратную ссылку на нас • Design by gReeB04ki ©
Хостинг от uCoz