Jump to content

[[Ayuda~ Poner Musica En Login~]]


DarkNeSsOak

Recommended Posts

Ayuda porfavor como pongo musica en Login :)

Server side:

function addNotification(player, text, type)
	if (player and text and type) then
		triggerClientEvent(player, 'addNotification', player, text, type);
	end
end


function loginPlayer(source, username, password)

			local account = getAccount ( username )
			
			if ( account ~= false ) then
			local account = getAccount ( username, password )
			if ( account ~= false ) then
			    addNotification(source, "Te has logeado correctamente!", "success")
				logIn (source, account, password)
				triggerClientEvent("belepesfunkctsiker", source)
			else
			addNotification(source, "Contraseña Incorrecta!", "error")
			end
			else
			addNotification(source, "Contraseña Incorrecta!", "error")
			end
			
end

addEvent("attemptLogin", true)
addEventHandler("attemptLogin", getRootElement(), loginPlayer)

function registerPlayer(source, username, password)
local account = getAccount (username)
if (account == false) then
local accountAdded = addAccount(tostring(username),tostring(password))
if (accountAdded) then
triggerClientEvent("belepesfunkctsikerregisztracio", source)
addNotification(source, "Has creado la cuenta correctamente! Logeate para obtener tu nueva cuenta.", "success")
else

addNotification(source, "Un error a ocurrido!", "error")

end

else
addNotification(source, "Una cuenta con el Username que ingreso ya existe!", "error")


end
end

addEvent("attemptRegister", true)
addEventHandler("attemptRegister", getRootElement(), registerPlayer)

addEventHandler("onPlayerCommand", root,
function(cmd)
     if cmd == "logout" then
          cancelEvent()
     elseif cmd == "register" then
          cancelEvent()
	     elseif cmd == "login" then
          cancelEvent()
		 
     end
end)

 

 

Client Side:

 

local screenWidth, screenHeight = guiGetScreenSize()

local page = "http://mta/local/index.html"
local initBrowser = guiCreateBrowser(0, 0, screenWidth, screenHeight, true, true, false)

local theBrowser = guiGetBrowser(initBrowser)

addEventHandler("onClientBrowserCreated", theBrowser, 
	function()
		loadBrowserURL(source, page)
		showCursor(true)
		guiSetInputEnabled(true)

addNotification("Porfavor Crea una cuenta o logeate!", "info")

	end
)


function belepesfunkc(UsernameValue, PasswordValue)
username = tostring(UsernameValue)
password = tostring(PasswordValue)
UsernameValue = nil
PasswordValue = nil

if (string.len(username)<4) then
addNotification("Username should be at least 4 characters long.", "warning")
elseif (string.len(username)>35) then
addNotification("Username not be longer than 35 characters.", "warning")
elseif (string.len(password)<4) then
addNotification("Password should be at least 4 characters long.", "warning")
elseif (string.len(password)>35) then
addNotification("Password not be longer than 35 characters.", "warning")
else
triggerServerEvent("attemptLogin", getRootElement(), getLocalPlayer(), username, password)
end

end

addEvent("belepesfunkc", true)
addEventHandler("belepesfunkc", root, belepesfunkc)


function belepesfunkct()
destroyElement(initBrowser)
destroyElement(zene)
guiSetInputEnabled(false)
showCursor(false)
end

addEvent("belepesfunkctsiker", true)
addEventHandler("belepesfunkctsiker", getLocalPlayer(), belepesfunkct)

function belepesfunkctsikerregisztraciohandler()
executeBrowserJavascript ( theBrowser, "gotologinfromregister()" )
end

addEvent("belepesfunkctsikerregisztracio", true)
addEventHandler("belepesfunkctsikerregisztracio", getLocalPlayer(), belepesfunkctsikerregisztraciohandler)

function belepesfunkcregisztral(UsernameValue, PasswordValue, PasswordConfirmValue)
username = tostring(UsernameValue)
password = tostring(PasswordValue)
passwordC = tostring(PasswordConfirmValue)
UsernameValue = nil
PasswordValue = nil
PasswordConfirmValue = nil

if (string.len(username)<4) then
addNotification("El nombre de usuario debe tener al menos 4 caracteres.", "warning")
elseif (string.len(username)>35) then
addNotification("El nombre de usuario no debe tener más de 35 caracteres.", "warning")
elseif (string.len(password)<4) then
addNotification("La contraseña debe tener al menos 4 caracteres.", "warning")
elseif (string.len(password)>35) then
addNotification("La contraseña no debe tener más de 35 caracteres.", "warning")
elseif (password ~= passwordC) then
addNotification("Las contraseñas no coinciden.", "error")
else
triggerServerEvent("attemptRegister", getRootElement(), getLocalPlayer(), username, password)
end

