Jump to content

triggering player


kuba90pl

Recommended Posts

Hi! I wanted to make my own login system so i created :

client:

function getLoginData (n,p,i) 
    local imie = getPlayerName(getLocalPlayer()) 
    local nick = guiGetText ( edit ) 
    local pass = guiGetText ( edit2 ) 
    n=nick 
    p=pass 
    i=imie 
    triggerServerEvent("getLoginDataServer", getRootElement(), n,p,i) 
    outputChatBox("wyslalem") 
end 
  
function destroyLoginWindow() 
    destroyElement(win) 
    showCursor(false) 
end 
addEvent("loginapproved",true) 
addEventHandler("loginapproved", getRootElement(), destroyLoginWindow) 

server:

function logincheck(name,pass,imie) 
p=getPlayerFromName(imie) 
account=getPlayerAccount(p) 
pass_s=getAccountData(account,"player.pass") 
name_s=getAccountData(account,"player.nick") 
    if name==name_s and pass==pass_s then 
    outputChatBox("You logged in, welcome back "..imie.." ",p,0,255,0) 
    triggerClientEvent("loginapproved",getRootElement()) 
    else 
    outputChatBox("Wrong password or account name!",p,255,0,0) 
    end 
  
end 
addEvent("getLoginDataServer", true) 
addEventHandler("getLoginDataServer", getRootElement(), logincheck) 
  
  

but server still cant get player from nick(so its cant get data from account) , i tested this function by adding outputChatBox(imie) and its triggering good from client. Whats the problem?

Link to comment

-- client side:

 

function getLoginData () 
    local nick = guiGetText ( edit ) 
    local pass = guiGetText ( edit2 ) 
    local n=nick 
    local p=pass 
    local i=getPlayerName(localPlayer) 
    triggerServerEvent("getLoginDataServer", localPlayer, n,p,i) 
    outputChatBox("wyslalem") 
end 
  
function destroyLoginWindow() 
    destroyElement(win) 
    showCursor(false) 
end 
addEvent("loginapproved",true) 
addEventHandler("loginapproved", getRootElement(), destroyLoginWindow) 

-- server side:

function logincheck(name,pass,imie) 
local p=source 
local account=getPlayerAccount(p) 
local pass_s=getAccountData(account,"player.pass") 
local name_s=getAccountData(account,"player.nick") 
    if (name==name_s and pass==pass_s) then 
         outputChatBox("You logged in, welcome back "..imie.." ",p,0,255,0) 
         triggerClientEvent("loginapproved",getRootElement()) 
    else 
         outputChatBox("Wrong password or account name!",p,255,0,0) 
    end 
end 
addEvent("getLoginDataServer", true) 
addEventHandler("getLoginDataServer", getRootElement(), logincheck) 

Try that.

Link to comment
-- client side:

 

function getLoginData () 
    local nick = guiGetText ( edit ) 
    local pass = guiGetText ( edit2 ) 
    local n=nick 
    local p=pass 
    local i=getPlayerName(localPlayer) 
    triggerServerEvent("getLoginDataServer", localPlayer, n,p,i) 
    outputChatBox("wyslalem") 
end 
  
function destroyLoginWindow() 
    destroyElement(win) 
    showCursor(false) 
end 
addEvent("loginapproved",true) 
addEventHandler("loginapproved", getRootElement(), destroyLoginWindow) 

-- server side:

function logincheck(name,pass,imie) 
local p=source 
local account=getPlayerAccount(p) 
local pass_s=getAccountData(account,"player.pass") 
local name_s=getAccountData(account,"player.nick") 
    if (name==name_s and pass==pass_s) then 
         outputChatBox("You logged in, welcome back "..imie.." ",p,0,255,0) 
         triggerClientEvent("loginapproved",getRootElement()) 
    else 
         outputChatBox("Wrong password or account name!",p,255,0,0) 
    end 
end 
addEvent("getLoginDataServer", true) 
addEventHandler("getLoginDataServer", getRootElement(), logincheck) 

Try that.

still same , i put right values and still i see Wrong password or account name.

my full client with gui for test:

------------------------- 
------login window------- 
function logwindow() 
local w,s=guiGetScreenSize() 
showCursor(true) 
win = guiCreateWindow(w/2-100,-50,315,300,"Oli Login",false) 
edit = guiCreateEdit(77,75,144,37,"",false,win) 
edit2 = guiCreateEdit(77,147,144,36,"",false,win) 
label1 = guiCreateLabel(89,51,125,22,"Name:",false,win) 
label2 = guiCreateLabel(84,123,125,22,"Password:",false,win) 
but1 = guiCreateButton(60,235,81,34,"Register",false,win) 
but2 = guiCreateButton(147,236,81,34,"LogIN!",false,win) 
radio1 = guiCreateRadioButton(95,191,17,13,"",false,win) 
guiRadioButtonSetSelected(radio1,true) 
label3 = guiCreateLabel(112,189,108,18,"I accept rules (OR)",false,win) 
guiEditSetMasked ( edit2, true ) 
  
addEventHandler ( "onClientGUIClick", but2, getLoginData, false ) 
end 
addEventHandler("onClientResourceStart", root, logwindow) 
  
  
  
  
function getLoginData () 
    local nick = guiGetText ( edit ) 
    local pass = guiGetText ( edit2 ) 
    local n=nick 
    local p=pass 
    local i=getPlayerName(localPlayer) 
    triggerServerEvent("getLoginDataServer", localPlayer, n,p,i) 
    outputChatBox("wyslalem") 
end 
  
function destroyLoginWindow() 
    destroyElement(win) 
    showCursor(false) 
end 
addEvent("loginapproved",true) 
addEventHandler("loginapproved", getRootElement(), destroyLoginWindow) 

edit:

this script is working only when i got logged first by /login pass (build-in mta login system)

Link to comment

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...