Четверг, 25.04.2024, 06:48
Качественные скрипты, моды и дополнения для GTA без регистрации
Главная Регистрация Вход
Приветствую Вас, Гость · RSS
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Форум » Игры серии ГТА » Скриптинг » Массивы
Массивы
Den_spbДата: Пятница, 31.08.2012, 00:17 | Сообщение # 1
Создатель сайта
Группа: Администраторы
Сообщений: 1595
Статус: Offline
Сообщения перенесены в отдельную тему.
 
VitalДата: Пятница, 31.08.2012, 00:17 | Сообщение # 2
Группа: Проверенные
Сообщений: 206
Статус: Offline
Как сделать массив из стринговых переменных? SB говорит, что это невозможно. Так ли это или есть какие-то нюансы и скрытые возможности?

SCRIPTER
 
Den_spbДата: Пятница, 31.08.2012, 00:17 | Сообщение # 3
Создатель сайта
Группа: Администраторы
Сообщений: 1595
Статус: Offline
В информации, отображаемой при возникновении ошибки, сказано, что в качестве переменной, являющейся началом массива, надо указать обычную локальную переменную. В качестве типа данных нужно выбрать s (string).
Пример:
Code
0@(30@,5s) = 'DUMMY'
 
VitalДата: Пятница, 31.08.2012, 00:17 | Сообщение # 4
Группа: Проверенные
Сообщений: 206
Статус: Offline
Den_spb, попробовал так, теперь другая проблема... Вот кусочек кода (объяв. массива):
Code
var
0@s : Array 10 of String
end
0@s[0] = 'TX1'
0@s[1] = 'TX2'
0@s[2] = 'TX3'
0@s[3] = 'TX4'
0@s[4] = 'TX5'
0@s[5] = 'TX6'
0@s[6] = 'TX7'
0@s[7] = 'TX8'
0@s[8] = 'TX9'
0@s[9] = 'TX10'


На это компилятор отвечает так:
"Неверный символ в идентификаторе @s."
Фух, кошмар...Вот из-за проблем с текстом я и невзлюбил массивы когда-то smile


SCRIPTER
 
Den_spbДата: Пятница, 31.08.2012, 00:17 | Сообщение # 5
Создатель сайта
Группа: Администраторы
Сообщений: 1595
Статус: Offline
Повторяю - в качестве переменной, являющейся началом массива, надо указать обычную локальную переменную (без s).
Индекс массива должен быть тоже переменной, а не числом. Исправленный вариант:
Code
var     
     0@ : Array 10 of String     
end
30@ = 0     
0@[30@] = 'TX1'
30@ += 1     
0@[30@] = 'TX2'
30@ += 1     
0@[30@] = 'TX3'
30@ += 1     
0@[30@] = 'TX4'
30@ += 1     
0@[30@] = 'TX5'
30@ += 1     
0@[30@] = 'TX6'
30@ += 1     
0@[30@] = 'TX7'
30@ += 1     
0@[30@] = 'TX8'
30@ += 1     
0@[30@] = 'TX9'
30@ += 1     
0@[30@] = 'TX10'
 
VitalДата: Пятница, 31.08.2012, 16:00 | Сообщение # 6
Группа: Проверенные
Сообщений: 206
Статус: Offline
Den_spb, огромное спасибо, всё работает, как и задумывалось. Я уж думал, придётся через таблицы переходов или просто проверки делать отображение случайного текста.

SCRIPTER
 
Форум » Игры серии ГТА » Скриптинг » Массивы
  • Страница 1 из 1
  • 1
Поиск: