Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > разработка игр, графический дизайн и моделирование > Gamedev - cоздание игр: Unity, OpenGL, DirectX
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 09.11.2011, 11:21   #11
Asker13
Форумчанин
 
Аватар для Asker13
 
Регистрация: 01.12.2010
Сообщений: 140
По умолчанию

Beermonza, в скрипт-коде, как и в любом другом коде, должны содержаться какие-либо переменные. Допустим в скрипт-коде я объявлю переменные так:
Код:
var
x: integer;
y: real;
s: string;
А как теперь непосредственно в программе объявить эти переменные и где их содержать? На ум приходит только использование variant, но товарищ выше гврит, что низя.
Объявил бы например такую структуру:
Код:
TMyVar = record
  UType: Variant;
  UName: string;
end;
...
var
  m: array of TMyVar;
Ну или как-то так.
Asker13 вне форума Ответить с цитированием
Старый 10.11.2011, 16:39   #12
Beermonza
Инженер ИС
Старожил
 
Аватар для Beermonza
 
Регистрация: 13.12.2006
Сообщений: 2,671
По умолчанию

Asker13, ты можешь легко задать в записи массива все типы, что могут понадобиться. Обработчик скрипта, наткнувшись на типы переменных укажет, какую из записей использовать.

Код:
TGameScript = packed record
  GSValueInt: Integer;
  GSValueReal: Real;
  GSValueBool: Boolean;
  GSValueStr: String;

  GSName: String; // имя переменной (лучше бы PChar)
  GSTypeIndex: Byte; // индекс типа переменной
end;
...
var
  m: array of TGameScript;
Обработчик скрипта будет знать в какую запись поместить значения переменной по указанному индексу в записи GSTypeIndex.
Руководитель проекта MMO 2D RPG: Настоящее имя Денис Стрижак (10.05.1981-6.02.2019) Мир духу его
Beermonza вне форума Ответить с цитированием
Старый 10.11.2011, 19:36   #13
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

Цитата:
ы можешь легко задать в записи массива все типы
а еще можно case-запись применить(в С++ известна как union)
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 10.11.2011, 20:56   #14
Asker13
Форумчанин
 
Аватар для Asker13
 
Регистрация: 01.12.2010
Сообщений: 140
По умолчанию

Beermonza, спасибо. Пепел Феникса, можно .
Asker13 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужна ваша оценка проги на делфи Rustam_Hacker Софт 20 09.04.2011 08:02
Нужна оценка стоймости работы Simply-Art Фриланс 4 30.01.2010 17:16
Простешая база Умелец БД в Delphi 5 20.03.2007 10:54