Kenix Posted November 14, 2012 Share Posted November 14, 2012 Лучше юзай set/get elementData и хрони в дате группу игрока. Link to comment
KatastrofaS Posted November 14, 2012 Share Posted November 14, 2012 Этим вечером обнаружил, что гнущиеся под ветром деревья можно наклонять как твёрдые обекты (и нормальные наклоняющиеся деревья). Достаточно в карте указать . Лишь бы масштаб отличался от 1! Подходит и для колёс. Извините, если баян или самоочевидность для нечайников. Link to comment
Memory Posted November 20, 2012 Share Posted November 20, 2012 Как сделать переадресацию, чтобы при заходе на один сервер перебрасывало на другой. Заранее спасибо. Link to comment
TwiX! Posted November 20, 2012 Share Posted November 20, 2012 Как сделать переадресацию, чтобы при заходе на один сервер перебрасывало на другой. Заранее спасибо. https://wiki.multitheftauto.com/wiki/RedirectPlayer Link to comment
Memory Posted November 21, 2012 Share Posted November 21, 2012 Что-то не перебрасывает, уже столько перепробовал addEventHandler ('onPlayerJoin', root, function () redirectPlayer (source, 'здесь ip', порт) end ) function redirect() redirectPlayer(source, "ip", tonumber(port)) end addEventHandler("onPlayerJoin", root, redirect) local ip = "ip" local port = "port" local root = getRootElement() addEventHandler("onPlayerJoin", root, function() redirectPlayer(source, ip, port) end) Link to comment
TwiX! Posted November 21, 2012 Share Posted November 21, 2012 addEventHandler ('onPlayerJoin', root, function () setTimer(redirectPlayer, 2000, 1, source, '111.222.333.444', 22003); end ) Server-Side Нужны админ права Link to comment
H1TM4N Posted November 21, 2012 Share Posted November 21, 2012 Ребят, проблема с accountdata. Есть data = "text". Сохраняю при отключении setAccountData(account, "info", tostring(data)). Проверил в интернал все сохранилось. Захожу на сервер и загружаю данные setElementData(source, "info", tostring(getAccountData(account, "info"))) и выдает данное false - почему? Как исправить? Link to comment
Flaker Posted November 21, 2012 Share Posted November 21, 2012 а account у тебя что? (1 аргумент getAccountData)? Что debugscript пишет? И если можно, более полный код получения даты в студию... Link to comment
H1TM4N Posted November 21, 2012 Share Posted November 21, 2012 (edited) а account у тебя что? (1 аргумент getAccountData)?Что debugscript пишет? И если можно, более полный код получения даты в студию... addEventHandler("onPlayerLogin", root, function(thePreviousAccount, theCurrentAccount, autoLogin) local account = getAccount(getPlayerName(source)) local text = tostring(getAccountData(account, "info")) outputChatBox("Текст: "..text, root) setElementData(source, "info", text) setElementData(source, "info2", tonumber(getAccountData(account, "info2")) or 0) setElementData(source, "info3", tonumber(getAccountData(account, "info3")) or 0) end ) в интернал info существует в виде текста "text". а в этом коде info просто не грузится. вместо него пишет false. замечу что числовые данные info2 и info3 берутся нормально. Edited November 21, 2012 by Guest Link to comment
Flaker Posted November 21, 2012 Share Posted November 21, 2012 Поподробнее почитай про функцию getAccount. Внимательно посмотри ее аргументы... Я думаю, ты поймешь в чем проблема, если внимательно прочитаешь. P.S. Еще советую глянуть getPlayerAccount Link to comment
H1TM4N Posted November 21, 2012 Share Posted November 21, 2012 Поподробнее почитай про функцию getAccount. Внимательно посмотри ее аргументы...Я думаю, ты поймешь в чем проблема, если внимательно прочитаешь. P.S. Еще советую глянуть getPlayerAccount с getAccount теперь понятно. и я теперь вообще не понимаю как тогда брать тостринг info? getPlayerAccount так же не действует Link to comment
Flaker Posted November 21, 2012 Share Posted November 21, 2012 Что пишет дебаг? Код давай чтоль... Link to comment
H1TM4N Posted November 21, 2012 Share Posted November 21, 2012 Что пишет дебаг? Код давай чтоль... дебаг молчит. сделал тестовую команду и я просто не втыкаю почему мне info1 выдает false, а info2 выдает точное значение? может это tostring как то влияет? addCommandHandler("test", function(source, command) local account = getPlayerAccount( source ) local text = tostring(getAccountData(account, "info1")) local score = tonumber(getAccountData(account, "info2")) outputChatBox ( "info1 " ..text, source, 255, 255, 0 ) outputChatBox ( "info2 " ..score, source, 255, 255, 0 ) end ) Link to comment
Flaker Posted November 21, 2012 Share Posted November 21, 2012 Тоесть 1 выдает а второе нет? Значит устанавливаешь неправильно второе... Link to comment
Silum Posted November 21, 2012 Share Posted November 21, 2012 Помогите с трансопртом: вот пример, ставлю Hudra. И создаю team Arms Assasins. ну вот как зделать чтоб даная Hudra была закрыта для всех кроме даной team. Link to comment
H1TM4N Posted November 21, 2012 Share Posted November 21, 2012 Тоесть 1 выдает а второе нет? Значит устанавливаешь неправильно второе... output в чат такой: info1 false info2 755 а должно быть info1 testText info2 755 т.к. в интернал info1 = "testText" info2 = 755 Link to comment
Flaker Posted November 21, 2012 Share Posted November 21, 2012 Silum, Создаешь закрытый изначально vehicle. https://wiki.multitheftauto.com/wiki/SetVehicleLocked При начале входа в vehicle https://wiki.multitheftauto.com/wiki/OnVehicleStartEnter Получаешь команду игрока: https://wiki.multitheftauto.com/wiki/GetPlayerTeam Если имя команды https://wiki.multitheftauto.com/wiki/GetTeamName совпадает с заданным, то открыть vehicle. ____________________________________________________________ H1TM4N, Выложи сюда твой текущий код установки значений, а так же их получения... Если нет желания выкладывать, то могу посоветовать вот что: 1) Еще раз почитай https://wiki.multitheftauto.com/wiki/GetAccountData, и посмотри примеры... Внимательно посмотри и сравни алгоритм в примере, с твоим собственным. Далее, там справа ты можешь видеть: Note: It is strongly recommended that you use the standard module.key naming for your keys, as shown in the example below. This prevents collisions between different scripts. Советую последовать этой заметке... Link to comment
H1TM4N Posted November 21, 2012 Share Posted November 21, 2012 Silum,H1TM4N, Выложи сюда твой текущий код установки значений, а так же их получения... Если нет желания выкладывать, то могу посоветовать вот что: 1) Еще раз почитай https://wiki.multitheftauto.com/wiki/GetAccountData, и посмотри примеры... Внимательно посмотри и сравни алгоритм в примере, с твоим собственным. Далее, там справа ты можешь видеть: Note: It is strongly recommended that you use the standard module.key naming for your keys, as shown in the example below. This prevents collisions between different scripts. Советую последовать этой заметке... ага. немного разобрался. у меня такие пироги, эти info1 и info2 именять нужно на выключеном/оффлайн аккаунте, как это сделать? Если не ошибаюсь взять аккаунт по нику, но кажется нет такой функции? Link to comment
Flaker Posted November 21, 2012 Share Posted November 21, 2012 Silum,H1TM4N, Выложи сюда твой текущий код установки значений, а так же их получения... Если нет желания выкладывать, то могу посоветовать вот что: 1) Еще раз почитай https://wiki.multitheftauto.com/wiki/GetAccountData, и посмотри примеры... Внимательно посмотри и сравни алгоритм в примере, с твоим собственным. Далее, там справа ты можешь видеть: Note: It is strongly recommended that you use the standard module.key naming for your keys, as shown in the example below. This prevents collisions between different scripts. Советую последовать этой заметке... ага. немного разобрался. у меня такие пироги, эти info1 и info2 именять нужно на выключеном/оффлайн аккаунте, как это сделать? Если не ошибаюсь взять аккаунт по нику, но кажется нет такой функции? Можно получить аккаунт оффлайн игрока через функцию: https://wiki.multitheftauto.com/wiki/GetAccount К примеру, eсли ты делаешь что-то типо системы домов, то тебе надо просто сохранять в элементе дома имя аккаунта владельца, а если другой человек собирается перекупить дом, то получаешь имя аккаунта владельца дома, и вставляешь его как первый аргумент функции https://wiki.multitheftauto.com/wiki/GetAccount, так как второй аргумент этой функции опциональный (не требуемый), то ты получаешь объект аккаунта, только с помощью accountName Link to comment
H1TM4N Posted November 22, 2012 Share Posted November 22, 2012 так и быть, раскрою карты) хотел замутить авторизацию по серийному номеру. на сколько я знаю в дб на аккаунт привязывается какойто серийник, но я не знаю как его брать и изменять. хотел просто добавить номер серийника в данные аккаунта. добавил. а вот при авторизации у меня проблема. я не понимаю как вынуть серийник из данных аккаунта, который еще не залогинился. постоянно выдает значение false. вот как это выглядит в моем скрипте: function onLogin ( pass ) local account = getAccount ( getPlayerName(source) ) local serial = getPlayerSerial( source ) local accountSerial = tostring(getAccountData(account, "i.serial")) if ( account ~= false ) then if accountSerial == serial then if account then logIn ( source, account, pass ) else outputChatBox ( "error 3", source, 255, 255, 0 ) end else outputChatBox ( "error 2", source, 255, 255, 0 ) end else outputChatBox ( "error 1", source, 255, 255, 0 ) end end Link to comment
Flaker Posted November 22, 2012 Share Posted November 22, 2012 А он у тебя устанавливается то как? И в каком эвенте? И эта функция когда вызывается? Link to comment
H1TM4N Posted November 22, 2012 Share Posted November 22, 2012 А он у тебя устанавливается то как? И в каком эвенте? это по типу команды register serialid username password function onRegister ( serial, user, pass ) local account = getAccount ( user ) if ( account ~= false ) then outputChatBox ( "error 1", source, 255, 255, 0 ) else account = addAccount ( user, pass ) if account then setAccountData(account, "i.serial", tostring(serial)) else outputChatBox ( "error 2", source, 255, 255, 0 ) end end end И эта функция когда вызывается? это своеобразная система авторизации. так же по типу команды login pass, только с указанием серийника который и не берется из аккаунта. вместо него выдает false значение. Link to comment
H1TM4N Posted November 22, 2012 Share Posted November 22, 2012 вобщем я сразу не обратил внимания на одну мелочь. onRegister в интернал создает информацию "i.serial" на аккаунт с id 3, но аккаунтов там всего 2 ! первый это consol, а второй это мой. третьего просто не существует, а во вкладке userdata существует информация на аккаунт id 3. получается я не правильно задавал значение изначально, пожалуйста поправте меня. Link to comment
Flaker Posted November 22, 2012 Share Posted November 22, 2012 Тьфу ты... В прошлый раз плохо твой код смотрел... Имя игрока не равно имени аккаунта! local account = getAccount ( getPlayerName(source) ) Так нельзя делать! Если ты хочешь сделать теневую регистрацию, то тебе вобще не надо создавать никаких аккаунтов! Просто создаешь базу данных с информацией об игроке, уникальным ключем в которой является Serial Link to comment
H1TM4N Posted November 22, 2012 Share Posted November 22, 2012 Просто создаешь базу данных с информацией об игроке, уникальным ключем в которой является Serial Я еще ничего об этом не знаю Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now