end

addEvent("belepesfunkcregisztral", true)
addEventHandler("belepesfunkcregisztral", root, belepesfunkcregisztral)

local displayWidth, displayHeight = guiGetScreenSize();

local notificationData = {};

local notificationFont = dxCreateFont('files/fonts/roboto.ttf', 12 * 2, false);
local iconsFont = dxCreateFont('files/fonts/icons.ttf', 12 * 2, false);

addEventHandler('onClientRender', root,
	function()
		for k, v in pairs(notificationData) do
			if (v.State == 'fadeIn') then
				local alphaProgress = (getTickCount() - v.AlphaTick) / 650;
				local alphaAnimation = interpolateBetween(0, 0, 0, 255, 0, 0, alphaProgress, 'Linear');
				
				if (alphaAnimation) then
					v.Alpha = alphaAnimation;
				else
					v.Alpha = 255;
				end
				
				if (alphaProgress > 1) then
					v.Tick = getTickCount();
					v.State = 'openTile';
				end
			elseif (v.State == 'fadeOut') then
				local alphaProgress = (getTickCount() - v.AlphaTick) / 650;
				local alphaAnimation = interpolateBetween(255, 0, 0, 0, 0, 0, alphaProgress, 'Linear');
				
				if (alphaAnimation) then
					v.Alpha = alphaAnimation;
				else
					v.Alpha = 0;
				end
				
				if (alphaProgress > 1) then
					notificationData = {};
				end
			elseif (v.State == 'openTile') then
				local tileProgress = (getTickCount() - v.Tick) / 350;
				local tilePosition = interpolateBetween(v.StartX, 0, 0, v.EndX, 0, 0, tileProgress, 'Linear');
				local tileWidth = interpolateBetween(0, 0, 0, v.Width, 0, 0, tileProgress, 'Linear');
				
				if (tilePosition and tileWidth) then
					v.CurrentX = tilePosition;
					v.CurrentWidth = tileWidth;
				else
					v.CurrentX = v.EndX;
					v.CurrentWidth = v.Width;
				end
				
				if (tileProgress > 1) then
					v.State = 'fixTile';
					
					setTimer(function()
						v.Tick = getTickCount();
						v.State = 'closeTile';
					end, string.len(v.Text) * 45 + 5000, 1);
				end
			elseif (v.State == 'closeTile') then
				local tileProgress = (getTickCount() - v.Tick) / 350;
				local tilePosition = interpolateBetween(v.EndX, 0, 0, v.StartX, 0, 0, tileProgress, 'Linear');
				local tileWidth = interpolateBetween(v.Width, 0, 0, 0, 0, 0, tileProgress, 'Linear');
				
				if (tilePosition and tileWidth) then
					v.CurrentX = tilePosition;
					v.CurrentWidth = tileWidth;
				else
					v.CurrentX = v.StartX;
					v.CurrentWidth = 0;
				end
				
				if (tileProgress > 1) then
					v.AlphaTick = getTickCount();
					v.State = 'fadeOut';
				end
			elseif (v.State == 'fixTile') then
				v.Alpha = 255;
				v.CurrentX = v.EndX;
				v.CurrentWidth = v.Width;
			end
			
			roundedRectangle(v.CurrentX, 20, 25 + v.CurrentWidth, 25, tocolor(0, 0, 0, 150 * v.Alpha / 255), _, true);
			dxDrawRectangle(v.CurrentX, 20, 25, 25, tocolor(0, 0, 0, 255 * v.Alpha / 255), true);
			
			if (v.Alpha == 255) then
				dxDrawText(v.Text, v.CurrentX + 25 + 10, 20, v.CurrentX + 25 + 10 + v.CurrentWidth - 20, 20 + 25, tocolor(255, 255, 255, 255), 0.40, notificationFont, 'center', 'center', true, false, true);
			end
			
			if (v.Type == 'error') then
				dxDrawText('', v.CurrentX + 5, 20, v.CurrentX + 5 + 25 - 10, 20 + 25, tocolor(215, 90, 90, v.Alpha), 0.50, iconsFont, 'center', 'center', false, false, true);
			elseif (v.Type == 'warning') then
				dxDrawText('', v.CurrentX + 5, 20, v.CurrentX + 5 + 25 - 10, 20 + 25, tocolor(220, 180, 80, v.Alpha), 0.50, iconsFont, 'center', 'center', false, false, true);
			elseif (v.Type == 'info') then
				dxDrawText('', v.CurrentX + 5, 20, v.CurrentX + 5 + 25 - 10, 20 + 25, tocolor(85, 180, 245, v.Alpha), 0.50, iconsFont, 'center', 'center', false, false, true);
			elseif (v.Type == 'success') then
				dxDrawText('', v.CurrentX + 5, 20, v.CurrentX + 5 + 25 - 10, 20 + 25, tocolor(80, 205, 105, v.Alpha), 0.50, iconsFont, 'center', 'center', false, false, true);
			end
		end
	end
)

