Показать сообщение отдельно
Старый 18.04.2012, 19:09   #9
Gector
Легенда
 
Аватар для Gector
 
Регистрация: 14.10.2007
Сообщений: 3,878
Написано 2,012 полезных сообщений
(для 5,072 пользователей)
Ответ: Скриптовик - Банки или текст?

Сообщение от radiobutton Посмотреть сообщение
Что-то вроде ассемблера, а не ассемблер)

смотри

делаеш набор операций, функций, итд и нумеруеш их

0) ноль означает что в следующей за ним ячейке массива будит тип переменной, а за типом будит следовать значение. И после значения еще один ноль. Хотя он нужен только для строк и нецелых чисел, ведь значения целых чисел можно уместить в одну ячейку.
(1 - int, 2 - float, 3 - string)
1) +
2) -
3) *
4) /
5) равно
6) неравно
7) больше
8 ) меньше
9) присвоить
10) (
11) )
итд
51) if
52) then
53) else
54) endif
итд
100) moveto(x,y)
101) OpenDialog(x); x - номер нпц.

1001) Переменная один целая (для примера название будит "a")
1002) Переменная два целая (для примера название будит "b")
1003) Переменная три целая (для примера название будит "c")
итд

Названия переменных можно буди придумывать в скрипте и храница значения будут в другом массиве целочисленном.

Например строка массива:

51 10 1001 1 1002 11 3 1003 7 0 1 15 52 100 0 1 23423 0 1 72346 9 1001 10 1001 1 0 1 2 11 53 9 1001 10 1001 1 0 1 1 11 54

будит означать следующий скрипт:

if (a+b)*c>15 then
   moveto(23423,72346)
   a:=(a+2) ; Звездные войны на паскале писать можно. Ты же пишешь звездные войны?
else
   a:=(a+1)
endif
Во расписал то . Кстати говоря примерно таким был предыдущий вариант компилирующий все в байт-код. НО! Скрипты в этом случае очень ограничены и не могут никак взаимодействовать. Либо пиши один большой файл, либо компилируй все разом и в строгой очередности, что ну совсем никак не катит. Да и при работе с текстовыми переменными будут большие проблемы.
__________________
Ибо как сказал Бгдн:
(Offline)
 
Ответить с цитированием