You are not logged in.
Pages: 1
$TEMPVAR_FLOAT_1 а скажите что за Переменная?
ведь она не от чего не запрашиваться тоесть она в exe ну что за Переменная плис скажите?
Offline
Она тебе нужна? Измени в опкоде эту переменную на другую, если так хочешь. Если она нигде не запрашивается в эксе ее нет. Да и не создавай тем столько, запутаться можно. Задавай вопросы в одной теме.
Last edited by 444andrei444 (19-10-2011 04:25)
Offline
Не просто интересно чтоо за Переменная
Offline
Не просто интересно чтоо за Переменная
раздел 2 про переменные почитай
там не хватает только одного дополнения (перевод из статьи в СБ хелпе):
- Глобальные переменные. Они обозначаются символом $ (символ доллара, перед названием).
Их значения доступны из любого места кода.
- Локальные переменные. Они обозначаются символом @ ("собачка", после названия).
Их значения доступны только в конкретном потоке.
Каждый поток (внешние скрипты тоже являются потоками) имеет свой собственный набор локальных переменных (0@..33@ в SA, 0@..17@ в GTA3,VC).
Миссии в SA имеют расширенный набор. Миссии в SA используют локальные переменные в диапозоне 0@..1023@
Переменные в клео скрипте могут быть разных типов (их можно заранее объявлять с помощью VAR..END):
Integer, Int - целые значения
Float - дробные значения
String, ShortString - строка установленной длины (короткая строка - s$, @s)
LongString - строка с неизвестной длиной (длинная - v$, @v)
Last edited by Yoda (19-10-2011 08:55)
Try not. Do or do not, there is no try.
Offline
Хочу добавить ко всемк вышесказанному, чтобы не возникало проблем. Размер одной переменной 4 байта. А строковой(например 2@v) 16 байт, так вот при использовании строковой переменной затираются значения следующих 3 локальных переменных. То есть 1@v будет занимать переменные 1@ 2@ 3@ 4@, то есть можно использовать аж 5@ для других целей.
Offline
Я тоже добавлю ко всему вышесказанному, чтобы не возникало проблем. Имена переменных можно свободно изменять на свои. Переменные бывают как глобальные (значёк $ перед ними), так и локальными (со значком @ (чаще всего это цыферки)).
Offline
при использовании строковой переменной затираются значения следующих 3 локальных переменных
вот это меня всегда занимало... а если есть переменная 31@v что она затирает кроме таймеров?
Имена переменных можно свободно изменять на свои... бывают локальными (чаще всего это цыферки)...
вот этого точно не знал... "склероз это хорошо - о нём не помнишь и каждый день что-то новое..."
Last edited by Yoda (19-10-2011 12:07)
Try not. Do or do not, there is no try.
Offline
Предпологаю, что значения этой переменной вылезает за пределы данного скрипта, и записывает значение на другом участке памяти, что затрет значение переменной в другом скрипте
Offline
Предпологаю, что значения этой переменной вылезает за пределы данного скрипта, и записывает значение на другом участке памяти, что затрет значение переменной в другом скрипте
Да нет... чисто теоретически это затрет флаг активности потока, флаги миссии и внешнего скрипта плюс результаты проверок...
Try not. Do or do not, there is no try.
Offline
444andrei444 wrote:при использовании строковой переменной затираются значения следующих 3 локальных переменных
вот это меня всегда занимало... а если есть переменная 31@v что она затирает кроме таймеров?
Sw[ee]t wrote:Имена переменных можно свободно изменять на свои... бывают локальными (чаще всего это цыферки)...
вот этого точно не знал... "склероз это хорошо - о нём не помнишь и каждый день что-то новое..."
А я вроде знаю такое.
Лучше вместо стринговых переменных использовать обычные, но устанавливать им необходимый размер, с помощью опкодов клео4. Вплоть до 260 байт
Offline
Что за извращения? Тогда уж создавай буфер на 256 байт и используй его O.o
Offline
И чем буфер будет лучше? а установить размер намного проще.
Offline
Pages: 1