addEvent('addNotification', true);
function addNotification(text, type)
	if (text and type) then
		if (notificationData ~= nil) then
			table.remove(notificationData, #notificationData);
		end
		
		table.insert(notificationData,
			{
				StartX = (displayWidth / 2) - (25 / 2),
				EndX = (displayWidth / 2) - ((dxGetTextWidth(text, 0.40, notificationFont) + 20 + 25) / 2),
				Text = text,
				Width = dxGetTextWidth(text, 0.40, notificationFont) + 20,
				Alpha = 0,
				State = 'fadeIn',
				Tick = 0,
				AlphaTick = getTickCount(),
				CurrentX = (displayWidth / 2) - (25 / 2),
				CurrentWidth = 0,
				Type = type or 'info'
			}
		);
		
		playSoundFrontEnd(11);
	end
end
addEventHandler('addNotification', root, addNotification);

function roundedRectangle(x, y, w, h, borderColor, bgColor, postGUI)
	if (x and y and w and h) then
		if (not borderColor) then
			borderColor = tocolor(0, 0, 0, 200);
		end
		
		if (not bgColor) then
			bgColor = borderColor;
		end
		
		--> Background
		dxDrawRectangle(x, y, w, h, bgColor, postGUI);
		
		--> Border
		dxDrawRectangle(x + 2, y - 1, w - 4, 1, borderColor, postGUI); -- top
		dxDrawRectangle(x + 2, y + h, w - 4, 1, borderColor, postGUI); -- bottom
		dxDrawRectangle(x - 1, y + 2, 1, h - 4, borderColor, postGUI); -- left
		dxDrawRectangle(x + w, y + 2, 1, h - 4, borderColor, postGUI); -- right
	end
end

 

Les agradeceria la ayuda :)

Link to comment

También puedes poner esa función en una parte del login cuando aparece..

 

acá te dejo un pequeño ejempleo del playSound quizás te sirva en otra ocasiones..

addEventHandler("onClientPlayerJoin", root,
	function()
		local sound = playSound("http://youtubeinmp3.com/fetch/?video%3Dhttp://www.youtube.com/watch?v%3D57UZVVvtX-M", true) --Play wasted.mp3 from the sounds folder default: playSound("folder/music.mp3") 
		setSoundVolume(sound, 0.5) -- set the sound volume to 50%
		outputChatBox("el jugador (".. getPlayerName(source)..") entro al juego.", source, 0, 255, 0, true)
	end
)

 

Tú código ya lo adapte.

local screenWidth, screenHeight = guiGetScreenSize()

local page = "http://mta/local/index.html"
local initBrowser = guiCreateBrowser(0, 0, screenWidth, screenHeight, true, true, false)

local theBrowser = guiGetBrowser(initBrowser)

addEventHandler("onClientBrowserCreated", theBrowser, 
	function()
		loadBrowserURL(source, page)
		showCursor(true)
		guiSetInputEnabled(true)
		local sound = playSound("http://youtubeinmp3.com/fetch/?video%3Dhttp://www.youtube.com/watch?v%3D57UZVVvtX-M", true) --Play wasted.mp3 from the sounds folder default: playSound("folder/music.mp3") 
		setSoundVolume(sound, 0.5) -- set the sound volume to 50%
addNotification("Porfavor Crea una cuenta o logeate!", "info")

	end
)


function belepesfunkc(UsernameValue, PasswordValue)
username = tostring(UsernameValue)
password = tostring(PasswordValue)
UsernameValue = nil
PasswordValue = nil

