Как перевести скрипт с LUA 5.0.2 на 5.1.1
Если Вы хотите поставить себе птоку с поддержкой новых скриптов, т.е. с поддержкой LUA 5.1.1, то прочтите это руководство.
Что же Вам нужно знать?
Во-первых, замените в скрипте следующее:
string.gfind => string.gmatch
table.getn => table.maxn
math.mod => math.fmod
loadlib => package.loadlib
require => dofile
Во-вторых, что касается table.foreach. Здесь замена немного посложнее. Показываю на примере:
было: table.foreach(self._PMPlayers,function(nick,_)стало: for nick,_ in pairs(self._PMPlayers) do
В принципе, ничего сложного нет.
В-третьих, пробегитесь с помощью F3 по всему скрипту в поиске строки, начинающейся с for
Все строки, виде for 1знач, 2знач in таблица нужно заменить на: for 1знач, 2знач in pairs(таблица)
Например:
было: for index, value in TrivEx._PMPlayers docтало: for index, value in pairs(TrivEx._PMPlayers) do
Также вы можете воспользоваться специальной программой-конвертером от Mutor'a:
http://dc.hovel.ru/files/50to51_1.02.zip
Но я все-таки рекомендую сначала сделать все вручную и, если скрипт будет все еще отказываться работать, то попробовать переконвертировать его с помощью этой программы. Но она тоже не идеальна. Например, почему-то в некоторых местах доставляет )
В общем, желаю удачи!
P.s. - может быть вам даже пригодится конвертер из LUA4, который я тоже прилагаю.
P.p.s. - если Вы захотите сделать скрипт с поддержкой LUA 5.0 / 5.1x, то пишите - я вас научу)
| Прикрепленный файл | Размер |
|---|---|
| Lua4ToLua5Converter.rar | 1.16 Мб |



Последние комментарии
1 неделя 2 дня назад
3 недели 6 дней назад
4 недели 12 часов назад
9 недель 19 часов назад
9 недель 6 дней назад
12 недель 4 дня назад
13 недель 1 день назад
13 недель 1 день назад
14 недель 1 час назад
14 недель 21 час назад