Вверх ↑
Ответов: 258
Рейтинг: -27
#1: 2015-12-28 17:12:52 ЛС | профиль | цитата

В общем это осталась единственная проблема, вот пакет с несколькими компонентами http://rghost.ru/private/8vcqYTSkN/d21c065b2c7dacb9a9a7c77f3d2c7df9 . Компонент который создает функцию не работает при вызове такого же компонента после его. (Получается функция в функции, а нужно что бы были две разные функции, и вызываемая функция должна быть выше той что вызывает )
Схема:

Add(MapInitialize,2953706,21,70)
{
link(onStart,5446059:doEvent,[])
}
Add(PrintTextToAllPlayers,9919158,462,70)
{
data_TextToPrint="Text1"
}
Add(PrintTextToAllPlayers,6480637,546,228)
{
data_TextToPrint="Text223"
link(data_TextToPrint,12214394:Var2,[(552,213)(468,213)])
}
Add(Hub,5446059,84,70)
{
link(onEvent1,9919158:doPrintToAll,[])
link(onEvent2,5840295:doCreate,[(144,83)(144,255)])
}
Add(StringVar,2880804,462,126)
{
data_TextToSave="NULLSTRINGXXX"
}
Add(CreateFunction,5840295,313,249)
{
data_FuncName="zxnnyysd"
link(onCreate,3159071:doEvent,[(358,255)(358,258)])
link(data_FuncName,12214394:Var1,[(319,194)])
}
Add(GetDataEx,12214394,462,189)
{
link(Data,2880804:var_GetSavedText,[])
}
Add(CreateFunction,7377658,572,395)
{
data_FuncName="avzxcv"
link(onCreate,7467959:doWork3,[(616,401)(616,317)(534,317)])
}
Add(HubEx,7467959,530,238)
{
Angle=3
link(onEvent,6480637:doPrintToAll,[(534,234)])
}
Add(Hub,3159071,371,252)
{
link(onEvent1,7467959:doWork2,[(458,258)(458,244)])
link(onEvent2,7377658:doCreate,[(479,265)(479,401)])
}
------------ Дoбавленo в 16.37:
Я так понял в кодогенераторе массив в который добавляется строка с помощью Add?

Нельзя как-то заменить на InsertAt( INT id ), добавить переменную с текущим ID, и добавить функции block.getcurid, block.setcurid, block.begin, block.end, block.begin которая установит ID в 0, block.end которая установит ID в count строк (Чтобы перейти в начало и конец текущего блока) ?

Жаль паскаль не знаю

Или какой там есть другой способ добавлять код в начала блока а не в конец?
карма: 0

0