Null
Members-
Posts
23 -
Joined
-
Last visited
Everything posted by Null
-
I tried this, everything works except t[1], t[2], t[3] are the teleport locations inside the interior Is there a way i can attach the house icons to the marker or just make a whole new function to place them in the same postion as the marker Original marker created here: function createHouse( add, ID, owner, key, eX, eY, eZ, etX, etY, etZ, exX, exY, exZ, extX, extY, extZ, int, dim, cost ) if add then sql.Query( "INSERT INTO house_data ( ID, en_X, en_Y, en_Z, en_tX, en_tY, en_tZ, ex_X, ex_Y, ex_Z, ex_tX, ex_tY, ex_tZ, int, dim, cost, owner, key ) VALUES ( "..ID..", "..eX..", "..eY..", "..eZ..", "..etX..", "..etY..", "..etZ..", "..exX..", "..exY..", "..exZ..", "..extX..", "..extY..", "..extZ..", "..int..", "..dim..", "..cost..", '', '' )" ); end; local m_Enter = createMarker( eX, eY, eZ - 1, 'cylinder', 1.25, 0, 153, 255, 0 ); greenhouse = createPickup( eX, eY, eZ,3,1273,0) setElementData( m_Enter, 'HS_INFO', { etX, etY, etZ, int, dim, cost, owner, key, ID } );
-
Can't wait for this! ETA on release?
-
Now i'd assume this would work bluehouse = createPickup( eX, eY, eZ,3,1272,0); destroyElement(greenhouse); Creating a bluehouse and destroying the greenhouse? And it also doesn't recognise eX, eY, eZ when that variable already exists when you create the house
-
All i'm trying to do is add the house objects, the rest of the code is DaKillas
-
Hello all and thank you for taking the time and patience to read this, i am modifying DaKillas house script (Not removing copyright, just modifying slightly) The original system uses markers and images, i changed the markers to 0 transparency so onMarkerHit function still works, but i want house icons to appear in the center (Green for for sale, blue for sold) I managed to get it to kinda work, but DestroyElement and createPickup doesn't seem to be working right SERVER (updated) local sql = { Query = executeSQLQuery }; addEventHandler( 'onResourceStart', resourceRoot, function() sql.Query( "CREATE TABLE IF NOT EXISTS house_data (\ ID INTEGER, en_X REAL, en_Y REAL, en_Z REAL,\ en_tX REAL, en_tY REAL, en_tZ REAL,\ ex_X REAL, ex_Y REAL, ex_Z REAL,\ ex_tX REAL, ex_tY REAL, ex_tZ REAL,\ int INTEGER, dim INTEGER, cost INTEGER, owner TEXT, key TEXT )" ); for i, v in ipairs( getElementsByType( 'player' ) ) do setElementData( v, 'k_len', tonumber( get( 'keyLength' ) ) ); local acc = getPlayerAccount( v ); if not isGuestAccount( acc ) then setElementData( v, 'HS_accountName', getAccountName( acc ) ); end; setElementData( v, 'mrk_in', nil ); end; local hr = sql.Query( "SELECT * FROM house_data" ); for i = 1, #hr do createHouse( false, hr[i].ID, hr[i].owner, hr[i].key, hr[i].en_X, hr[i].en_Y, hr[i].en_Z, hr[i].en_tX, hr[i].en_tY, hr[i].en_tZ, hr[i].ex_X, hr[i].ex_Y, hr[i].ex_Z, hr[i].ex_tX, hr[i].ex_tY, hr[i].ex_tZ, hr[i].int, hr[i].dim, hr[i].cost ); end; end ); addEventHandler( 'onResourceStop', resourceRoot, function() for i, v in ipairs( getElementsByType( 'player' ) ) do setElementData( v, 'k_len', nil ); setElementData( v, 'HS_accountName', nil ); end; end ); addEventHandler( 'onPlayerJoin', root, function() setElementData( source, 'k_len', tonumber( get( 'keyLength' ) ) ); end ); addEventHandler( 'onPlayerLogin', root, function( _, acc ) setElementData( source, 'HS_accountName', getAccountName( acc ) ); end ); addEventHandler( 'onPlayerLoout', root, function( _, acc ) setElementData( source, 'HS_accountName', nil ); end ); addCommandHandler( 'hpanel', function( player ) if isObjectInACLGroup( 'user.'..getAccountName( getPlayerAccount( player ) ), aclGetGroup( 'Admin' ) ) or hasObjectPermissionTo( player, 'function.banPlayer', false ) then if not getElementData( player, 'HP_Opened' ) and not getElementData( player, 'mrk_in' ) then triggerClientEvent( player, 'HP_SetVisible', root, true ); end; else outputChatBox( '* Access denied for this command!', player, 255, 36, 51 ); end; end ); addEvent( 'onPlayerAttemptCreateHouse', true ); addEventHandler( 'onPlayerAttemptCreateHouse', root, function( rt ) createHouse( true, #sql.Query( "SELECT * FROM house_data" ) + 1, '', '', unpack( rt ) ); outputChatBox( '* The new house has been created successfully!', client, 255, 255, 0 ); end ); function createHouse( add, ID, owner, key, eX, eY, eZ, etX, etY, etZ, exX, exY, exZ, extX, extY, extZ, int, dim, cost ) if add then sql.Query( "INSERT INTO house_data ( ID, en_X, en_Y, en_Z, en_tX, en_tY, en_tZ, ex_X, ex_Y, ex_Z, ex_tX, ex_tY, ex_tZ, int, dim, cost, owner, key ) VALUES ( "..ID..", "..eX..", "..eY..", "..eZ..", "..etX..", "..etY..", "..etZ..", "..exX..", "..exY..", "..exZ..", "..extX..", "..extY..", "..extZ..", "..int..", "..dim..", "..cost..", '', '' )" ); end; local m_Enter = createMarker( eX, eY, eZ - 1, 'cylinder', 1.25, 0, 153, 255, 0 ); greenhouse = createPickup( eX, eY, eZ,3,1273,0) setElementData( m_Enter, 'HS_INFO', { etX, etY, etZ, int, dim, cost, owner, key, ID } ); if getElementData( m_Enter, 'HS_INFO' )[7] ~= '' then setMarkerColor( m_Enter, 255, 51, 36, 0 ); end; addEventHandler( 'onMarkerHit', m_Enter, function( player ) if getElementType( player ) == 'player' and not getPedOccupiedVehicle( player ) then if not getElementData( player, 'HP_Opened' ) then if not isGuestAccount( getPlayerAccount( player ) ) then setElementData( player, 'mrk_in', getElementData( source, 'HS_INFO' )[9] ); onPlayerHouseMarkerHit( player, source, true ); setPedFrozen( player, true ); else outputChatBox( '* You must be logged in to get in this house!', player, 255, 51, 36 ); end; end; end; end ); addEventHandler( 'onMarkerLeave', m_Enter, function( player ) if getElementType( player ) == 'player' and not getPedOccupiedVehicle( player ) then setElementData( player, 'mrk_in', nil ); end; end ); local m_Exit = createMarker( exX, exY, exZ - 1, 'cylinder', 1.25, 0, 153, 255, 0 ); setElementData( m_Exit, 'parent', m_Enter ); setElementInterior( m_Exit, int ); setElementDimension( m_Exit, dim ); setElementData( m_Exit, 'extX', extX ); setElementData( m_Exit, 'extY', extY ); setElementData( m_Exit, 'extZ', extZ ); addEventHandler( 'onMarkerHit', m_Exit, function( player, dim ) if getElementType( player ) == 'player' and dim then toggleAllControls( player, false ); fadeCamera( player, false ); setTimer( function( player, mrk ) if getPedOccupiedVehicle( player ) then removePedFromVehicle( player ); end; local x, y, z = getElementData( mrk, 'extX' ), getElementData( mrk, 'extY' ), getElementData( mrk, 'extZ' ); setElementPosition( player, x, y, z ); setElementInterior( player, 0 ); setElementDimension( player, 0 ); toggleAllControls( player, true ); fadeCamera( player, true ); end, 1200, 1, player, source ); end; end ); end; function onPlayerHouseMarkerHit( player, mrk, cursor ) local acc = getPlayerAccount( player ); if isGuestAccount( acc ) then outputChatBox( '* You must be logged in to get in this house!', player, 255, 51, 36 ); setElementData( player, 'mrk_in', nil ); setPedFrozen( player, false ); return false; end; local tts = { [1] = true, [2] = false, [3] = false, [4] = true, [5] = false, [6] = false }; if isObjectInACLGroup( 'user.'..getAccountName( acc ), aclGetGroup( 'Admin' ) ) or hasObjectPermissionTo( player, 'function.banPlayer', false ) then tts[6] = true; end; local owner = getElementData( mrk, 'HS_INFO' )[7]; local accName = getAccountName( acc ); if owner == accName then tts[1] = false; tts[2] = true; tts[3] = true; tts[4] = true; tts[5] = true; end; if owner ~= accName and owner ~= '' then tts[1] = false; end; if owner == '' then if isObjectInACLGroup( 'user.'..getAccountName( acc ), aclGetGroup( 'Admin' ) ) or hasObjectPermissionTo( player, 'function.banPlayer', false ) then tts[4] = true; else tts[4] = false; end; end; tts[7] = getElementData( mrk, 'HS_INFO' )[9]; tts[8] = getElementData( mrk, 'HS_INFO' )[7]; tts[9] = getElementData( mrk, 'HS_INFO' )[6]; triggerClientEvent( player, 'openHouseManagementWnd', root, tts, cursor ); end; addEvent( 'HOUSE_Buy', true ); addEventHandler( 'HOUSE_Buy', root, function( cost, key ) local accName = getAccountName( getPlayerAccount( client ) ); local houseCounter = 0; for i, v in ipairs( getElementsByType( 'marker', getResourceRootElement() ) ) do if getElementData( v, 'HS_INFO' ) then local owner = getElementData( v, 'HS_INFO' )[7]; if owner == accName then houseCounter = houseCounter + 1; end; end; end; if houseCounter >= tonumber( get( 'playerHouseCounter' ) ) then outputChatBox( '* You can not buy more than #00FF00'..get( 'playerHouseCounter' )..' house(-s)#FF3324 at the same time!', client, 255, 51, 36, true ); setPedFrozen( client, false ); return false; end; if getPlayerMoney( client ) >= tonumber( cost ) then outputChatBox( '* Key has been set to #00FF00'..key, client, 255, 51, 36, true ); outputChatBox( '* Congratulations! You have bought a house!', client, 255, 255, 0 ); sql.Query( "UPDATE house_data SET owner = '"..accName.."', key = '"..key.."' WHERE ID = ?", getElementData( client, 'mrk_in' ) ); takePlayerMoney( client, cost ); local mrk = getHouseByID( getElementData( client, 'mrk_in' ) ); local t = {}; for i = 1, 6 do t[i] = getElementData( mrk, 'HS_INFO' )[i]; end; t[7] = accName; t[8] = key; t[9] = getElementData( client, 'mrk_in' ); setElementData( mrk, 'HS_INFO', { t[1], t[2], t[3], t[4], t[5], t[6], t[7], t[8], t[9] } ); setMarkerColor( mrk, 255, 51, 36, 0 ); destroyElement(greenhouse); destroyElement(bluehouse); bluehouse = createPickup( t[1], t[2], t[3],3,1272,0); setTimer( onPlayerHouseMarkerHit, 50, 1, client, mrk, true ); else outputChatBox( '* You do not have enough money!', client, 255, 51, 36 ); onPlayerHouseMarkerHit( client, getHouseByID( getElementData( client, 'mrk_in' ) ), true ); end; end ); addEvent( 'HOUSE_Sell', true ); addEventHandler( 'HOUSE_Sell', root, function() sql.Query( "UPDATE house_data SET owner = '', key = '' WHERE ID = ?", getElementData( client, 'mrk_in' ) ); local mrk = getHouseByID( getElementData( client, 'mrk_in' ) ); givePlayerMoney( client, getElementData( mrk, 'HS_INFO' )[6] / 2 ); local t = {}; for i = 1, 6 do t[i] = getElementData( mrk, 'HS_INFO' )[i]; end; t[7] = ''; t[8] = ''; t[9] = getElementData( client, 'mrk_in' ); setElementData( mrk, 'HS_INFO', { t[1], t[2], t[3], t[4], t[5], t[6], t[7], t[8], t[9] } ); setMarkerColor( mrk, 0, 153, 255, 0 ); destroyElement(greenhouse); destroyElement(bluehouse); greenhouse = createPickup( t[1], t[2], t[3],3,1273,0); setTimer( onPlayerHouseMarkerHit, 50, 1, client, mrk, false ); end ); addEvent( 'HOUSE_Enter', true ); addEventHandler( 'HOUSE_Enter', root, function() setPedFrozen( client, false ); local mrk = getHouseByID( getElementData( client, 'mrk_in' ) ); local t = {}; for i = 1, 5 do t[i] = getElementData( mrk, 'HS_INFO' )[i]; end; fadeCamera( client, false ); toggleAllControls( client, false ); setTimer( function( player, t ) if getPedOccupiedVehicle( player ) then removePedFromVehicle( player ); end; setElementInterior( player, t[4], t[1], t[2], t[3] ); setElementDimension( player, t[5] ); toggleAllControls( player, true ); fadeCamera( player, true ); setElementData( player, 'mrk_in', nil ) end, 1200, 1, client, t ); end ); addEvent( 'HOUSE_ChangeKey', true ); addEventHandler( 'HOUSE_ChangeKey', root, function( newKey ) local mrk = getHouseByID( getElementData( client, 'mrk_in' ) ); sql.Query( "UPDATE house_data SET key = '"..newKey.."' WHERE ID = ?", getElementData( client, 'mrk_in' ) ); local t = {}; for i = 1, 6 do t[i] = getElementData( mrk, 'HS_INFO' )[i]; end; t[7] = getAccountName( getPlayerAccount( client ) ); t[8] = newKey; t[9] = getElementData( client, 'mrk_in' ); setElementData( mrk, 'HS_INFO', { t[1], t[2], t[3], t[4], t[5], t[6], t[7], t[8], t[9] } ); end );
-
Mods>Deathmatch>Resources and some servers have a folder called AntiCheat just wondering why they have that when MTA already has it
-
Registering accounts still doesn't work debugscript shows no errors. Client: GUIEditor = { checkbox = {}, staticimage = {}, edit = {}, button = {}, window = {}, label = {}, memo = {} } SARCLoginPanel = guiCreateWindow(16, 10, 671, 554, "", false) guiWindowSetSizable(SARCLoginPanel, false) GUIEditor.label[1] = guiCreateLabel(19, 194, 84, 36, "Username:", false, SARCLoginPanel) guiSetFont(GUIEditor.label[1], "default-bold-small") guiLabelSetColor(GUIEditor.label[1], 51, 122, 252) GUIEditor.label[2] = guiCreateLabel(19, 250, 84, 36, "Password:", false, SARCLoginPanel) guiSetFont(GUIEditor.label[2], "default-bold-small") guiLabelSetColor(GUIEditor.label[2], 51, 122, 252) LoginUsername = guiCreateEdit(85, 184, 200, 40, "", false, SARCLoginPanel) LoginPassword = guiCreateEdit(84, 236, 200, 40, "", false, SARCLoginPanel) guiEditSetMasked(LoginPassword, true) GUIEditor.memo[1] = guiCreateMemo(10, 364, 652, 180, "Welcome to SARC:RPG, a new RPG server on MTA, the first and only Australian RPG server.\n\nWe have a wide variety of jobs, everything here on SARC has been scripted by Null, the owner of SARC:RPG.\n\nSARC basically stands San Andreas RPG Community.\n\nHope you have fun!", false, SARCLoginPanel) guiMemoSetReadOnly(GUIEditor.memo[1], true) LoginButton = guiCreateButton(84, 286, 84, 39, "Login", false, SARCLoginPanel) guiSetFont(LoginButton, "default-bold-small") guiSetProperty(LoginButton, "NormalTextColour", "FF337AFC") GUIEditor.staticimage[1] = guiCreateStaticImage(159, 9, 350, 186, ":guieditor/images/SarcTest1.png", false, SARCLoginPanel) GUIEditor.label[3] = guiCreateLabel(168, 165, 31, 15, "Login", false, SARCLoginPanel) guiSetFont(GUIEditor.label[3], "default-bold-small") guiLabelSetColor(GUIEditor.label[3], 51, 122, 252) RegisterButton = guiCreateButton(436, 284, 84, 39, "Register", false, SARCLoginPanel) guiSetFont(RegisterButton, "default-bold-small") guiSetProperty(RegisterButton, "NormalTextColour", "FF337AFC") GUIEditor.label[4] = guiCreateLabel(367, 195, 84, 36, "Username:", false, SARCLoginPanel) guiSetFont(GUIEditor.label[4], "default-bold-small") guiLabelSetColor(GUIEditor.label[4], 51, 122, 252) RegisterUsername = guiCreateEdit(434, 185, 200, 40, "", false, SARCLoginPanel) GUIEditor.label[5] = guiCreateLabel(509, 166, 53, 15, "Register", false, SARCLoginPanel) guiSetFont(GUIEditor.label[5], "default-bold-small") guiLabelSetColor(GUIEditor.label[5], 51, 122, 252) GUIEditor.label[6] = guiCreateLabel(367, 248, 84, 36, "Password:", false, SARCLoginPanel) guiSetFont(GUIEditor.label[6], "default-bold-small") guiLabelSetColor(GUIEditor.label[6], 51, 122, 252) RegisterPassword = guiCreateEdit(434, 234, 200, 40, "", false, SARCLoginPanel) guiEditSetMasked(RegisterPassword, true) InfoLabel = guiCreateLabel(244, 298, 315, 15, "Please login or register.", false, SARCLoginPanel) guiSetFont(InfoLabel, "default-bold-small") showChat (false) showCursor (true) addEventHandler("onClientGUIClick",LoginButton, function ( ) local User = guiGetText ( LoginUsername ) local Password = guiGetText ( LoginPassword ) if User and Password then triggerServerEvent("onPlayerTryingToLogin",localPlayer,User,Password) end end,false ) addEventHandler("onClientGUIClick",RegisterButton, function ( ) local RegisterUser = guiGetText ( RegisterUsername ) local RegisterPassword = guiGetText ( RegisterPassword ) if RegisterUser and RegisterPassword then triggerServerEvent("onPlayerTryingToRegister",localPlayer,RegisterUser,RegisterPassword) end end,false ) addEvent("PlayerLogedOnClient",true) addEventHandler("PlayerLogedOnClient",getRootElement(), function ( ) guiSetVisible(SARCLoginPanel,false) showCursor(false) showChat(true) setCameraTarget( source, source ) end ) Server: addEvent("onPlayerTryingToLogin",true) addEventHandler("onPlayerTryingToLogin",getRootElement(), function ( User,Password ) if User ~= " " or User ~= " " then if Password ~= " " or Password ~= " " then local account = getAccount ( User,Password ) if ( account ) then logIn ( source,account,Password ) triggerClientEvent(source,"PlayerLogedOnClient",source) else outputChatBox("Wrong username or password.",source) end end end end ) function setCameraOnPlayerJoin() setCameraMatrix(source, 1468.8785400391, -919.25317382813, 100.153465271, 1468.388671875, -918.42474365234, 99.881813049316) end addEventHandler("onPlayerJoin", getRootElement(), setCameraOnPlayerJoin) addEvent("onPlayerTryingToRegister",true) addEventHandler("onPlayerTryingToRegister",getRootElement(), function(UserRegister,PasswordRegister) local account = getAccount(UserRegister, PasswordRegister) if (account ~= false) then outputChatBox("That username is already in use.",source) else account = addAccount(UserRegister, PasswordRegister) if (logIn(source, account, PasswordRegister) == true) then triggerClientEvent(source, "PlayerLogedOnClient", getRootElement()) end end end )
-
RPG jobs.
-
Nice, I love the sound effects, reminds me of single player.
-
I just need to ask something that's been on my mind for a while, if MTA blocks cheats and hacks why do servers have their own anti-cheat?
-
Full Mapped island / City near to the original map
Null replied to skrillex00100's topic in Showroom
Pics? -
Is that like custom furniture and was this built in the interior world?
-
Nice ! I saw this on a RPG server and loved the look of it
-
A MTA serial does not have a use outside of MTA, all it is a code generated on install. You could easily re install windows with a key gen and be unbanned. And also I hate script stealers as much as anyone else does, but I don't think they deserved to be banned out of MTA, server owners could post his IP and MTA serial and ban them manually. I vote -1
-
Thanks you fixed the camera And do you know why the register button isn't working?
-
Moved it to the server side, still doesnt work.. debugscript finds no errors everything works besides: -Registering accounts -the camera angle behind login screen Client: GUIEditor = { checkbox = {}, staticimage = {}, edit = {}, button = {}, window = {}, label = {}, memo = {} } SARCLoginPanel = guiCreateWindow(756, 255, 443, 535, "", false) guiWindowSetSizable(SARCLoginPanel, false) GUIEditor.label[1] = guiCreateLabel(19, 194, 84, 36, "Username:", false, SARCLoginPanel) guiSetFont(GUIEditor.label[1], "default-bold-small") GUIEditor.label[2] = guiCreateLabel(19, 250, 84, 36, "Password:", false, SARCLoginPanel) guiSetFont(GUIEditor.label[2], "default-bold-small") RegBox = guiCreateEdit(85, 184, 200, 40, "", false, SARCLoginPanel) PassBox = guiCreateEdit(84, 236, 200, 40, "", false, SARCLoginPanel) guiEditSetMasked(PassBox, true) GUIEditor.memo[1] = guiCreateMemo(10, 364, 423, 161, "Welcome to SARC:RPG, a new RPG server on MTA, the first and only Australian RPG server.\n\nWe have a wide variety of jobs, everything here on SARC has been scripted by Null, the owner of SARC:RPG.\n\nSARC basically stands San Andreas RPG Community.\n\nHope you have fun!", false, SARCLoginPanel) guiMemoSetReadOnly(GUIEditor.memo[1], true) LoginButton = guiCreateButton(19, 300, 84, 39, "Login", false, SARCLoginPanel) guiSetFont(LoginButton, "default-bold-small") RegisterButton = guiCreateButton(124, 300, 84, 39, "Register", false, SARCLoginPanel) guiSetFont(RegisterButton, "default-bold-small") showCursor(true) showChat(false) GUIEditor.staticimage[1] = guiCreateStaticImage(50, 10, 347, 185, ":guieditor/images/SarcTest1.png", false, SARCLoginPanel) addEventHandler( 'onClientResourceStart', resourceRoot, function( ) local uSound = playSound3D( 'http://www.181.fm/winamp.pls?station=181-power&style=mp3&description=Power%20181%20(Top%2040)&file=181-power.pls', 1471, -28, 54 ) setSoundMaxDistance( uSound, 20 ) end ) addEventHandler("onClientGUIClick",LoginButton, function ( ) local User = guiGetText ( RegBox ) local Password = guiGetText ( PassBox ) if User and Password then triggerServerEvent("onPlayerTryingToLogin",localPlayer,User,Password) end end,false ) addEventHandler("onClientGUIClick",RegisterButton, function ( ) local RegisterUser = guiGetText ( RegBox ) local RegisterPassword = guiGetText ( PassBox ) if RegisterUser and RegisterPassword then triggerServerEvent("onPlayerTryingToRegister",localPlayer,RegisterUser,RegisterPassword) end end,false ) addEvent("PlayerLogedOnClient",true) addEventHandler("PlayerLogedOnClient",getRootElement(), function ( ) guiSetVisible(SARCLoginPanel,false) showCursor(false) showChat(true) setCameraTarget (thePlayer, nil) end ) Server: addEvent("onPlayerTryingToLogin",true) addEventHandler("onPlayerTryingToLogin",getRootElement(), function ( User,Password ) if User ~= " " or User ~= " " then if Password ~= " " or Password ~= " " then local account = getAccount ( User,Password ) if ( account ) then logIn ( source,account,Password ) triggerClientEvent(source,"PlayerLogedOnClient",source) else end end end end ) function setCameraOnPlayerJoin() setCameraMatrix(thePlayer, 1468.8785400391, -919.25317382813, 100.153465271, 1468.388671875, -918.42474365234, 99.881813049316) end addEventHandler("onPlayerJoin", getRootElement(), setCameraOnPlayerJoin) addEvent("onPlayerTryingToRegister",true) addEventHandler("onPlayerTryingToRegister",getRootElement(), function ( UserRegister,PasswordRegister ) if UserRegister ~= " " or UserRegister ~= " " then if PasswordRegister ~= " " or PasswordRegister ~= " " then local account = getAccount ( UserRegister ) if ( account ) then else addAccount ( UserRegister,PasswordRegister ) end end end end )
-
I'll try it now, thank you
-
Updated script: GUIEditor = { checkbox = {}, staticimage = {}, edit = {}, button = {}, window = {}, label = {}, memo = {} } SARCLoginPanel = guiCreateWindow(756, 255, 443, 535, "", false) guiWindowSetSizable(SARCLoginPanel, false) GUIEditor.label[1] = guiCreateLabel(19, 194, 84, 36, "Username:", false, SARCLoginPanel) guiSetFont(GUIEditor.label[1], "default-bold-small") GUIEditor.label[2] = guiCreateLabel(19, 250, 84, 36, "Password:", false, SARCLoginPanel) guiSetFont(GUIEditor.label[2], "default-bold-small") RegBox = guiCreateEdit(85, 184, 200, 40, "", false, SARCLoginPanel) PassBox = guiCreateEdit(84, 236, 200, 40, "", false, SARCLoginPanel) guiEditSetMasked(PassBox, true) GUIEditor.memo[1] = guiCreateMemo(10, 364, 423, 161, "Welcome to SARC:RPG, a new RPG server on MTA, the first and only Australian RPG server.\n\nWe have a wide variety of jobs, everything here on SARC has been scripted by Null, the owner of SARC:RPG.\n\nSARC basically stands San Andreas RPG Community.\n\nHope you have fun!", false, SARCLoginPanel) guiMemoSetReadOnly(GUIEditor.memo[1], true) LoginButton = guiCreateButton(19, 300, 84, 39, "Login", false, SARCLoginPanel) guiSetFont(LoginButton, "default-bold-small") RegisterButton = guiCreateButton(124, 300, 84, 39, "Register", false, SARCLoginPanel) guiSetFont(RegisterButton, "default-bold-small") showCursor(true) showChat(false) GUIEditor.staticimage[1] = guiCreateStaticImage(50, 10, 347, 185, ":guieditor/images/SarcTest1.png", false, SARCLoginPanel) function setCameraOnPlayerJoin() setCameraMatrix(thePlayer, 1468.8785400391, -919.25317382813, 100.153465271, 1468.388671875, -918.42474365234, 99.881813049316) end addEventHandler("onPlayerJoin", getRootElement(), setCameraOnPlayerJoin) addEventHandler( 'onClientResourceStart', resourceRoot, function( ) local uSound = playSound3D( 'http://www.181.fm/winamp.pls?station=181-power&style=mp3&description=Power%20181%20(Top%2040)&file=181-power.pls', 1471, -28, 54 ) setSoundMaxDistance( uSound, 20 ) end ) addEventHandler("onClientGUIClick",LoginButton, function ( ) local User = guiGetText ( RegBox ) local Password = guiGetText ( PassBox ) if User and Password then triggerServerEvent("onPlayerTryingToLogin",localPlayer,User,Password) end end,false ) addEventHandler("onClientGUIClick",RegisterButton, function ( ) local RegisterUser = guiGetText ( RegBox ) local RegisterPassword = guiGetText ( PassBox ) if RegisterUser and RegisterPassword then triggerServerEvent("onPlayerTryingToRegister",localPlayer,RegisterUser,RegisterPassword) end end,false ) addEvent("PlayerLogedOnClient",true) addEventHandler("PlayerLogedOnClient",getRootElement(), function ( ) guiSetVisible(SARCLoginPanel,false) showCursor(false) showChat(true) setCameraTarget (thePlayer, nil) end ) If now dissappears, but the register function isn't working or the camera angle. Everything else seems fine.
-
Updated script: GUIEditor = { checkbox = {}, staticimage = {}, edit = {}, button = {}, window = {}, label = {}, memo = {} } SARCLoginPanel = guiCreateWindow(756, 255, 443, 535, "", false) guiWindowSetSizable(SARCLoginPanel, false) GUIEditor.label[1] = guiCreateLabel(19, 194, 84, 36, "Username:", false, SARCLoginPanel) guiSetFont(GUIEditor.label[1], "default-bold-small") GUIEditor.label[2] = guiCreateLabel(19, 250, 84, 36, "Password:", false, SARCLoginPanel) guiSetFont(GUIEditor.label[2], "default-bold-small") RegBox = guiCreateEdit(85, 184, 200, 40, "", false, SARCLoginPanel) PassBox = guiCreateEdit(84, 236, 200, 40, "", false, SARCLoginPanel) guiEditSetMasked(PassBox, true) GUIEditor.memo[1] = guiCreateMemo(10, 364, 423, 161, "Welcome to SARC:RPG, a new RPG server on MTA, the first and only Australian RPG server.\n\nWe have a wide variety of jobs, everything here on SARC has been scripted by Null, the owner of SARC:RPG.\n\nSARC basically stands San Andreas RPG Community.\n\nHope you have fun!", false, SARCLoginPanel) guiMemoSetReadOnly(GUIEditor.memo[1], true) LoginButton = guiCreateButton(19, 300, 84, 39, "Login", false, SARCLoginPanel) guiSetFont(LoginButton, "default-bold-small") RegisterButton = guiCreateButton(124, 300, 84, 39, "Register", false, SARCLoginPanel) guiSetFont(RegisterButton, "default-bold-small") showCursor(true) showChat(false) GUIEditor.staticimage[1] = guiCreateStaticImage(50, 10, 347, 185, ":guieditor/images/SarcTest1.png", false, SARCLoginPanel) function setCameraOnPlayerJoin() setCameraMatrix(thePlayer, 1468.8785400391, -919.25317382813, 100.153465271, 1468.388671875, -918.42474365234, 99.881813049316) end addEventHandler("onPlayerJoin", getRootElement(), setCameraOnPlayerJoin) addEventHandler( 'onClientResourceStart', resourceRoot, function( ) local uSound = playSound3D( 'http://www.181.fm/winamp.pls?station=181-power&style=mp3&description=Power%20181%20(Top%2040)&file=181-power.pls', 1471, -28, 54 ) setSoundMaxDistance( uSound, 20 ) end ) addEventHandler("onClientGUIClick",LoginButton, function ( ) local User = guiGetText ( RegBox ) local Password = guiGetText ( PassBox ) if User and Password then triggerServerEvent("onPlayerTryingToLogin",localPlayer,User,Password) end end,false ) addEventHandler("onClientGUIClick",RegisterButton, function ( ) local RegisterUser = guiGetText ( RegBox ) local RegisterPassword = guiGetText ( PassBox ) if RegisterUser and RegisterPassword then triggerServerEvent("onPlayerTryingToRegister",localPlayer,RegisterUser,RegisterPassword) end end,false ) addEvent("PlayerLogedOnClient",true) addEventHandler("PlayerLogedOnClient",getRootElement(), function ( ) guiSetVisible(SARCLoginPanel,false) showCursor(false) showChat(true) setCameraTarget (thePlayer, nil) end ) If now dissappears, but the register function isn't working or the camera angle. Everything else seems fine.
-
I'm relatively new to lua, but i've put together this login panel , but some of the functions are not working correctly and some are not working at all. Client: GUIEditor = { checkbox = {}, staticimage = {}, edit = {}, button = {}, window = {}, label = {}, memo = {} } SARCLoginPanel = guiCreateWindow(756, 255, 443, 535, "", false) guiWindowSetSizable(SARCLoginPanel, false) GUIEditor.label[1] = guiCreateLabel(19, 194, 84, 36, "Username:", false, SARCLoginPanel) guiSetFont(GUIEditor.label[1], "default-bold-small") GUIEditor.label[2] = guiCreateLabel(19, 250, 84, 36, "Password:", false, SARCLoginPanel) guiSetFont(GUIEditor.label[2], "default-bold-small") RegBox = guiCreateEdit(85, 184, 200, 40, "", false, SARCLoginPanel) PassBox = guiCreateEdit(84, 236, 200, 40, "", false, SARCLoginPanel) guiEditSetMasked(PassBox, true) GUIEditor.memo[1] = guiCreateMemo(10, 364, 423, 161, "Welcome to SARC:RPG, a new RPG server on MTA, the first and only Australian RPG server.\n\nWe have a wide variety of jobs, everything here on SARC has been scripted by Null, the owner of SARC:RPG.\n\nSARC basically stands San Andreas RPG Community.\n\nHope you have fun!", false, SARCLoginPanel) guiMemoSetReadOnly(GUIEditor.memo[1], true) LoginButton = guiCreateButton(19, 300, 84, 39, "Login", false, SARCLoginPanel) guiSetFont(LoginButton, "default-bold-small") RegisterButton = guiCreateButton(124, 300, 84, 39, "Register", false, SARCLoginPanel) guiSetFont(RegisterButton, "default-bold-small") showCursor(true) showChat(false) GUIEditor.staticimage[1] = guiCreateStaticImage(50, 10, 347, 185, ":guieditor/images/SarcTest1.png", false, SARCLoginPanel) addEventHandler( 'onClientResourceStart', resourceRoot, function( ) local uSound = playSound3D( 'http://www.181.fm/winamp.pls?station=181-power&style=mp3&description=Power%20181%20(Top%2040)&file=181-power.pls', 1471, -28, 54 ) setSoundMaxDistance( uSound, 20 ) end ) function setCameraOnPlayerJoin() setCameraMatrix(source, 1471, -28, 54) end addEventHandler("onPlayerJoin", getRootElement(), setCameraOnPlayerJoin) addEventHandler("onClientGUIClick",LoginButton, function ( ) local User = guiGetText ( RegBox ) local Password = guiGetText ( PassBox ) if User and Password then triggerServerEvent("onPlayerTryingToLogin",localPlayer,User,Password) end end,false ) addEventHandler("onClientGUIClick",RegisterButton, function ( ) local RegisterUser = guiGetText ( RegBox ) local RegisterPassword = guiGetText ( PassBox ) if RegisterUser and RegisterPassword then triggerServerEvent("onPlayerTryingToRegister",localPlayer,RegisterUser,RegisterPassword) end end,false ) addEvent("PlayerLogedOnClient",true) addEventHandler("PlayerLogedOnClient",getRootElement(), function ( ) xmlFileHandler(guiCheckBoxGetSelected(guardar1)) xmlFileHandler(guiCheckBoxGetSelected(guardar2)) guiSetVisible(SARCLoginPanel,false) showCursor(false) showChat(true) setCameraTarget (thePlayer, nil) guiSetVisible(windowLogin, false) end ) Server: addEvent("onPlayerTryingToLogin",true) addEventHandler("onPlayerTryingToLogin",getRootElement(), function ( User,Password ) if User ~= " " or User ~= " " then if Password ~= " " or Password ~= " " then local account = getAccount ( User,Password ) if ( account ) then logIn ( source,account,Password ) triggerClientEvent(source,"PlayerLogedOnClient",source) else end end end end ) addEvent("onPlayerTryingToRegister",true) addEventHandler("onPlayerTryingToRegister",getRootElement(), function ( UserRegister,PasswordRegister ) if UserRegister ~= " " or UserRegister ~= " " then if PasswordRegister ~= " " or PasswordRegister ~= " " then local account = getAccount ( UserRegister ) if ( account ) then else addAccount ( UserRegister,PasswordRegister ) end end end end ) The problem is.. In the client side script i wanted the background of the login screen to be this function setCameraOnPlayerJoin() setCameraMatrix(source, 1471, -28, 54) end addEventHandler("onPlayerJoin", getRootElement(), setCameraOnPlayerJoin) But that function is not working at all.. and i wanted a radio to play while you are at the login screen.. addEventHandler( 'onClientResourceStart', resourceRoot, function( ) local uSound = playSound3D( 'http://www.181.fm/winamp.pls?station=181-power&style=mp3&description=Power%20181%20(Top%2040)&file=181-power.pls', 1471, -28, 54 ) setSoundMaxDistance( uSound, 20 ) end ) The function isn't working And the fact that when i press Register or Login, the GUI does not go away and the chat does not re-appear. I have tried everything, been trying to fix this for over a day and i just cant get it to work, i really dont want to use some community login panel,i have debugged this many times in-game and that still didn't help.. If someone who is more experienced in Lua looks over this and helps me, i will love you forever, because i really need help