Тема: Vivo
Показать сообщение отдельно
Старый 02.05.2012, 14:42   #314
Randomize
[object Object]
 
Аватар для Randomize
 
Регистрация: 01.08.2008
Адрес: В России
Сообщений: 4,358
Написано 2,472 полезных сообщений
(для 6,854 пользователей)
Ответ: Vivo

Сообщение от Nikich Посмотреть сообщение
Спасибо. Кстати, можно ли как-то сделать Include "abc.txt"? Мне очень понравилась система в Stranded 2. Там вообще можно новую игру в .txt написать.
Нет. Блитзмакс это не скриптовик и он не может после компиляции обрабатывать Include.

То, что Include это не директива - странно, но этому есть применение.
Include может возвращать результат, Include можно вызывать по условию и тд.

По сути весь твой код внутри Include оборачивается как бы в функцию (на самом деле GOTO) и его можно вызывать сколь угодно раз, однако не советую так делать. Для этого есть функции/методы.

А при компиляции все твои Include компилируются в exe вместе с главным файлом вне зависимости от того как ты эти include используешь.

То, что ты хочешь сделать именуется скриптовым языком. В Stranded используется LUA. В BlitzMax уже есть модуль работы с LUA и даже несколько сторонних модулей упрощающих работу с ним.

Немного на русском
http://blitzetc.blitzmax.ru/index.php/BlitzMax_и_LUA

Wiki по встроенному в BlitzMax модулю LUA
http://en.wikibooks.org/wiki/BlitzMa...Other/Lua_Core


AXE LUA модуль
http://en.wikibooks.org/wiki/BlitzMax/Modules/Axe/Lua
http://lua-users.org/wiki/BlitzMax

Мануал по синтаксису LUA (можно особо не зачитываться так как луа простейший)
http://www.lua.org/manual/5.1/
__________________
Retry, Abort, Ignore? █
Intel Core i7-9700 4.70 Ghz; 64Gb; Nvidia RTX 3070
AMD Ryzen 7 3800X 4.3Ghz; 64Gb; Nvidia 1070Ti
AMD Ryzen 7 1700X 3.4Ghz; 8Gb; AMD RX 570
AMD Athlon II 2.6Ghz; 8Gb; Nvidia GTX 750 Ti
(Offline)
 
Ответить с цитированием