rafull6 Posted February 9, 2012 Share Posted February 9, 2012 Возникла идея сделать скрипт на покупку скина (РПГ сервер). За основу я взял скрипт с комьюнити. Скрипт изначально работал только для выбора скина. Я решил добавить следующее: 1. При нажатии на кнопку "купить" у игрока отнимается 200 долларов и применяется скин 2. При нажатии на кнопку "выход" у него возвращается предыдущий скин. Вот код: Клиент: markerskin = createMarker( 1520.4227294922,-1618.5716552734,12.546875,"cylinder",1,100,0,150,200 ) function CreateSelectorWindow() wdwselector = guiCreateWindow(0.438,0.820,0.15,0.13,"Покупка скина",true) guiWindowSetMovable(wdwselector,false) btnLeft = guiCreateButton(0.0,0.23,0.200,0.300,"<-",true,wdwselector) btnRight = guiCreateButton(0.76,0.23,0.200,0.300,"->",true,wdwselector) btnSelect = guiCreateButton(0.30,0.23,0.400,0.300,"Купить",true,wdwselector) btnClose = guiCreateButton(0.30,0.60,0.400,0.300,"Выход",true,wdwselector) guiSetVisible(wdwselector, false) end function selectorenable () CreateSelectorWindow() addEventHandler("onClientGUIClick", btnLeft, clientSkinLeft, false) addEventHandler("onClientGUIClick", btnSelect, clientSkinSelect, false) addEventHandler("onClientGUIClick", btnRight, clientSkinRight, false) addEventHandler("onClientGUIClick", btnClose, clientSkinClose, false) if (wdwselector ~= nil) then guiSetVisible(wdwselector, true) triggerServerEvent("FrontCamera", getRootElement()) end showCursor(true) end addCommandHandler("skin", selectorenable, false, false) function clientSkinSelect(button) if button == "left" then guiSetVisible(wdwselector, false) showCursor(false) triggerServerEvent("SkinSelected", getRootElement()) end end function clientSkinClose(button) if button == "left" then guiSetVisible(wdwselector, false) showCursor(false) triggerServerEvent("SkinNotSelected", getRootElement()) end end function clientSkinRight(button) if button == "left" then triggerServerEvent("SkinRight", getRootElement()) end end function clientSkinLeft(button) if button == "left" then triggerServerEvent("SkinLeft", getRootElement()) end end Сервер: function camf() if (client) then local px,py,pz = getElementPosition( client ) local rot = setPedRotation(client, 1) setCameraMatrix( source, px, py+4, pz, px, py, pz) end end addEvent("FrontCamera", true) addEventHandler("FrontCamera", getRootElement(), camf) ----------------------------------------- function selected() local money = getPlayerMoney(thePlayer) if (client) then fadeCamera(client, true) setCameraTarget(client, client) outputChatBox("Вы успешно купили скин!", client) elseif (money < 500) then outputChatBox("You don't have money!",thePlayer,255,0,0,true) else takePlayerMoney(thePlayer,500) end end addEvent("SkinSelected", true) addEventHandler("SkinSelected", getRootElement(), selected) ------------------------------------------------- function notselected() if (client) then fadeCamera(client, true) setCameraTarget(client, client) end end addEvent("SkinNotSelected", true) addEventHandler("SkinNotSelected", getRootElement(), notselected) function skinright() local skin = getPedSkin(client) if (client) then if (skin == 0) then setPedSkin(client, 7) elseif (skin == 7) then setPedSkin(client, 9) elseif (skin == 41) then setPedSkin(client, 43) elseif (skin == 64) then setPedSkin(client, 66) elseif (skin == 85) then setPedSkin(client, 87) elseif(skin == 118) then setPedSkin(client, 120) elseif(skin == 148) then setPedSkin(client, 150) elseif(skin == 207) then setPedSkin(client, 209) elseif(skin == 238) then setPedSkin(client, 240) elseif(skin == 264) then setPedSkin(client, 274) elseif(skin == 288) then setPedSkin(client, 0) else setPedSkin(client, skin+1) end end end addEvent("SkinRight", true) addEventHandler("SkinRight", getRootElement(), skinright) function skinleft() local skin = getPedSkin(client) if (client) then if (skin == 7) then setPedSkin(client, 0) elseif (skin == 9) then setPedSkin(client, 7) elseif (skin == 43) then setPedSkin(client, 41) elseif (skin == 66) then setPedSkin(client, 64) elseif (skin == 87) then setPedSkin(client, 85) elseif(skin == 120) then setPedSkin(client, 118) elseif(skin == 150) then setPedSkin(client, 148) elseif(skin == 209) then setPedSkin(client, 207) elseif(skin == 240) then setPedSkin(client, 238) elseif(skin == 274) then setPedSkin(client, 264) elseif(skin == 0) then setPedSkin(client, 288) else setPedSkin(client, skin-1) end end end addEvent("SkinLeft", true) addEventHandler("SkinLeft", getRootElement(), skinleft) Функция покупки снятия денег на стороне сервера (отделил --------------- что бы было видно сразу ). Вопрос: почему не работает? где допущено ошибку? Подскажите пожалуйста Дополнение: подскажите пожалуйста, если не сложно как делать так, что бы при нажатии на кнопку "выход" игроку возвращался предыдущий скин, и он выходил из режима покупки? Link to comment
Kernell Posted February 9, 2012 Share Posted February 9, 2012 function selected() local money = getPlayerMoney(thePlayer) -- Получаем деньги некого объекта thePlayer (которого по видемому не существует). -- по идее в money сейчас false. if (client) then -- client это объект который вызвал событие (игрок), т.е. проверка проходит. fadeCamera(client, true) setCameraTarget(client, client) outputChatBox("Вы успешно купили скин!", client) elseif (money < 500) then -- До сюда даже не дойдёт. outputChatBox("You don't have money!",thePlayer,255,0,0,true) else -- аналогично. takePlayerMoney(thePlayer,500) end end Исправил код, надеюсь не просто скопируешь его, а ещё и попытаешься понять, дабы не совершать в будущем логических ошибок. function selected() if client then if ( getPlayerMoney( client ) or 0 ) < 500 then outputChatBox( "У Вас недостаточно денег!", client , 255, 0, 0, true ) else fadeCamera( client, true ) setCameraTarget( client, client ) outputChatBox( "Вы успешно купили скин!", client ) takePlayerMoney( client, 500 ) end end end Link to comment
Kenix Posted February 9, 2012 Share Posted February 9, 2012 Kernell, if ( getPlayerMoney( client ) or 0 ) < 500 then Зачем делать эту проверку ( getPlayerMoney( client ) or 0 ) если getPlayerMoney вернёт 0 в любом случае или false если элемента игрока нету. if getPlayerMoney( client ) < 500 then м? Link to comment
rafull6 Posted February 10, 2012 Author Share Posted February 10, 2012 Исправил код, надеюсь не просто скопируешь его, а ещё и попытаешься понять, дабы не совершать в будущем логических ошибок. Свою ошибку понял Спасибо! Link to comment
rafull6 Posted February 10, 2012 Author Share Posted February 10, 2012 подскажите пожалуйста, если не сложно как делать так, что бы при нажатии на кнопку "выход" игроку возвращался предыдущий скин, и он выходил из режима покупки? Link to comment
Kernell Posted February 10, 2012 Share Posted February 10, 2012 Kernell,if ( getPlayerMoney( client ) or 0 ) < 500 then Зачем делать эту проверку ( getPlayerMoney( client ) or 0 ) если getPlayerMoney вернёт 0 в любом случае или false если элемента игрока нету. if getPlayerMoney( client ) < 500 then м? Твой вариант мягко говоря "говнокод". Чем он лучше? Много сэкономил ресурсов что ли? Глупость. > getPlayerMoney вернёт 0 в любом случае или false если элемента игрока нету И откуда такая уверенность? Нельзя быть на 100% уверенным в таких вещах, проверять нужно всё, а это просто предосторожность. P.S. Выше проверки на валидность игрока нету, может быть есть глобальная переменная client с типом таблицы, а функцию вызвало серверное событие или вообще не событие. Не понимаю смысла вообще было придираться к этой строке. Понт? Link to comment
rafull6 Posted February 10, 2012 Author Share Posted February 10, 2012 Оценено По моему вопросу (пост выше) поможете? Очень вас прошу! Link to comment
Kernell Posted February 10, 2012 Share Posted February 10, 2012 Оценено По моему вопросу (пост выше) поможете? Очень вас прошу! Ну как бы нужно при входе на маркер получить скин игрока и записать куда-то (пускай это будет например ElementData). При нажатии на "Выход" так же через событие устанавливаем скин игроку из ElementData. Я просто в коде не нахожу этих событий. Link to comment
rafull6 Posted February 10, 2012 Author Share Posted February 10, 2012 Оценено По моему вопросу (пост выше) поможете? Очень вас прошу! Ну как бы нужно при входе на маркер получить скин игрока и записать куда-то (пускай это будет например ElementData). При нажатии на "Выход" так же через событие устанавливаем скин игроку и ElementData. Я просто в коде не нахожу этих событий. Их там и нет Я просто спросил как можно реализовать такое) Спасибо большое за совет Link to comment
rafull6 Posted February 10, 2012 Author Share Posted February 10, 2012 Вот хотел добавить в функцию следующее: При недостатке денег в чат отправляется уведомление об этом, возвращается скинь который был ДО захода в магазин (изначальный) и закрывается сам магазин. function selected() if client then getPedSkin ( source ) if ( getPlayerMoney( client ) or 0 ) < 500 then setPedSkin ( source ) fadeCamera( client, true ) setCameraTarget( client, client ) outputChatBox( "У Вас недостаточно денег!", client , 255, 0, 0, true ) else fadeCamera( client, true ) setCameraTarget( client, client ) outputChatBox( "Вы успешно купили скин!", client ) takePlayerMoney( client, 500 ) end end end addEvent("SkinSelected", true) addEventHandler("SkinSelected", getRootElement(), selected) Не работает Link to comment
Kernell Posted February 10, 2012 Share Posted February 10, 2012 Не работает - и я с Lua согласен. Ибо ты записываешь результат функции в память. Ну и функция вернёт ID скина который уже на игроке. Выше я писал как надо: перед выдачей меню, нужно записать в память ID текущего скина. При нажатии "Отмена" берём ID скина из памяти и ставим скин игроку. P.S. source замените на client лучше, а то как-то не красиво. EDIT: Я бы советовал перенести бинд команды "skin" на сервер, и там уже вызывать клиентское событие привязанное к функции selectorenable. А в обработчике команды "skin" делать то о чём я говорил выше. Link to comment
rafull6 Posted February 10, 2012 Author Share Posted February 10, 2012 Выше я писал как надо: перед выдачей меню, нужно записать в память ID текущего скина. При нажатии "Отмена" берём ID скина из памяти и ставим скин игроку. С делал как вы посоветовали: function playerLogin (thePreviousAccount, theCurrentAccount, autoLogin) if not (isGuestAccount (getPlayerAccount (source))) then local playerskin = getElementModel ( source ) end end function selected() if client then if ( getPlayerMoney( client ) or 0 ) < 500 then setElementModel ( client, playerskin ) fadeCamera( client, true ) setCameraTarget( client, client ) outputChatBox( "У Вас недостаточно денег!", client , 255, 0, 0, true ) else fadeCamera( client, true ) setCameraTarget( client, client ) outputChatBox( "Вы успешно купили скин!", client ) takePlayerMoney( client, 500 ) end end end Теперь скин записывается в память при авторизации на сервере, после чего в функции покупки, при нехватке денег возвращается на игрока. Я правильно сделал? Во всяком случае debugscript ругается [2012-02-10 16:52:42] WARNING: skinselect\s_skinselect.lua:22: Bad argument @ 'setElementModel' не пойму по чему p.s. вычитал что лучше использовать getElementModel и SetElementModel Link to comment
Kernell Posted February 10, 2012 Share Posted February 10, 2012 Ты объявил переменную playerskin как локальную, что значит её область видимости в пределах своего блока, извне её не существует. Даже объявив её как глобальную, код будет немного не правильным, ибо игрок на сервере будет не один, а переменная одна на всех. Поэтому чтобы тебе было проще, храни ID скина в ElementData. function playerLogin (thePreviousAccount, theCurrentAccount, autoLogin) if not (isGuestAccount (getPlayerAccount (source))) then setElementData( source, "default_skin", getElementModel( source ) ) end end function selected() if client then local playerskin = getElementData( client, "default_skin" ) if not playerskin then -- Если нужно, добавь текст с ошибкой или можешь использовать assert для прерывания скрипта и вывода ошибки в дебаг return; end if ( getPlayerMoney( client ) or 0 ) < 500 then setElementModel ( client, playerskin ) fadeCamera( client, true ) setCameraTarget( client, client ) outputChatBox( "У Вас недостаточно денег!", client , 255, 0, 0, true ) else fadeCamera( client, true ) setCameraTarget( client, client ) outputChatBox( "Вы успешно купили скин!", client ) takePlayerMoney( client, 500 ) end end end Link to comment
rafull6 Posted February 10, 2012 Author Share Posted February 10, 2012 Я поправил свой код твоими исправлениями, получилось вот что: function playerLogin (thePreviousAccount, theCurrentAccount, autoLogin) if not (isGuestAccount (getPlayerAccount (source))) then setElementData( source, "default_skin", getElementModel( source ) ) end end function camf() if (client) then local px,py,pz = getElementPosition( client ) local rot = setPedRotation(client, 1) setCameraMatrix( source, px, py+4, pz, px, py, pz) end end addEvent("FrontCamera", true) addEventHandler("FrontCamera", getRootElement(), camf) function selected() if client then local playerskin = getElementData( client, "default_skin" ) if not playerskin then -- Если нужно, добавь текст с ошибкой или можешь использовать assert для прерывания скрипта и вывода ошибки в дебаг return; end if ( getPlayerMoney( client ) or 0 ) < 500 then setElementModel ( client, playerskin ) fadeCamera( client, true ) setCameraTarget( client, client ) outputChatBox( "У Вас недостаточно денег!", client , 255, 0, 0, true ) else fadeCamera( client, true ) setCameraTarget( client, client ) outputChatBox( "Вы успешно купили скин!", client ) takePlayerMoney( client, 500 ) end end end addEvent("SkinSelected", true) addEventHandler("SkinSelected", getRootElement(), selected) function notselected() if (client) then fadeCamera(client, true) setCameraTarget(client, client) end end addEvent("SkinNotSelected", true) addEventHandler("SkinNotSelected", getRootElement(), notselected) function skinright() local skin = getPedSkin(client) if (client) then if (skin == 0) then setPedSkin(client, 7) elseif (skin == 7) then setPedSkin(client, 9) elseif (skin == 41) then setPedSkin(client, 43) elseif (skin == 64) then setPedSkin(client, 66) elseif (skin == 85) then setPedSkin(client, 87) elseif(skin == 118) then setPedSkin(client, 120) elseif(skin == 148) then setPedSkin(client, 150) elseif(skin == 207) then setPedSkin(client, 209) elseif(skin == 238) then setPedSkin(client, 240) elseif(skin == 264) then setPedSkin(client, 274) elseif(skin == 288) then setPedSkin(client, 0) else setPedSkin(client, skin+1) end end end addEvent("SkinRight", true) addEventHandler("SkinRight", getRootElement(), skinright) function skinleft() local skin = getPedSkin(client) if (client) then if (skin == 7) then setPedSkin(client, 0) elseif (skin == 9) then setPedSkin(client, 7) elseif (skin == 43) then setPedSkin(client, 41) elseif (skin == 66) then setPedSkin(client, 64) elseif (skin == 87) then setPedSkin(client, 85) elseif(skin == 120) then setPedSkin(client, 118) elseif(skin == 150) then setPedSkin(client, 148) elseif(skin == 209) then setPedSkin(client, 207) elseif(skin == 240) then setPedSkin(client, 238) elseif(skin == 274) then setPedSkin(client, 264) elseif(skin == 0) then setPedSkin(client, 288) else setPedSkin(client, skin-1) end end end addEvent("SkinLeft", true) addEventHandler("SkinLeft", getRootElement(), skinleft) Но дело в том что картина не изменилась. Скин продолжает применяться, не смотря на нехватку денег, и не возвращается в исходный (тот который игрок получает при входу на сервер). Почему так? Link to comment
Kernell Posted February 10, 2012 Share Posted February 10, 2012 Не совсем понял. Пишет что не хватает денег, но скин всё равно из магазина? Link to comment
rafull6 Posted February 10, 2012 Author Share Posted February 10, 2012 да, скин меняет не зависимо от количества денег. Link to comment
Kernell Posted February 10, 2012 Share Posted February 10, 2012 И дебаг молчит? Ибо такого быть не может. Либо ты что-то не то говоришь. Link to comment
rafull6 Posted February 25, 2012 Author Share Posted February 25, 2012 (edited) И дебаг молчит? Ибо такого быть не может. Либо ты что-то не то говоришь. Дебаг не молчит: [2012-02-25 01:59:07] WARNING: skinselect\s_skinselect.lua:23: Bad argument @ 'setElementModel' [2012-02-25 01:59:07] WARNING: skinselect\s_skinselect.lua:43: Bad argument @ 'setElementModel' весь код: function camf() if (client) then local px,py,pz = getElementPosition( client ) local rot = setPedRotation(client, 1) setCameraMatrix( source, px, py+5, pz, px, py, pz) end end addEvent("FrontCamera", true) addEventHandler("FrontCamera", getRootElement(), camf) function playerLogin (thePreviousAccount, theCurrentAccount, autoLogin) if not (isGuestAccount (getPlayerAccount (source))) then setElementData( source, "defaultsskin", getElementModel( source ) ) end end addEventHandler("OnPlayerLogin", getRootElement(), playerLogin) function selected() if client then local playerskin = getElementData( client, "defaultsskin" ) if ( getPlayerMoney( client ) or 0 ) < 100 then setElementModel ( client, playerskin ) fadeCamera( client, true ) setCameraTarget( client, client ) outputChatBox( "У Вас недостаточно денег!", client , 255, 0, 0, true ) else fadeCamera( client, true ) setCameraTarget( client, client ) outputChatBox( "Вы успешно купили скин!", client ) takePlayerMoney( client, 100 ) end end end addEvent("SkinSelected", true) addEventHandler("SkinSelected", getRootElement(), selected) function notselected() -- local playerskin = getElementData( client, "1skin" ) if (client) then -- setElementModel ( client, playerskin ) fadeCamera(client, true) setCameraTarget(client, client) ---outputChatBox("Skin successfully changed!", client) end end addEvent("SkinNotSelected", true) addEventHandler("SkinNotSelected", getRootElement(), notselected) function skinright() local skin = getPedSkin(client) if (client) then if (skin == 0) then setPedSkin(client, 7) elseif (skin == 7) then setPedSkin(client, 9) elseif (skin == 41) then setPedSkin(client, 43) elseif (skin == 64) then setPedSkin(client, 66) elseif (skin == 85) then setPedSkin(client, 87) elseif(skin == 118) then setPedSkin(client, 120) elseif(skin == 148) then setPedSkin(client, 150) elseif(skin == 207) then setPedSkin(client, 209) elseif(skin == 238) then setPedSkin(client, 240) elseif(skin == 264) then setPedSkin(client, 274) elseif(skin == 288) then setPedSkin(client, 0) else setPedSkin(client, skin+1) end end end addEvent("SkinRight", true) addEventHandler("SkinRight", getRootElement(), skinright) function skinleft() local skin = getPedSkin(client) if (client) then if (skin == 7) then setPedSkin(client, 0) elseif (skin == 9) then setPedSkin(client, 7) elseif (skin == 43) then setPedSkin(client, 41) elseif (skin == 66) then setPedSkin(client, 64) elseif (skin == 87) then setPedSkin(client, 85) elseif(skin == 120) then setPedSkin(client, 118) elseif(skin == 150) then setPedSkin(client, 148) elseif(skin == 209) then setPedSkin(client, 207) elseif(skin == 240) then setPedSkin(client, 238) elseif(skin == 274) then setPedSkin(client, 264) elseif(skin == 0) then setPedSkin(client, 288) else setPedSkin(client, skin-1) end end end addEvent("SkinLeft", true) addEventHandler("SkinLeft", getRootElement(), skinleft) Edited February 25, 2012 by Guest Link to comment
rafull6 Posted February 25, 2012 Author Share Posted February 25, 2012 Этот код должен быть на серверной или клиентской части? ----- Update: решил протестить и прописал в setElementModel ( client, playerskin ) вместо playerskin id скин 280 и при недостатке денег скин сменился. Получается что или setElementData( source, "defaultsskin", getElementModel( source ) ) не записывает дату, или проблема тут: local playerskin = getElementData( client, "defaultsskin" ) Как поправить это? Link to comment
Kernell Posted February 25, 2012 Share Posted February 25, 2012 В след. раз когда выкладываете скрипт - подумайте о его рефакторинге, чтобы другие могли без труда разобраться в вашем коде. local FrontCamera, PlayerLogin, SkinSelected, SkinNotSelected, SkinRight, SkinLeft; addEvent( "FrontCamera", true ); addEvent( "SkinSelected", true ); addEvent( "SkinNotSelected", true ); addEvent( "SkinRight", true ); addEvent( "SkinLeft", true ); function FrontCamera() if client then local fClientX, fClientY, fClientZ = getElementPosition( client ); setPedRotation( client, 1 ); setCameraMatrix( client, fClientX, fClientY + 5, fClientZ, fClientX, fClientY, fClientZ ); end end function PlayerLogin( thePreviousAccount, theCurrentAccount, autoLogin ) if not isGuestAccount( getPlayerAccount( source ) ) then setElementData( source, "defaultsskin", getElementModel( source ) ); end end function SkinSelected() if client then local iDefaultSkin = getElementData( client, "defaultsskin" ); fadeCamera( client, true ); setCameraTarget( client, client ); if ( getPlayerMoney( client ) or 0 ) < 100 then setElementModel( client, iDefaultSkin ); outputChatBox( "У Вас недостаточно денег!", client , 255, 0, 0, true ); return; end takePlayerMoney( client, 100 ); setElementData( source, "defaultsskin", getElementModel( client ) ); outputChatBox( "Вы успешно купили скин!", client ); end end function SkinNotSelected() if client then -- local playerskin = getElementData( client, "1skin" ); -- setElementModel( client, playerskin ); fadeCamera( client, true ); setCameraTarget( client, client ); ---outputChatBox( "Skin successfully changed!", client ); end end function SkinRight() if not client then return end local iSkin = getElementModel( client ); if iSkin == 0 then setElementModel( client, 7 ); elseif iSkin == 7 then setElementModel( client, 9 ); elseif iSkin == 41 then setElementModel( client, 43 ); elseif iSkin == 64 then setElementModel( client, 66 ); elseif iSkin == 85 then setElementModel( client, 87 ); elseif iSkin == 118 then setElementModel( client, 120 ); elseif iSkin == 148 then setElementModel( client, 150 ); elseif iSkin == 207 then setElementModel( client, 209 ); elseif iSkin == 238 then setElementModel( client, 240 ); elseif iSkin == 264 then setElementModel( client, 274 ); elseif iSkin == 288 then setElementModel( client, 0 ); else setElementModel( client, iSkin + 1 ); end end function SkinLeft() if not client then return end local iSkin = getElementModel( client ); if iSkin == 7 then setElementModel( client, 0 ); elseif iSkin == 9 then setElementModel( client, 7 ); elseif iSkin == 43 then setElementModel( client, 41 ); elseif iSkin == 66 then setElementModel( client, 64 ); elseif iSkin == 87 then setElementModel( client, 85 ); elseif iSkin == 120 then setElementModel( client, 118 ); elseif iSkin == 150 then setElementModel( client, 148 ); elseif iSkin == 209 then setElementModel( client, 207 ); elseif iSkin == 240 then setElementModel( client, 238 ); elseif iSkin == 274 then setElementModel( client, 264 ); elseif iSkin == 0 then setElementModel( client, 288 ); else setElementModel( client, iSkin - 1 ); end end addEventHandler( "SkinSelected", root, SkinSelected ); addEventHandler( "FrontCamera", root, FrontCamera ); addEventHandler( "OnPlayerLogin", root, PlayerLogin ); addEventHandler( "SkinNotSelected", root, SkinNotSelected ); addEventHandler( "SkinRight", root, SkinRight ); addEventHandler( "SkinLeft", root, SkinLeft ); Link to comment
rafull6 Posted February 25, 2012 Author Share Posted February 25, 2012 В след. раз когда выкладываете скрипт - подумайте о его рефакторинге, чтобы другие могли без труда разобраться в вашем коде. Я извиняюсь, я учту это в следующий раз. По поводу скрипта: дебаг: [2012-02-25 18:17:45] WARNING: skinselect\s_skinselect.lua:32: Bad argument @ 'setElementModel' то есть по сути тоже самое что и до вашего исправления... Как это исправить? Link to comment
Kenix Posted February 25, 2012 Share Posted February 25, 2012 local iDefaultSkin = getElementData( client, "defaultsskin" ) or 0 Link to comment
Kernell Posted February 25, 2012 Share Posted February 25, 2012 то есть по сути тоже самое что и до вашего исправления... Как это исправить? Залогиниться не пробовал? Твоя идея между прочим (что на мой взгляд - бред, брать текущий скин нужно перед открытием GUI). Поэтому и в ElementData ничего нету. 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