if (string.len(username)<4) then
addNotification("Username should be at least 4 characters long.", "warning")
elseif (string.len(username)>35) then
addNotification("Username not be longer than 35 characters.", "warning")
elseif (string.len(password)<4) then
addNotification("Password should be at least 4 characters long.", "warning")
elseif (string.len(password)>35) then
addNotification("Password not be longer than 35 characters.", "warning")
else
triggerServerEvent("attemptLogin", getRootElement(), getLocalPlayer(), username, password)
end

end

addEvent("belepesfunkc", true)
addEventHandler("belepesfunkc", root, belepesfunkc)


function belepesfunkct()
destroyElement(initBrowser)
destroyElement(zene)
guiSetInputEnabled(false)
showCursor(false)
end

addEvent("belepesfunkctsiker", true)
addEventHandler("belepesfunkctsiker", getLocalPlayer(), belepesfunkct)

function belepesfunkctsikerregisztraciohandler()
executeBrowserJavascript ( theBrowser, "gotologinfromregister()" )
end

addEvent("belepesfunkctsikerregisztracio", true)
addEventHandler("belepesfunkctsikerregisztracio", getLocalPlayer(), belepesfunkctsikerregisztraciohandler)

function belepesfunkcregisztral(UsernameValue, PasswordValue, PasswordConfirmValue)
username = tostring(UsernameValue)
password = tostring(PasswordValue)
passwordC = tostring(PasswordConfirmValue)
UsernameValue = nil
PasswordValue = nil
PasswordConfirmValue = nil

if (string.len(username)<4) then
addNotification("El nombre de usuario debe tener al menos 4 caracteres.", "warning")
elseif (string.len(username)>35) then
addNotification("El nombre de usuario no debe tener más de 35 caracteres.", "warning")
elseif (string.len(password)<4) then
addNotification("La contraseña debe tener al menos 4 caracteres.", "warning")
elseif (string.len(password)>35) then
addNotification("La contraseña no debe tener más de 35 caracteres.", "warning")
elseif (password ~= passwordC) then
addNotification("Las contraseñas no coinciden.", "error")
else
triggerServerEvent("attemptRegister", getRootElement(), getLocalPlayer(), username, password)
end

end

addEvent("belepesfunkcregisztral", true)
addEventHandler("belepesfunkcregisztral", root, belepesfunkcregisztral)

local displayWidth, displayHeight = guiGetScreenSize();

local notificationData = {};

local notificationFont = dxCreateFont('files/fonts/roboto.ttf', 12 * 2, false);
local iconsFont = dxCreateFont('files/fonts/icons.ttf', 12 * 2, false);

