Jump to content

Client (playerName) triggered serverside event


Recommended Posts

Error: https://imgur.com/JjjGaVl

Hello, this error pops up in the login panel, but it does not provide the entire panel panel. Please correct any mistakes.
Where is wrong code?


c.lua

function auth(username, password)
	if not username then
		responseServerValue(source, "Błąd logowania. Kod błędu [ERR_A1]")
		return
	end
	if not password then
		responseServerValue(source, "Błąd logowania. Kod błędu [ERR_A2]")
		return
	end

	local q = exports.["pystories-db"]:mysql_query("SELECT * FROM pystories_users WHERE login=? AND password=?", username, md5(password))
	if #q > 1 then -- Znaleziono więcej niż 1 usera o podanej kombinacji loginu i hasła
		responseServerValue(source, "Błąd logowania. Kod błędu [ERR_A3]")

	elseif #q < 1 then -- Nie znaleziono żadnego usera o podanej kombinacji loginu i hasła
		responseServerValue(source, "Taki użytkownik nie istnieje")
	
	else -- Jest tylko jeden user! Hura!
		local player = source
		if not player then return end

		setElementData(player, "player:sid", q[1].sid)

		if string.len(q[1].imie) < 3 then
			triggerClientEvent(player, "openAcc", player)
			return 
		end
		

		local pos = split(q[1].position, ",")
		spawnPlayer(player, pos[1], pos[2], pos[3], pos[4], q[1].skin, pos[5], pos[6])
		setCameraTarget(player, player)
		setElementHealth(player, q[1].health)

		-- Tutaj reszta ladowania się
		setElementData(player, "user:imie", q[1].imie)
		setElementData(player, "user:nazwisko", q[1].nazwisko)
		setElementData(player, "user:plec", q[1].plec)


		triggerClientEvent(player, "destroyLogin", player)
	end
end
addEvent("auth", true)
addEventHandler("auth", getRootElement(), auth)


function register(username, password)
	if not username then
		responseServerValue(source,"Błąd rejestracji. Kod błędu [ERR_R1]")
		return
	end
	if not password then
		responseServerValue(source, "Błąd rejestracji. Kod błędu [ERR_R2]")
		return
	end
	local q1 = exports.["pystories-db"]:mysql_query("SELECT sid FROM pystories_users WHERE login=?", username)
	if not q1 then
		responseServerValue(source, "Błąd rejestracji. Kod błędu [ERR_R4]")
		return
	elseif #q1 > 0 then
		responseServerValue(source,"Podany login jest już w użyciu")
		return
	end

	local serial = getPlayerSerial(source)
	local q3 = exports.["pystories-db"]:mysql_query("INSERT INTO pystories_users SET login=?, password=?, serial=?, position=?", username, md5(password), serial, "175.04,-1912.49,13.56,188,0,0") -- Pozycja startu
	if q3 then
		responseServerValue(source, "Twoje konto zostało poprawnie utworzone \nMożesz się teraz zalogować i utworzyć swoją postać")
	else
		responseServerValue(source, "Błąd rejestracji. Kod błędu [ERR_R7]")
	end
end
addEvent("register", true)
addEventHandler("register", getRootElement(), register)


function accCreate(imie, nazwisko, plec, skin, username, password)
	local sid = getElementData(source, "player:sid")
	imie = string.lower(imie)
	nazwisko = string.lower(nazwisko)
	imie = imie:gsub("^%l", string.upper)
	nazwisko = nazwisko:gsub("^%l", string.upper)

	local q3 = exports.["pystories-db"]:mysql_query("SELECT imie AND nazwisko FROM accounts WHERE imie=? AND nazwisko=?", imie, nazwisko)
	if not q3 then
		responseServerValue(source, "Błąd rejestracji. Kod błędu [ERR_C1]")
		return
	elseif #q3 > 0 then
		responseServerValue(source, "Osoba o takim imieniu i nazwisku już istnieje")
		return
	end

	local q3 = exports.["pystories-db"]:mysql_query("UPDATE pystories_users SET imie=?, nazwisko=?, plec=?, skin=? WHERE sid=?", imie, nazwisko, plec, skin, sid)
	if q3 then
		auth(username, password)
	else
		responseServerValue(source,"Błąd rejestracji. Kod błędu [ERR_C2]")
	end
end
addEvent("accCreate", true)
addEventHandler("accCreate", getRootElement(), accCreate)


function quit(quitType)
    local sid = getElementData(source, "player:sid")
	local x,y,z = getElementPosition(source)
	local _,_,rz = getElementRotation(source)
	local int = getElementInterior(source)
	local dim = getElementDimension(source)
    local health = getElementHealth(source)

	local pos = string.format("%d, %d, %d, %d, %d, %d", x,y,z,rz,int,dim)

	local q = exports.["pystories-db"]:mysql_query("UPDATE pystories_users SET position=?, health=? WHERE sid=?", pos, health, sid)
	if not q then
		print("### [pystories_users] Błąd zapisu gracza o SID: "..sid)
	end
end
addEventHandler("onPlayerQuit", getRootElement(), quit)


function responseServerValue(plr, msg)
    triggerClientEvent(plr, "loginMessage", plr, msg)
end

 

Link to comment
  • IIYAMA locked this topic
Guest
This topic is now closed to further replies.
  • Recently Browsing   0 members

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