Jump to content

[Obsoleto] error con cuentas - [vD]


Recommended Posts

[ vDscript Build 182 - 188 ]

El problema esta en que al tener el mismo script que en la wiki, tira error, es decir, "got bolean" y no se exactamente como solucionarlo:

error:

[2014-07-31 08:35:42] vDscript build: 182 
[2014-07-31 08:35:42] WARNING: vDscript\gamemode\GMserver.lua:80: Bad argument @ 'getPlayerAccount' [Expected element at argument 1, got resource-data] 
[2014-07-31 08:35:42] WARNING: vDscript\gamemode\GMserver.lua:81: Bad argument @ 'isGuestAccount' [Expected account at argument 1, got boolean] 

server

function accountChecker (source) 
    sourceAccount = getPlayerAccount (source) 
    if isGuestAccount (sourceAccount) then 
        triggerClientEvent("panelLogin",source) 
    end 
end 
addEventHandler("onPlayerJoin",root,accountChecker) 
addEventHandler("onResourceStart",root,accountChecker) 

client

function ddddd () 
-- GUI de login privada 
end 
addEvent("panelLogin",true) 
addEventHandler("panelLogin",getLocalPlayer(),ddddd) 

y quitando onResourceStart sale esto:

error:

[2014-07-31 08:56:25] JOIN: #FFFFFF'~'V#666666eNaD joined the game (IP: 192.168.1.234) 
[2014-07-31 08:56:25] WARNING: vDscript\gamemode\GMserver.lua:80: Bad argument @ 'getPlayerAccount' [Expected element at argument 1, got nil] 
[2014-07-31 08:56:25] WARNING: vDscript\gamemode\GMserver.lua:81: Bad argument @ 'isGuestAccount' [Expected account at argument 1, got boolean]] 

PD: la IP es local

server:

function accountChecker (source) 
    sourceAccount = getPlayerAccount (source) 
    if isGuestAccount (sourceAccount) then 
        triggerClientEvent("panelLogin",source) 
    end 
end 
addEventHandler("onPlayerJoin",root,accountChecker) 

y creo que no se me olvida nada mas por mostrar en este post

el fin de esta funcion es:

Si el jugador ya esta loggeado, que al darle reset al resource no le salte otra vez el panel, y si al darle restart (o iniciarlo) hay algun jugador con guest, que le salte el panel para loggearse

Edited by Guest
Link to comment
Hidden

Es obvio por que el evento onResourceStart no te entrega source, lo que tienes que hacer es un loop con todos los jugadores, te quedaría así el server-side:

  
function accountChecker (source) 
    sourceAccount = getPlayerAccount (source) 
    if isGuestAccount (sourceAccount) then 
        triggerClientEvent("panelLogin",source) 
    end 
end 
addEventHandler("onPlayerJoin",root,accountChecker) 
  
function accountCheckerOnStart (source) 
    for k,v in ipairs(getElementsByType("player")) do 
        sourceAccount = getPlayerAccount (v) 
        if isGuestAccount (sourceAccount) then 
            triggerClientEvent("panelLogin",v) 
        end 
    end 
end 
addEventHandler("onResourceStart",root,accountCheckerOnStart) 

Link to comment
Es obvio por que el evento onResourceStart no te entrega source, lo que tienes que hacer es un loop con todos los jugadores, te quedaría así el server-side:
  
function accountChecker (source) 
    sourceAccount = getPlayerAccount (source) 
    if isGuestAccount (sourceAccount) then 
        triggerClientEvent("panelLogin",source) 
    end 
end 
addEventHandler("onPlayerJoin",root,accountChecker) 
  
function accountCheckerOnStart (source) 
    for k,v in ipairs(getElementsByType("player")) do 
        sourceAccount = getPlayerAccount (v) 
        if isGuestAccount (sourceAccount) then 
            triggerClientEvent("panelLogin",v) 
        end 
    end 
end 
addEventHandler("onResourceStart",root,accountCheckerOnStart) 

[2014-07-31 10:51:09] WARNING: vDscript\gamemode\GMserver.lua:91: Bad argument @ 'getPlayerAccount' [Expected element at argument 1, got nil] 
[2014-07-31 10:51:09] WARNING: vDscript\gamemode\GMserver.lua:92: Bad argument @ 'isGuestAccount' [Expected account at argument 1, got boolean] 

  
--function accountChecker (source) 
    sourceAccount = getPlayerAccount (source) 
    if isGuestAccount (sourceAccount) then 
--        triggerClientEvent("panelLogin",source) 

Link to comment
  • MTA Team
Hidden

Saca a source de la funcion ya que ya esta pasando source al ser un evento de player.

function accountChecker () 
    sourceAccount = getPlayerAccount (source) 
    if isGuestAccount (sourceAccount) then 
        triggerClientEvent("panelLogin",source) 
    end 
end 
addEventHandler("onPlayerJoin",root,accountChecker) 

onPlayerJoinServerside event

This event is triggered when a player joins the server.

Parameters

No parameters.

Source

The source of this event is the player who joined.

Link to comment
  • Recently Browsing   0 members

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