Try this, NotTested:
Client:
addEvent( 'startCountdown', true )
addEventHandler( 'startCountdown', root,
function( )
local count = 5;
local curalpha = 0;
setTimer(
function( )
count = count - 1;
curalpha = 0;
playSound ( 'n' ..tostring( count )..'.mp3');
end, 1000, 5 );
local screenSize = { guiGetScreenSize( ) };
function renderCountdown( )
if count == 0 then
removeEventHandler( 'onClientRender', root, renderCountdown );
playSound ( 'go.mp3' );
elseif curalpha <= 235 then
curalpha = curalpha + 15
elseif count > -1 then
dxDrawText( count, screenSize[ 1 ] / 2 - 765 / 2, screenSize[ 2 ] / 2 - 539 / 2, 765, 539, tocolor( 255, 0, 0, curalpha ), 9.00, 'beckett', 'center', 'center', true, false, true, false, false );
end
end
addEventHandler( 'onClientRender', root, renderCountdown );
end
);
addEvent( "Exit1", true )
addEventHandler ( "Exit1", root,
function( )
local exitCount = 30;
function renderExitText( )
exitCount = exitCount - 0.5;
if exitCount == 0 then
removeEventHandler( 'onClientRender', root, renderExitText );
elseif exitCount > -1 then
dxDrawText("Has Salido de la Zona de Carrera", 300, 648, 1108, 698, tocolor(0, 0, 0, 255), 4.00, "default", "center", "center", true, false, true, false, false)
dxDrawText("Has Salido de la Zona de Carrera", 300, 646, 1108, 696, tocolor(0, 0, 0, 255), 4.00, "default", "center", "center", true, false, true, false, false)
dxDrawText("Has Salido de la Zona de Carrera", 298, 648, 1106, 698, tocolor(0, 0, 0, 255), 4.00, "default", "center", "center", true, false, true, false, false)
dxDrawText("Has Salido de la Zona de Carrera", 298, 646, 1106, 696, tocolor(0, 0, 0, 255), 4.00, "default", "center", "center", true, false, true, false, false)
dxDrawText("Has Salido de la Zona de Carrera", 299, 647, 1107, 697, tocolor(255, 0, 0, 255), 4.00, "default", "center", "center", true, false, true, false, false)
end
end
addEventHandler( 'onClientRender', root, renderExitText );
end
)
addEvent( "WinRace1", true )
addEventHandler( "WinRace1", root,
function( )
local winCount = 30;
playSound ( "win.mp3" );
function renderWinText( )
winCount = winCount - 0.5;
if winCount == 0 then
removeEventHandler( 'onClientRender', root, renderWinText );
elseif winCount > -1 then
dxDrawText("Enorabuena! Has Ganado la Carrera!", 295, 342, 1008, 392, tocolor(0, 0, 0, 255), 1.80, "pricedown", "center", "center", true, false, true, true, false)
dxDrawText("Enorabuena! Has Ganado la Carrera!", 295, 340, 1008, 390, tocolor(0, 0, 0, 255), 1.80, "pricedown", "center", "center", true, false, true, true, false)
dxDrawText("Enorabuena! Has Ganado la Carrera!", 293, 342, 1006, 392, tocolor(0, 0, 0, 255), 1.80, "pricedown", "center", "center", true, false, true, true, false)
dxDrawText("Enorabuena! Has Ganado la Carrera!", 293, 340, 1006, 390, tocolor(0, 0, 0, 255), 1.80, "pricedown", "center", "center", true, false, true, true, false)
dxDrawText("Enorabuena! Has Ganado la Carrera!", 294, 341, 1007, 391, tocolor(0, 255, 0, 255), 1.80, "pricedown", "center", "center", true, false, true, true, false)
end
end
addEventHandler( 'onClientRender', root, renderWinText );
end
);
addEvent( "Enter1", true )
addEventHandler( "Enter1", root,
function( )
local enterCount = 30;
function renderEnterText( )
enterCount = enterCount - 0.5;
if enterCount == 0 then
removeEventHandler( 'onClientRender', root, renderEnterText );
elseif enterCount > -1 then
dxDrawText("Has Entrado a la Zona de Carrera", 300, 648, 1108, 698, tocolor(0, 0, 0, 255), 4.00, "default", "center", "center", true, false, true, false, false)
dxDrawText("Has Entrado a la Zona de Carrera", 300, 646, 1108, 696, tocolor(0, 0, 0, 255), 4.00, "default", "center", "center", true, false, true, false, false)
dxDrawText("Has Entrado a la Zona de Carrera", 298, 648, 1106, 698, tocolor(0, 0, 0, 255), 4.00, "default", "center", "center", true, false, true, false, false)
dxDrawText("Has Entrado a la Zona de Carrera", 298, 646, 1106, 696, tocolor(0, 0, 0, 255), 4.00, "default", "center", "center", true, false, true, false, false)
dxDrawText("Has Entrado a la Zona de Carrera", 299, 647, 1107, 697, tocolor(0, 255, 0, 255), 4.00, "default", "center", "center", true, false, true, false, false)
end
end
addEventHandler( 'onClientRender', root, renderEnterText );
end
);
Server:
function eventoFalse(source, cmd, ...)
for _, group in ipairs ( { "Adm.Plasma", "SMod.Plasma", "Mod.Plasma", "D.Plasma", "SL.Plasma", "SD.Plasma", "L.Plasma" } ) do
local playerAccount = getPlayerAccount( source )
if not( playerAccount ) then return end
local accountName = getAccountName(playerAccount)
if isObjectInACLGroup ( "user.".. accountName, aclGetGroup ( group ) ) then
if (isElement(theMarker)) then
destroyElement(theMarker)
local nombre2 = getPlayerName(source)
outputChatBox("#FF0000[Atencion] La Carrera Se Ha Cancelado Por #0000FF"..nombre2.."#00FF00.", getRootElement(), 255, 255, 255, true)
removeCommandHandler("eliminar")
end
end
end
end
addCommandHandler ("eliminar", eventoFalse)
function eventoTrue ()
theColShape = createColCuboid (2462.4877929688, -1716.8363037109, 13.513750076294, 40.0, 40.0, 40.0)
theMarker = createMarker ( 2429.3806152344, -1659.1734619141, 13.3828125, "checkpoint", 2, 255, 0, 0, 100 )
addEventHandler ("onColShapeHit", getRootElement(), enterAreaRace1)
outputChatBox("#FF0000[Atencion]#00FF00Una Carrera Va a Dar Comienzo Preparate!!!", getRootElement(), 255, 255, 255, true)
outputChatBox("#00FF00Pon #0000FF/carrera #00FF00Para Para Participar.", getRootElement(), 255, 255, 255, true)
addCommandHandler("carrera", eventowarp)
end
addCommandHandler("carrera1", eventoTrue)
function enterAreaRace1()
if isElement(theColShape) then
triggerClientEvent ("Enter1", getRootElement(), true)
if timeon then
outputChatBox ("#FF0000La Carrera Empieza en 1 Minuto, #00FF00Escoge un Infernus y Preparate!", source, 255, 255, 255, true)
if timebegin then
triggerClientEvent ( "startCountdown", source, true )
winmarker1 = createMarker (213.96672058105, 1873.9555664063, 13.140625, "checkpoint", 8.0, 255, 0, 0, 255)
createBlipAttachedTo (winmarker1, 41, 2)
else
addEventHandler ("onColShapeLeave", getRootElement(), enterRaceArea1)
triggerClientEvent ("Exit1", getRootElement(), true)
removeEventHandler ("onMarkerHit", getRootElement(), winRace)
end
end
end
end
function winRace()
if winmarker1 then
addEventHandler ("onMarkerHit", getRootElement(), winRace)
setPlayerMoney (source, 20000)
local accname = getPlayerAccount (source)
aclGroupAddObject (aclGetGroup("Pro"), "user."..accname)
triggerClientEvent ("WinRace1", source, true)
end
end
function eventowarp()
if isElement(theMarker) then
setElementPosition (source, 2429.3806152344, -1659.1734619141, 13.3828125)
timeon = setTimer (theMarker, 50000, 1)
timebegin = setTimer (timeon, 60000, 1)
if timeon then
outputChatBox ("#FF0000La Carrera Empieza en 1 Minuto, #00FF00Escoge un Infernus y Preparate!", source, 255, 255, 255, true)
if timebegin then
triggerClientEvent ( "startCountdown", source, true )
end
end
end
end