-
Posts
1,967 -
Joined
-
Last visited
-
Days Won
1
Everything posted by MX_Master
-
MTASA wiki - offline copies / online mirrors
MX_Master replied to MX_Master's topic in Site/Forum/Discord/Mantis/Wiki related
The freshest offline copy as CHM file: some unneeded stuff was deleted only english language Download: wiki.multitheftauto.com_01.05.2011.chm, 32.8 Mb -
Компилируем Lua-скрипты в один файл
MX_Master replied to DakiLLa's topic in Помощь / Отчеты об ошибках
Это все для защиты от неопытных копипастеров (: коих, обычно, немало. Я рекомендую только клиентские скрипты собирать в один скомпилированный скрипт. Минусы тут тоже есть! При дебаге (debugscript 3) в дебаг окне или логе вам будет выдавать сообщения об ошибках скрипта со ссылкой на неизвестное место. Поэтому лучше 33 раза до этого протестировать скрипт с проверенными людьми или самостоятельно. -
не буду спорить, просто с моей стороны не будет больше ответов на твои вопросы
-
Компилируем Lua-скрипты в один файл
MX_Master replied to DakiLLa's topic in Помощь / Отчеты об ошибках
допустим так "Путь к компилятору\luac5.1.exe" -s -o "Путь\СкомпиленныйСкрипт123.lua" -- "Путь\Скрипт1.lua" "Путь\Скрипт2.lua" "Путь\Скрипт3.lua" -
Такому как ты может не ответить даже обычный юзер форума, т.к. никто не станет помогать человеку, который неуважительно относится к чужим знаниям и труду.
-
Когда я спрашиваю у разработчика, я пишу ему лично. Когда ты спрашиваешь у разработчика - ты пишешь во флудилке...
-
ради твоего пит маневра синхру не будут улучшать пробуй скриптово
-
Т.к. mtasa 1.1 уже ругается на использование loadfile, я написал небольшую функцию, которая использует loadstring и файловые функции. Эта функция позволяет подключить в ваш текущий скрипт любой другой скрипт в виде функции (что, сосбсна, loadfile и делал). Это может быть полезно, если вы из разных ресурсов подключаете какой-то класс (таблицу), находящийся в другом ресурсе. Сама функция: function getScriptAsFunction ( sPath ) if type(sPath) ~= 'string' then sPath = tostring(sPath) end if not fileExists(sPath) then return false, "can't find file '"..sPath.."'" end local uFile = fileOpen( sPath, true ) if not uFile then return false, "can't open file '"..sPath.."'" end local nFileSize = fileGetSize(uFile) if not nFileSize then fileClose(uFile) return false, "can't get file '"..sPath.."' size" end local sFileContent = fileRead( uFile, nFileSize ) if not sFileContent or #sFileContent <= 0 then fileClose(uFile) return false, "can't get file '"..sPath.."' text" end fileClose(uFile) -- вырежем BOM, если он есть в начале файла if string.byte( sFileContent, 1 ) == 0xEF then sFileContent = string.sub( sFileContent, 4 ) end local f, sError = loadstring(sFileContent) if type(f) ~= 'function' then return false, sError end return f end Функция подходит для клиента и сервера версии 1.1, а также только для сервера версии 1.0.x. Пример: Допустим, в ресурсе "tools" лежит файл "tableTools.lua", который состоит из ваших дополнительных функций для работы с таблицами, которые собраны в одну таблицу (простейший класс). Вот пример этого класса: local tableTools = {} function tableTools.findValueIndex(...) ... end function tableTools.deleteValue(...) ... end function tableTools.clear(...) ... end return tableTools В meta.xml нашего конечного ресурса добавляем resource="tools" /> чтобы ресурс, где лежит наш файл, запускался перед запуском конечного ресурса. Это важно, допустим, если вы будете подключать один клиентский скрипт из другого - он должен сначала скачаться. _ И далее мы должны получить эту таблицу функций в конечный ресурс, чтобы пользоваться этими функциями. Делаем так: local myTableTools local myTableToolsFunction, errorText = getScriptAsFunction(":tools/tableTools.lua") -- если файл успешно подключен как тело функции if type(myTableToolsFunction) == "function" then -- выполним ее и результатом должна быть таблица с нашими функциями myTableTools = myTableToolsFunction() else outputDebugString( "Can't include file with my table tools! Reason: " .. errorText, 3 ) return false -- выход со скрипта end -- если таблица не получена или в ней нет нужных функций if type(myTableTools) ~= "table" or not myTableTools.findValueIndex then outputDebugString( "Can't get table with my table tools!", 3 ) return false -- выход со скрипта end -- здесь мы уже можем юзать нашу новую таблицу myTableTools с функциями внутри -- ...
-
Same problem on WinXP SP3. Was fixed by installing DirectX 10.1
-
да уже трижды решение найдено, а вы спорите..
-
ну вощем-то это мона назвать - респавн ботов
-
* можно веселей способ сделать, попробовать анимацию включить/выключить * попробовать сменить позицию * стессна, пересоздать бота, т.к. иногда они намертво впадают в ступор
-
оформить как ресурс + экспорт функции fileOpen, fileRead, loadstring; у текущего ресурса ACL право: ModifyOtherObjects -> true
-
некоторые функции LUA специально отключены в целях корректной работы мультиплеера, которая может быть нарушена при использовании этого запрещенного функционала. Это же касается и функции loadfile, например
-
если бы оно давало небывалый прирост производительности с минимальными изменениями в коде.. именно тогда бы игра стоила свеч
-
не нашлось еще такого мода, который бы умудрился так забить память (: шутка, канеш
-
ну просмотри список коммитов и узнаешь, ну а потом и можно в баг трекер сказать, если это, канеш, так важно..
-
если кто-то хочет приблизить по времени релиз 1.1 возмитесь и пофиксите недостаюшие до релиза баги/возможности
-
ну если ковыряться не хочешь, ставь терь Virtual PC (:
-
не в этом дело. Дело в том, что часть меню это ГУИ на английском, часть - картинки на английском. Если мультиязычность и делать, то это долгая песня, за которую мало кто возьмется. Допустим, сейчас реализована возможность менять скины ГУЯ. Представь сколько работы нужно, чтобы сделать смену языка, состоящую из смены языковых файлов и картинок для них. Уйма работы, которая не так важна как собственно поддержка самих юникод символов разных языков мультиязычность не намного прибавит популярности, т.к. все остальное для простого игрока и скриптера останется таким же сложным
-
аудио дрова поставь в твой ХР бокс про них же и говорит ошибка
-
Если дело касается только главного меню, то там уже часть надписей картинками сделали в версии 1.1
-
это не автоматом делается, а вручную - разработчиками. Можете напомнить об этом им в комментах фикса в гугл код проекте
-
я так понял, что целого штата Сан Андреас мало (: и хочется вокруг налепить еще несколько своих. Весьма частный случай. Насколько я помню, основной островок размером 6х6 и размеров 16х16 может хватить на весьма огромные сооружения вокруг основного. ну, возможно, что иногда специально делается тюрьма, весьма отдаленная от основного острова. Тут скорее надо нажимать на охрану объекта, а не на невозможность добраться своими силами до основного острова да и ваще, тема это весьма отдельная от флудилки, а мы все обсуждаем в этой куче. Потом желающие просто не найдут подобного вопроса и будут задавать похожие вопросы снова. Это так.. на заметку
-
для таких дел используют смену виртуального мира или интерьера, а не выставление координат далеко за пределами карты