addEventHandler('onClientRender', root,
	function()
		for k, v in pairs(notificationData) do
			if (v.State == 'fadeIn') then
				local alphaProgress = (getTickCount() - v.AlphaTick) / 650;
				local alphaAnimation = interpolateBetween(0, 0, 0, 255, 0, 0, alphaProgress, 'Linear');
				
				if (alphaAnimation) then
					v.Alpha = alphaAnimation;
				else
					v.Alpha = 255;
				end
				
				if (alphaProgress > 1) then
					v.Tick = getTickCount();
					v.State = 'openTile';
				end
			elseif (v.State == 'fadeOut') then
				local alphaProgress = (getTickCount() - v.AlphaTick) / 650;
				local alphaAnimation = interpolateBetween(255, 0, 0, 0, 0, 0, alphaProgress, 'Linear');
				
				if (alphaAnimation) then
					v.Alpha = alphaAnimation;
				else
					v.Alpha = 0;
				end
				
				if (alphaProgress > 1) then
					notificationData = {};
				end
			elseif (v.State == 'openTile') then
				local tileProgress = (getTickCount() - v.Tick) / 350;
				local tilePosition = interpolateBetween(v.StartX, 0, 0, v.EndX, 0, 0, tileProgress, 'Linear');
				local tileWidth = interpolateBetween(0, 0, 0, v.Width, 0, 0, tileProgress, 'Linear');
				
				if (tilePosition and tileWidth) then
					v.CurrentX = tilePosition;
					v.CurrentWidth = tileWidth;
				else
					v.CurrentX = v.EndX;
					v.CurrentWidth = v.Width;
				end
				
				if (tileProgress > 1) then
					v.State = 'fixTile';
					
					setTimer(function()
						v.Tick = getTickCount();
						v.State = 'closeTile';
					end, string.len(v.Text) * 45 + 5000, 1);
				end
			elseif (v.State == 'closeTile') then
				local tileProgress = (getTickCount() - v.Tick) / 350;
				local tilePosition = interpolateBetween(v.EndX, 0, 0, v.StartX, 0, 0, tileProgress, 'Linear');
				local tileWidth = interpolateBetween(v.Width, 0, 0, 0, 0, 0, tileProgress, 'Linear');
				
				if (tilePosition and tileWidth) then
					v.CurrentX = tilePosition;
					v.CurrentWidth = tileWidth;
				else
					v.CurrentX = v.StartX;
					v.CurrentWidth = 0;
				end
				
				if (tileProgress > 1) then
					v.AlphaTick = getTickCount();
					v.State = 'fadeOut';
				end
			elseif (v.State == 'fixTile') then
				v.Alpha = 255;
				v.CurrentX = v.EndX;
				v.CurrentWidth = v.Width;
			end
			
			roundedRectangle(v.CurrentX, 20, 25 + v.CurrentWidth, 25, tocolor(0, 0, 0, 150 * v.Alpha / 255), _, true);
			dxDrawRectangle(v.CurrentX, 20, 25, 25, tocolor(0, 0, 0, 255 * v.Alpha / 255), true);
			
			if (v.Alpha == 255) then
				dxDrawText(v.Text, v.CurrentX + 25 + 10, 20, v.CurrentX + 25 + 10 + v.CurrentWidth - 20, 20 + 25, tocolor(255, 255, 255, 255), 0.40, notificationFont, 'center', 'center', true, false, true);
			end
			
			if (v.Type == 'error') then
				dxDrawText('', v.CurrentX + 5, 20, v.CurrentX + 5 + 25 - 10, 20 + 25, tocolor(215, 90, 90, v.Alpha), 0.50, iconsFont, 'center', 'center', false, false, true);
			elseif (v.Type == 'warning') then
				dxDrawText('', v.CurrentX + 5, 20, v.CurrentX + 5 + 25 - 10, 20 + 25, tocolor(220, 180, 80, v.Alpha), 0.50, iconsFont, 'center', 'center', false, false, true);
			elseif (v.Type == 'info') then
				dxDrawText('', v.CurrentX + 5, 20, v.CurrentX + 5 + 25 - 10, 20 + 25, tocolor(85, 180, 245, v.Alpha), 0.50, iconsFont, 'center', 'center', false, false, true);
			elseif (v.Type == 'success') then
				dxDrawText('', v.CurrentX + 5, 20, v.CurrentX + 5 + 25 - 10, 20 + 25, tocolor(80, 205, 105, v.Alpha), 0.50, iconsFont, 'center', 'center', false, false, true);
			end
		end
	end
)

addEvent('addNotification', true);
function addNotification(text, type)
	if (text and type) then
		if (notificationData ~= nil) then
			table.remove(notificationData, #notificationData);
		end
		
		table.insert(notificationData,
			{
				StartX = (displayWidth / 2) - (25 / 2),
				EndX = (displayWidth / 2) - ((dxGetTextWidth(text, 0.40, notificationFont) + 20 + 25) / 2),
				Text = text,
				Width = dxGetTextWidth(text, 0.40, notificationFont) + 20,
				Alpha = 0,
				State = 'fadeIn',
				Tick = 0,
				AlphaTick = getTickCount(),
				CurrentX = (displayWidth / 2) - (25 / 2),
				CurrentWidth = 0,
				Type = type or 'info'
			}
		);
		
		playSoundFrontEnd(11);
	end
end
addEventHandler('addNotification', root, addNotification);

function roundedRectangle(x, y, w, h, borderColor, bgColor, postGUI)
	if (x and y and w and h) then
		if (not borderColor) then
			borderColor = tocolor(0, 0, 0, 200);
		end
		
		if (not bgColor) then
			bgColor = borderColor;
		end
		
		--> Background
		dxDrawRectangle(x, y, w, h, bgColor, postGUI);
		
		--> Border
		dxDrawRectangle(x + 2, y - 1, w - 4, 1, borderColor, postGUI); -- top
		dxDrawRectangle(x + 2, y + h, w - 4, 1, borderColor, postGUI); -- bottom
		dxDrawRectangle(x - 1, y + 2, 1, h - 4, borderColor, postGUI); -- left
		dxDrawRectangle(x + w, y + 2, 1, h - 4, borderColor, postGUI); -- right
	end
end

 

Edited by MarkFlash
Link to comment
  • Recently Browsing   0 members

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