Jump to content

i,xAhmed

Members
  • Posts

    588
  • Joined

  • Last visited

Everything posted by i,xAhmed

  1. طيب م فيه كود يسوي ريستارت كل 24 ساعه
  2. من آلممكن , لاكن انا م سرقت ولا اخذت مودات
  3. آبي طريقة آو كود آخلي السيرفر كل 24 ساعه يسوي ريستارت مثلا الساعه 7 الصبح يسوي ريستارت
  4. مسروقة ؟ ي بوي لا تدرك آلهيآط هذي حياة واقعية بس فيه مشكلة باللوحة انا مشتري السيرفر من استضافة وجآني كذا مو عآجبك لا تساعد
  5. الكود كلنت --Globals local lUsername, tUsername, lPassword, tPassword, chkRememberLogin, bLogin, bRegister, defaultingTimer = nil local newsTitle, newsText, newsAuthor local loginTitleText = "WnAsH-Time MTA Roleplay" --Settings block for c_characters.lua/line 87 endCam = { [0] = {591.1669921875, -1827.3310546875, 10.137532234191, 570.09375, -1849.947265625, 4.968677997}, [1] = {2511.8854980469, -1679.1414794922, 17.823833465576, 2425.4426269531, -1641.1086425781, -15.056860923767}, [2] = {1553.4459228516, -1365.8366699219, 332.95718383789, 1495.1271972656, -1295.9808349609, 291.49520874023}, [3] = {-2233.2431640625, -1705.6872558594, 484.6149597168, -2268.3579101563, -1797.0213623047, 463.99838256836}, } startCam = { [0] = {1309.4599609375, -2123.7509765625, 106.98361206055, 1309.53515625, -1818.5615234375, 76.211189270 }, [1] = {2637.0703125, -1719.1510009766, 90.978698730469, 2636.2329101563, -1718.8670654297, 90.511764526367}, [2] = {1862.1447753906, -1743.5769042969, 616.80279541016, 1807.4505615234, -1676.6506347656, 566.50939941406}, [3] = {-1553.6662597656, -1547.2840576172, 76.449432373047, -1653.0958251953, -1555.7768554688, 69.997413635254}, } originalStartCam = { [0] = {1309.4599609375, -2123.7509765625, 106.98361206055, 1309.53515625, -1818.5615234375, 76.211189270 }, [1] = {2637.0703125, -1719.1510009766, 90.978698730469, 2636.2329101563, -1718.8670654297, 90.511764526367}, [2] = {1862.1447753906, -1743.5769042969, 616.80279541016, 1807.4505615234, -1676.6506347656, 566.50939941406}, [3] = {-1553.6662597656, -1547.2840576172, 76.449432373047, -1653.0958251953, -1555.7768554688, 69.997413635254}, } pedPos = { [0] = {581.5712890625, -1835.89453125, 5.6328125, 306.9929}, [1] = {2502.59765625, -1679.40234375, 13.375785827637, 256.50445556641}, [2] = {1549.615234375, -1362.326171875, 329.45889282227, 202.84092712402}, [3] = {-2236.76171875, -1710.3046875, 480.88693237305, 310.16250610352}, } globalspeed = 25 --Higher value = slower speed = {} doneCam = { [0] = {false, false, false, false, false, false}, [1] = {false, false, false, false, false, false}, [2] = {false, false, false, false, false, false}, [3] = {false, false, false, false, false, false}, } function getSelectionScreenID() return 2 end -------------------------------------------- function blackoutOnJoin () -- end addEventHandler ( "onPlayerJoin", getRootElement(), blackoutOnJoin) addEventHandler("accounts:login:request", getRootElement(), function () setElementDimension ( getLocalPlayer(), 0 ) setElementInterior( getLocalPlayer(), 0 ) --setElementPosition( getLocalPlayer(), -262, -1143, 24) --setCameraMatrix(-262, -1143, 24, -97, -1167, 2) setElementPosition( getLocalPlayer(), 1480, -1688, 13 ) setCameraMatrix (originalStartCam[selectionScreenID][2], originalStartCam[selectionScreenID][2], originalStartCam[selectionScreenID][3], originalStartCam[selectionScreenID][4], originalStartCam[selectionScreenID][5], originalStartCam[selectionScreenID][6]) guiSetInputEnabled(true) clearChat() triggerServerEvent("onJoin", getLocalPlayer()) --LoginScreen_openLoginScreen() end ); --[[ LoginScreen_openLoginScreen( ) - Open the login screen ]]-- local wLogin, lUsername, tUsername, lPassword, tPassword, chkRememberLogin, bLogin, bRegister--[[, updateTimer]] = nil function LoginScreen_openLoginScreen(title) open_log_reg_pannel() --[[ guiSetInputEnabled(true) showCursor(true) if not title then local width, height = guiGetScreenSize() local logoW, logoH = 372, 90 local logoPosX = width/2 - 186 local logoPosY = height/2- 140 iLogo = guiCreateStaticImage(logoPosX, logoPosY, logoW, logoH, "img/OGLogo.png", false) lUsername = guiCreateLabel(0.4110, 0.4800, 1, 0.5000, "Username", true) guiSetFont(lUsername, "default-bold-small") tUsername = guiCreateEdit(0.3680, 0.5000, 0.1300, 0.0350, "Username", true) guiSetFont(tUsername, "default-bold-small") guiEditSetMaxLength(tUsername, 32) addEventHandler("onClientGUIAccepted", tUsername, checkCredentials, false) lPassword = guiCreateLabel(0.5460, 0.4800, 1, 0.5000, "Password", true) guiSetFont(lPassword, "default-bold-small") tPassword = guiCreateEdit(0.5000, 0.5000, 0.1300, 0.0350, "Password", true) guiSetFont(tPassword, "default-bold-small") guiEditSetMasked(tPassword, true) guiEditSetMaxLength(tPassword, 64) addEventHandler("onClientGUIAccepted", tPassword, checkCredentials, false) chkRememberLogin = guiCreateCheckBox(0.4610, 0.5650, 0.1300, 0.0350, "Remember Me", false, true) guiSetFont(chkRememberLogin, "default-bold-small") bLogin = guiCreateButton(0.4330, 0.5400, 0.0650, 0.0300, "Login", true) guiSetFont(bLogin, "default-bold-small") addEventHandler("onClientGUIClick", bLogin, checkCredentials, false) bRegister = guiCreateButton(0.5000, 0.5400, 0.0650, 0.0300, "Register", true) guiSetFont(bRegister, "default-bold-small") addEventHandler("onClientGUIClick", bRegister, LoginScreen_Register, false) guiSetText(tUsername, tostring( loadSavedData("username", "") )) local tHash = tostring( loadSavedData("hashcode", "") ) guiSetText(tPassword, tHash) if #tHash > 1 then guiCheckBoxSetSelected(chkRememberLogin, true) end newsTitle = getElementData(getResourceRootElement(), "news:title") newsText = getElementData(getResourceRootElement(), "news:text") newsAuthor = getElementData(getResourceRootElement(), "news:sub") addEventHandler("onClientRender", getRootElement(), showLoginTitle) triggerEvent("accounts:settings:loadGraphicSettings", getLocalPlayer()) else loginTitleText = title addEventHandler("onClientRender", getRootElement(), showLoginTitle) end ]] end addEvent("beginLogin", true) addEventHandler("beginLogin", getRootElement(), LoginScreen_openLoginScreen) function showLoginTitle() --[[ local screenX, screenY = guiGetScreenSize() local alphaAction = 3 local alphaStep = 50 local alphaAction = 3 local alphaStep = 50 local sWidth,sHeight = guiGetScreenSize() if loginTitleText == "Banned." then dxDrawText(loginTitleText,(700/1600)*sWidth, (350/900)*sHeight, (900/1600)*sWidth, (450/900)*sHeight, tocolor(255,0,0,255), (sWidth/1600)*2, "default-bold","center","center",false,false,false) else dxDrawText(loginTitleText,(700/1600)*sWidth, (350/900)*sHeight, (900/1600)*sWidth, (450/900)*sHeight, tocolor(255,255,255,255), (sWidth/1600)*2, "default-bold","center","center",false,false,false) end alphaStep = alphaStep + alphaAction if (alphaStep > 200) or (alphaStep < 50) then alphaAction = alphaAction - alphaAction - alphaAction end dxDrawRectangle( (10/1600)*sWidth, (17/900)*sHeight, (400/1600)*sWidth, (600/900)*sHeight, tocolor(0, 0, 0, 150)) dxDrawText( newsTitle, (35/1600)*sWidth, (30/900)*sHeight, (375/1600)*sWidth, (550/900)*sHeight, tocolor ( 255, 255, 255, 255 ), 1.5, "default-bold" ) dxDrawText( " " .. newsAuthor, (80/1600)*sWidth, (60/900)*sHeight, sWidth, sHeight, tocolor ( 255, 255, 255, 255 ), 1.2, "default-bold", "left", "top", true, false ) dxDrawText( newsText, (35/1600)*sWidth, (92/900)*sHeight, (375/1600)*sWidth, sHeight, tocolor ( 255, 255, 255, 255 ), 1, "default-bold", "left", "top", true, true ) ]] end function LoginScreen_Register() local username = guiGetText(tUsername) local password = guiGetText(tPassword) if (string.len(username)<3) then LoginScreen_showWarningMessage( "Your username must be a minimum of 3 characters!" ) elseif (string.find(username, ";", 0)) or (string.find(username, "'", 0)) or (string.find(username, "@", 0)) or (string.find(username, ",", 0)) or (string.find(username, " ", 0)) then LoginScreen_showWarningMessage("Your username cannot contain ;,@.' or space!") elseif (string.len(password)<6) then LoginScreen_showWarningMessage("Your password is too short. \n You must enter 6 or more characters.", 255, 0, 0) elseif (string.len(password)>=30) then LoginScreen_showWarningMessage("Your password is too long. \n You must enter less than 30 characters.", 255, 0, 0) elseif (string.find(password, ";", 0)) or (string.find(password, "'", 0)) or (string.find(password, "@", 0)) or (string.find(password, ",", 0)) then LoginScreen_showWarningMessage("Your password cannot contain ;,@'.", 255, 0, 0) else showChat(true) triggerServerEvent("accounts:register:attempt", getLocalPlayer(), username, password) end end function LoginScreen_RefreshIMG() currentslide = currentslide + 1 if currentslide > totalslides then currentslide = 1 end end --[[ LoginScreen_closeLoginScreen() - Close the loginscreen ]] function LoginScreen_closeLoginScreen() removeEventHandler( "onClientRender", getRootElement(), showLoginTitle ) end --[[ checkCredentials() - Used to validate and send the contents of the login screen ]]-- function checkCredentials() local username = guiGetText(tUsername) local password = guiGetText(tPassword) guiSetText(tPassword, "") --appendSavedData("hashcode", "") if (string.len(username)<3) then outputChatBox("Your username is too short. You must enter 3 or more characters.", 255, 0, 0) else local saveInfo = guiCheckBoxGetSelected(chkRememberLogin) triggerServerEvent("accounts:login:attempt", getLocalPlayer(), username, password, saveInfo) if (saveInfo) then appendSavedData("username", tostring(username)) else appendSavedData("username", "") end end end local warningBox, warningMessage, warningOk = nil function LoginScreen_showWarningMessage( message ) if (isElement(warningBox)) then destroyElement(warningBox) end local x, y = guiGetScreenSize() warningBox = guiCreateWindow( x*.5-150, y*.5-65, 300, 120, "Attention!", false ) guiWindowSetSizable( warningBox, false ) warningMessage = guiCreateLabel( 40, 30, 220, 60, message, false, warningBox ) guiLabelSetHorizontalAlign( warningMessage, "center", true ) guiLabelSetVerticalAlign( warningMessage, "center" ) warningOk = guiCreateButton( 130, 90, 70, 20, "Ok", false, warningBox ) addEventHandler( "onClientGUIClick", warningOk, function() destroyElement(warningBox) end ) guiBringToFront( warningBox ) end addEventHandler("accounts:error:window", getRootElement(), LoginScreen_showWarningMessage) function defaultLoginText() loginTitleText = "WnAsH-Time MTA Roleplay" end addEventHandler("accounts:login:attempt", getRootElement(), function (statusCode, additionalData) if (statusCode == 0) then LoginScreen_closeLoginScreen() if (isElement(warningBox)) then destroyElement(warningBox) end -- Succesful login --[[ for _, theValue in ipairs(additionalData) do setElementData(getLocalPlayer(), theValue[1], theValue[2], false) end ]] local newAccountHash = getElementData(getLocalPlayer(), "account:newAccountHash") --appendSavedData("hashcode", newAccountHash or "") local characterList = getElementData(getLocalPlayer(), "account:characters") if #characterList == 0 then newCharacter_init() else Characters_showSelection() fadeCamera ( false, 0, 0,0,0 ) end elseif (statusCode > 0) and (statusCode < 5) then LoginScreen_showWarningMessage( additionalData ) elseif (statusCode == 5) then LoginScreen_showWarningMessage( additionalData ) -- TODO: show make app screen? end end ) local Window = {} local Button = {} local Label = {} local Edit = {} function showPasswordUpdate() showCursor(true) Window[1] = guiCreateWindow(0.3562,0.3997,0.2891,0.2383,"SECURITY NOTICE:",true) guiSetInputEnabled ( true) Label[1] = guiCreateLabel(0.0378,0.153,0.9324,0.2404,"We have noticed a potential security flaw with your account.\nTo help prevent any loss of data, we highly reccomend that\nyou enter a new password in the box below!",true,Window[1]) guiLabelSetColor(Label[1],0,200,0) guiLabelSetHorizontalAlign(Label[1],"center",false) Edit[1] = guiCreateEdit(0.4243,0.4481,0.5351,0.1475,"",true,Window[1]) guiEditSetMasked(Edit[1], true) Edit[2] = guiCreateEdit(0.4243,0.6175,0.5351,0.1475,"",true,Window[1]) guiEditSetMasked(Edit[2], true) Label[2] = guiCreateLabel(0.1649,0.4754,0.2432,0.1038,"New Password:",true,Window[1]) Label[3] = guiCreateLabel(0.1216,0.6284,0.2784,0.1038,"Confirm Password:",true,Window[1]) Button[1] = guiCreateButton(0.427,0.8087,0.527,0.1257,"Change Password",true,Window[1]) addEventHandler("onClientGUIClick", Button[1], function() triggerServerEvent("account:forceChange:validate", getLocalPlayer(), guiGetText(Edit[1]), guiGetText(Edit[2])) end) end addEvent("account:forceChangePassword:GUI", true) addEventHandler("account:forceChangePassword:GUI", getRootElement(), showPasswordUpdate) function closePasswordUpdate() destroyElement(Window[1]) showCursor(false) guiSetInputEnabled ( false) end addEvent("account:forceChange:GUIClose", true) addEventHandler("account:forceChange:GUIClose", getRootElement(), closePasswordUpdate) آو من المحتمل هذا الكود --[[ * *********************************************************************************************************************** * Copyright (c) 2015 AMG Community - All Rights Reserved * All rights reserved. This program and the accompanying materials are private property belongs to OwlGaming Community * Unauthorized copying of this file, via any medium is strictly prohibited * Proprietary and confidential * *********************************************************************************************************************** ]] local panel = { login = {}, register = {}, sounds = { { 'http://files.owlgaming.net/menu.mp3', 1 }, { 'http://files.owlgaming.net/gtav.mp3', 0.3 }, { 'http://files.owlgaming.net/gtaiv.mp3', 0.3 }, } } local sw, sh = guiGetScreenSize() local fade = { } local logoScale = 0.5 local logoSize = { sw*logoScale, sw*455/1920*logoScale } local uFont function open_log_reg_pannel() if not isElement ( panel.login.main ) then -- blur screen. triggerEvent( 'hud:blur', resourceRoot, 'off', true ) setTimer( triggerEvent, 8000, 1, 'hud:blur', resourceRoot, 6, true, 0.1, nil ) -- sound effects. local sound = math.random( 1, 3 ) local bgMusic = playSound ( panel.sounds[ sound ][ 1 ], true ) if bgMusic then setSoundVolume( bgMusic, panel.sounds[ sound ][ 2 ] ) end setElementData(localPlayer, "bgMusic", bgMusic , false) -- prepare. showChat(false) showCursor(true) guiSetInputEnabled(true) local Width,Height = 350,350 local X = (sw/2) - (Width/2) local Y = (sh/2) - (Height/2) ufont = ufont or guiCreateFont( ':interior_system/intNameFont.ttf', 11 ) panel.login.main = guiCreateStaticImage( X, Y, 350, 350, "/login-panel/login_window.png", false ) guiSetEnabled (panel.login.main, false) --panel.login.logo = guiCreateStaticImage( (sw-logoSize[1])/2, logoSize[2]/2, logoSize[1], logoSize[2], "/login-panel/OwlLogo7.png", false ) panel.login.logo = guiCreateStaticImage( (sw-logoSize[1])/2, (sh-logoSize[2])/2 , logoSize[1], logoSize[2], "/login-panel/DeerLogo7.png", false ) local x, y = guiGetPosition( panel.login.logo, false ) --guiSetPosition( panel.login.logo, x, -logoSize[2], false ) --!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! panel.login.login = guiCreateStaticImage( X + 23, Y + 349-120, 301, 44, "/login-panel/login.png", false ) addEventHandler("onClientGUIClick",panel.login.login,onClickBtnLogin, false ) addEventHandler( "onClientMouseEnter",panel.login.login,LoginSH) addEventHandler("onClientMouseLeave",panel.login.login,SErem) panel.login.username = guiCreateEdit(X + 20,Y + 220-120,310,35,"",false) panel.login.password = guiCreateEdit(X + 20,Y + 295-120,310,35,"",false) guiSetFont( panel.login.username, ufont ) guiSetFont( panel.login.password, ufont ) guiEditSetMaxLength ( panel.login.username,25) guiEditSetMaxLength ( panel.login.password,25) guiEditSetMasked ( panel.login.password, true ) guiSetProperty( panel.login.password, 'MaskCodepoint', '8226' ) addEventHandler("onClientGUIChanged", panel.login.username, resetLogButtons) addEventHandler("onClientGUIChanged", panel.login.password, resetLogButtons) addEventHandler( "onClientGUIAccepted", panel.login.username, startLoggingIn) addEventHandler( "onClientGUIAccepted", panel.login.password, startLoggingIn) --[[ lbl_about_legth = guiCreateLabel(142,42,184,18,"",false) guiLabelSetColor(lbl_about_legth,253,255,68) guiLabelSetVerticalAlign(lbl_about_legth,"center") guiLabelSetHorizontalAlign(lbl_about_legth,"center",false) ]] panel.login.remember = guiCreateCheckBox(X + 230,Y + 275-120,100,20,"(Remember me!)",false,false) guiSetFont(panel.login.remember,"default-small") panel.login.error = guiCreateLabel(X,Y + 325-120,364,31,"Error_login_tab",false) guiLabelSetColor(panel.login.error,255,0,0) guiLabelSetVerticalAlign(panel.login.error,"center") guiLabelSetHorizontalAlign(panel.login.error,"center",false) guiSetFont(panel.login.error,"default-bold-small") panel.login.authen = guiCreateLabel(X,Y + 325-120,364,31,"Authen_login_tab",false) guiLabelSetColor(panel.login.authen,0,255,0) guiLabelSetVerticalAlign(panel.login.authen,"center") guiLabelSetHorizontalAlign(panel.login.authen,"center",false) guiSetFont(panel.login.authen,"default-bold-small") --!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! panel.login.register = guiCreateStaticImage( X + 23, Y + 401-120, 301, 44, "/login-panel/signup.png", false ) -- A gomb addEventHandler("onClientGUIClick",panel.login.register,OnBtnRegister, false ) addEventHandler( "onClientMouseEnter",panel.login.register,SignupSH) addEventHandler("onClientMouseLeave",panel.login.register,SErem) panel.login.toplabel = guiCreateLabel(X - 70,Y + 388+70-120,500,30,"",false) guiLabelSetColor(panel.login.toplabel,255,234,55) guiLabelSetVerticalAlign(panel.login.toplabel,"center") guiLabelSetHorizontalAlign(panel.login.toplabel,"center",false) guiSetFont(panel.login.toplabel,"default-bold-small") guiSetVisible(panel.login.toplabel,false) panel.login.username2 = guiCreateEdit(X + 20,Y + 215-120,310,35,"",false) guiEditSetMaxLength ( panel.login.username2,25) guiSetVisible(panel.login.username2,false) guiSetFont( panel.login.username2, ufont ) addEventHandler("onClientGUIChanged", panel.login.username2, resetRegButtons) panel.login.password2 = guiCreateEdit(X + 20,Y + 290-120,310,35,"",false) guiEditSetMaxLength ( panel.login.password2,25) guiEditSetMasked ( panel.login.password2, true ) guiSetProperty(panel.login.password2, 'MaskCodepoint', '8226') guiSetVisible(panel.login.password2,false) guiSetFont( panel.login.password2, ufont ) addEventHandler("onClientGUIChanged", panel.login.password2, resetRegButtons) panel.login.repassword = guiCreateEdit(X + 20,Y + 365-120,310,35,"",false) guiEditSetMaxLength ( panel.login.repassword,25) guiEditSetMasked ( panel.login.repassword, true ) guiSetProperty(panel.login.repassword, 'MaskCodepoint', '8226') guiSetVisible(panel.login.repassword,false) guiSetEnabled (panel.login.repassword, true) guiSetFont( panel.login.repassword, ufont ) addEventHandler("onClientGUIChanged", panel.login.repassword, resetRegButtons) panel.login.email = guiCreateEdit(X + 20,Y + 435-120,310,35,"",false) guiEditSetMaxLength ( panel.login.email,100) --guiEditSetMasked ( panel.login.email, true ) guiSetVisible(panel.login.email,false) guiSetFont( panel.login.email, ufont ) guiSetEnabled (panel.login.email, true) addEventHandler("onClientGUIChanged", panel.login.email, resetRegButtons) --!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! panel.login.register2 = guiCreateStaticImage( X + 182, Y + 401+6+70-120, 143, 45, "/login-panel/register.png", false )--guiCreateStaticImage( X + 23, Y + 409, 301, 44, "/login-panel/register2.png", false ) addEventHandler("onClientGUIClick",panel.login.register2,onClickBtnRegister, false ) addEventHandler( "onClientMouseEnter",panel.login.register2,Register2SH) addEventHandler("onClientMouseLeave",panel.login.register2,SErem) guiSetVisible(panel.login.register2,false) panel.login.cancel = guiCreateStaticImage( X + 23, Y + 401+6+70-120, 143, 45, "/login-panel/cancel.png", false ) -- A gomb addEventHandler("onClientGUIClick",panel.login.cancel,onClickCancel, false ) addEventHandler( "onClientMouseEnter",panel.login.cancel,CancelSH) addEventHandler("onClientMouseLeave",panel.login.cancel,SErem) guiSetVisible(panel.login.cancel,false) showCursor(true) guiSetText(panel.login.error, "") guiSetText(panel.login.authen, "") local username, password = loadLoginFromXML() if username ~= "" then guiCheckBoxSetSelected ( panel.login.remember, true ) guiSetText ( panel.login.username, tostring(username)) guiSetText ( panel.login.password, tostring(password)) else guiCheckBoxSetSelected ( panel.login.remember, false ) guiSetText ( panel.login.username, tostring(username)) guiSetText ( panel.login.password, tostring(password)) end guisSetEnabled( 'login', false ) guisSetPosition( 'login', (sw+Width)/2 ) -- fade the login tab in. setTimer( fade.login, 8000, 1 , (sw+Width)/2 ) -- dynamic screen effect. addEventHandler( 'onClientRender', root, slideScreen ) -- make sure screen isn't black. fadeCamera ( true ) end end function guisSetEnabled( part, state ) for index, gui in pairs( panel[ part ] ) do if index ~= 'main' then guiSetEnabled( gui , state ) end end end function guisSetPosition( part, x_, y_ ) for index, gui in pairs( panel[ part ] ) do if index ~= 'logo' then local x, y = guiGetPosition( gui, false ) if x_ then x = x + x_ end if y_ then y = y + y_ end guiSetPosition( gui, x, y, false ) end end end function fade.render( ) fade.cur = fade.cur + fade.dir fade.logo_start = fade.logo_start + fade.logo_dir if math.abs(fade.cur) <= fade.max then guisSetPosition( 'login', fade.dir ) guiSetPosition( panel.login.logo, fade.logo_x, fade.logo_start, false ) else guisSetEnabled( 'login', true ) removeEventHandler( 'onClientRender', root, fade.render ) end end function fade.login( max ) fade.cur = 0 fade.max = max fade.dir = -fade.max/50 fade.logo_start = (sh-logoSize[2])/2 fade.logo_end = sh - logoSize[2]*3/2 fade.logo_dir = -(fade.logo_end-fade.logo_start)/50 fade.logo_x = (sw-logoSize[1])/2 addEventHandler( 'onClientRender', root, fade.render ) end local speed = 0.01 local moved = 0.1 function slideScreen() local matrix = { getCameraMatrix ( localPlayer ) } matrix[1] = matrix[1] + speed moved = moved + speed if moved > 50 then local scr = shuffleScreen() moved = 0 setCameraMatrix ( scr[1], scr[2], scr[3], scr[4], scr[5], scr[6], 0, exports.global:getPlayerFov()) else setCameraMatrix ( unpack(matrix) ) end end function LoginSH () guiStaticImageLoadImage(panel.login.login, "/login-panel/sh.png" ) end function SignupSH () guiStaticImageLoadImage(panel.login.register, "/login-panel/signup2.png" ) end function Register2SH () guiStaticImageLoadImage(panel.login.register, "/login-panel/shr.png" ) end function CancelSH () guiStaticImageLoadImage(panel.login.cancel, "/login-panel/cancel2.png" ) end function SErem () guiStaticImageLoadImage(panel.login.login, "/login-panel/login.png" ) guiStaticImageLoadImage(panel.login.register, "/login-panel/signup.png" ) guiStaticImageLoadImage(panel.login.register2, "/login-panel/register.png" ) guiStaticImageLoadImage(panel.login.cancel, "/login-panel/cancel.png" ) end --[[ function start_cl_resource() open_log_reg_pannel() end addEventHandler("onClientResourceStart",getResourceRootElement(getThisResource()),start_cl_resource) ]] function loadLoginFromXML() local xml_save_log_File = xmlLoadFile ("/login-panel/rememberme.xml") if not xml_save_log_File then xml_save_log_File = xmlCreateFile("/login-panel/rememberme.xml", "login") end local usernameNode = xmlFindChild (xml_save_log_File, "username", 0) local passwordNode = xmlFindChild (xml_save_log_File, "password", 0) local username, password = usernameNode and exports.global:decryptString(xmlNodeGetValue(usernameNode), localPlayer) or "", passwordNode and exports.global:decryptString(xmlNodeGetValue(passwordNode), localPlayer) or "" xmlUnloadFile ( xml_save_log_File ) return username, password end function saveLoginToXML(username, password) local xml_save_log_File = xmlLoadFile ("/login-panel/rememberme.xml") if not xml_save_log_File then xml_save_log_File = xmlCreateFile("/login-panel/rememberme.xml", "login") end if (username ~= "") then local usernameNode = xmlFindChild (xml_save_log_File, "username", 0) local passwordNode = xmlFindChild (xml_save_log_File, "password", 0) if not usernameNode then usernameNode = xmlCreateChild(xml_save_log_File, "username") end if not passwordNode then passwordNode = xmlCreateChild(xml_save_log_File, "password") end xmlNodeSetValue (usernameNode, exports.global:encryptString(username, localPlayer)) xmlNodeSetValue (passwordNode, exports.global:encryptString(password, localPlayer)) end xmlSaveFile(xml_save_log_File) xmlUnloadFile (xml_save_log_File) end addEvent("saveLoginToXML", true) addEventHandler("saveLoginToXML", getRootElement(), saveLoginToXML) function resetSaveXML() local xml_save_log_File = xmlLoadFile ("/login-panel/rememberme.xml") if xml_save_log_File then fileDelete ("/login-panel/rememberme.xml") xmlUnloadFile ( xml_save_log_File ) end end addEvent("resetSaveXML", true) addEventHandler("resetSaveXML", getRootElement(), resetSaveXML) function onClickBtnLogin(button,state) if(button == "left" and state == "up") then if (source == panel.login.login) then startLoggingIn() end end end local loginClickTimer = nil function startLoggingIn() if not getElementData(localPlayer, "clickedLogin") then setElementData(localPlayer, "clickedLogin", true, false) if isTimer(loginClickTimer) then killTimer(loginClickTimer) end loginClickTimer = setTimer(setElementData, 1000, 1, localPlayer, "clickedLogin", nil, false) username = guiGetText(panel.login.username) password = guiGetText(panel.login.password) if guiCheckBoxGetSelected ( panel.login.remember ) == true then checksave = true else checksave = false end playSoundFrontEnd ( 6 ) guiSetEnabled(panel.login.login, false) guiSetAlpha(panel.login.login, 0.3) triggerServerEvent("accounts:login:attempt", getLocalPlayer(), username, password, checksave) authen_msg("Login", "Sending request to server..") else Error_msg("Login", "Slow down..") end end function hideLoginPanel(keepBG) showCursor(true) if keepBG then for name, gui in pairs( panel.login ) do if name ~= 'logo' then guiSetVisible( gui, false) end end else for name, gui in pairs( panel.login ) do if gui and isElement( gui ) then destroyElement( gui ) gui = nil end end triggerEvent( 'hud:blur', resourceRoot, 'off', true ) removeEventHandler( 'onClientRender', root, slideScreen ) end end addEvent("hideLoginPanel", true) addEventHandler("hideLoginPanel", getRootElement(), hideLoginPanel) function OnBtnRegister () switchToRegisterPanel() -- Disabled registration playSoundFrontEnd ( 2 ) --guiSetText(panel.login.error, "Please register on Owlgaming.net/register.php") end function onClickCancel() switchToLoginPanel() playSoundFrontEnd ( 2 ) end function switchToLoginPanel() guiSetText(panel.login.error, "") guiSetText(panel.login.authen, "") guiSetText(panel.login.toplabel, "") guiSetSize(panel.login.main, 350,350, false) guiStaticImageLoadImage(panel.login.main, "login-panel/Login_window.png" ) guiSetVisible(panel.login.register2, false) guiSetVisible(panel.login.cancel,false) guiSetVisible(panel.login.toplabel,false) guiSetVisible(panel.login.repassword,false) guiSetEnabled (panel.login.repassword, false) guiSetVisible(panel.login.email,false) guiSetEnabled (panel.login.email, false) guiSetVisible(panel.login.password2,false) guiSetVisible(panel.login.username2,false) guiSetVisible(panel.login.register, true) guiSetVisible(panel.login.login, true) guiSetVisible(panel.login.password, true) guiSetVisible(panel.login.username, true) guiSetVisible(panel.login.remember, true) showCursor(true) end function switchToRegisterPanel() guiSetText(panel.login.error, "") guiSetText(panel.login.authen, "") guiSetText(panel.login.toplabel, "") guiSetSize(panel.login.main, 350,421, false) guiStaticImageLoadImage(panel.login.main, "login-panel/register_window.png" ) guiSetVisible(panel.login.register2, true) guiSetVisible(panel.login.cancel,true) guiSetVisible(panel.login.toplabel,true) guiSetVisible(panel.login.repassword,true) guiSetEnabled (panel.login.repassword, true) guiSetVisible(panel.login.password2,true) guiSetVisible(panel.login.username2,true) guiSetVisible(panel.login.email,true) guiSetEnabled (panel.login.email, true) guiSetVisible(panel.login.register, false) guiSetVisible(panel.login.login, false) guiSetVisible(panel.login.password, false) guiSetVisible(panel.login.username, false) guiSetVisible(panel.login.remember, false) showCursor(true) setElementData(localPlayer, "switched", true, false) end function onClickBtnRegister(button,state) username = guiGetText(panel.login.username2) password = guiGetText(panel.login.password2) passwordConfirm = guiGetText(panel.login.repassword) email = guiGetText(panel.login.email) registerValidation(username, password, passwordConfirm,email) --playSoundFrontEnd ( 6 ) guiSetEnabled(panel.login.register, false) guiSetAlpha(panel.login.register, 0.3) end function registerValidation(username, password, passwordConfirm, email) if not username or username == "" or not password or password == "" or not passwordConfirm or passwordConfirm == "" or not email or email == "" then guiSetText(panel.login.toplabel, "Please fill out all fields.") guiLabelSetColor ( panel.login.toplabel, 255, 0, 0 ) playSoundFrontEnd ( 4 ) elseif string.len(username) < 3 then guiSetText(panel.login.toplabel, "Username must be 3 characters or longer.") guiLabelSetColor ( panel.login.toplabel, 255, 0, 0 ) playSoundFrontEnd ( 4 ) elseif string.len(username) >= 19 then guiSetText(panel.login.toplabel, "Username must be less then 20 characters long.") guiLabelSetColor ( panel.login.toplabel, 255, 0, 0 ) playSoundFrontEnd ( 4 ) elseif string.find(password, "'") or string.find(password, '"') then guiSetText(panel.login.toplabel, "Password must not contain ' or "..'"') guiLabelSetColor ( panel.login.toplabel, 255, 0, 0 ) playSoundFrontEnd ( 4 ) elseif string.len(password) < 8 then guiSetText(panel.login.toplabel, "Password must be 8 characters or longer.") guiLabelSetColor ( panel.login.toplabel, 255, 0, 0 ) playSoundFrontEnd ( 4 ) elseif password ~= passwordConfirm then guiSetText(panel.login.toplabel, "Passwords mismatched!") guiLabelSetColor ( panel.login.toplabel, 255, 0, 0 ) playSoundFrontEnd ( 4 ) elseif string.match(username,"%W") then guiSetText(panel.login.toplabel, "\"!@#$\"%'^&*()\" are not allowed in username.") guiLabelSetColor ( panel.login.toplabel, 255, 0, 0 ) playSoundFrontEnd ( 4 ) else local validEmail, reason = exports.global:isEmail(email) if not validEmail then guiSetText(panel.login.toplabel, reason) guiLabelSetColor ( panel.login.toplabel, 255, 0, 0 ) playSoundFrontEnd ( 4 ) else triggerServerEvent("accounts:register:attempt",getLocalPlayer(),username,password,passwordConfirm, email) authen_msg("Register", "Sending request to server.") end end end function registerComplete(username, pw, email) guiSetText(panel.login.username, username) guiSetText(panel.login.password, pw) playSoundFrontEnd(13) displayRegisterConpleteText(username, email) end addEvent("accounts:register:complete",true) addEventHandler("accounts:register:complete",getRootElement(),registerComplete) function displayRegisterConpleteText(username) local GUIEditor = { button = {}, window = {}, label = {} } local extend = 100 local yoffset = 150 GUIEditor.window[1] = guiCreateWindow(667, 381, 357, 189+extend, "Congratulations! Account has been successfully created!", false) exports.global:centerWindow(GUIEditor.window[1]) --local x, y = guiGetPosition(GUIEditor.window[1], false) --guiSetPosition(GUIEditor.window[1], x, y+yoffset, false) guiSetAlpha(GUIEditor.window[1], 1) guiWindowSetMovable(GUIEditor.window[1], false) guiWindowSetSizable(GUIEditor.window[1], false) guiSetProperty(GUIEditor.window[1], "AlwaysOnTop", "True") local temp = "An email contains instructions to activate your account has been dispatched, please check your email's inbox.\n\nIf for some reasons you don't receive the email, please check your junk box or try to dispatch another activation email at http://owlgaming.net/activate.php?username="..username GUIEditor.label[1] = guiCreateLabel(8, 50, 339, 121+extend, "Your IGaming MTA account for '"..username.."' is ready for action!", false, GUIEditor.window[1]) guiLabelSetHorizontalAlign(GUIEditor.label[1], "left", true) GUIEditor.button[1] = guiCreateButton(10, 153+extend, 337, 26, "Close !", false, GUIEditor.window[1]) addEventHandler("onClientGUIClick", GUIEditor.button[1], function() if source == GUIEditor.button[1] then if isElement(GUIEditor.window[1]) then destroyElement(GUIEditor.window[1]) GUIEditor = nil switchToLoginPanel() end else cancelEvent() end end, false ) end function Error_msg(Tab, Text) showCursor(true) if Tab == "Login" then playSoundFrontEnd ( 4) guiSetVisible(panel.login.register, true) guiSetVisible(panel.login.login, true) guiSetVisible(panel.login.password, true) guiSetVisible(panel.login.username, true) guiSetVisible(panel.login.remember, true) guiSetVisible(panel.login.main, true) guiSetText(panel.login.authen, "") guiSetText(panel.login.error, tostring(Text)) --setTimer(function() guiSetText(panel.login.error, "") end,3000,1) else playSoundFrontEnd ( 4) guiSetText(panel.login.toplabel, tostring(Text)) guiLabelSetColor ( panel.login.toplabel, 255, 0, 0 ) end end addEvent("set_warning_text",true) addEventHandler("set_warning_text",getRootElement(),Error_msg) function authen_msg(Tab, Text) showCursor(true) if Tab == "Login" then if panel.login.authen and isElement(panel.login.authen) and guiGetVisible(panel.login.authen) then --playSoundFrontEnd ( 12) guiSetVisible(panel.login.register, true) guiSetVisible(panel.login.login, true) guiSetVisible(panel.login.password, true) guiSetVisible(panel.login.username, true) guiSetVisible(panel.login.remember, true) guiSetVisible(panel.login.main, true) guiSetText(panel.login.error, "") guiSetText(panel.login.authen, tostring(Text)) --setTimer(function() guiSetText(panel.login.authen, "") end,3000,1) end else --playSoundFrontEnd ( 12 ) guiSetText(panel.login.toplabel, tostring(Text)) guiLabelSetColor ( panel.login.toplabel, 255, 255, 255 ) end end addEvent("set_authen_text",true) addEventHandler("set_authen_text",getRootElement(),authen_msg) function hideLoginWindow() showCursor(false) hideLoginPanel() end addEvent("hideLoginWindow", true) addEventHandler("hideLoginWindow", getRootElement(), hideLoginWindow) function CursorError () showCursor(false) end addCommandHandler("showc", CursorError) function resetRegButtons () guiSetEnabled(panel.login.register2, true) guiSetAlpha(panel.login.register2, 1) end function resetLogButtons() guiSetEnabled(panel.login.login, true) guiSetAlpha(panel.login.login, 1) end local screenStandByCurrent = 0 local screenStandByComplete = 2 local screenStandByShowing = false function screenStandBy(action, value) -- Maxime / 2015.3.25 if action == "add" then screenStandByCurrent = screenStandByCurrent + 1 if screenStandByShowing then authen_msg("Login", "Loading prerequisite resources.."..screenStandBy("getPercentage").."%") end return screenStandByCurrent elseif action == "getCurrent" then return screenStandByCurrent elseif action == "getState" then return screenStandByShowing elseif action == "setState" then screenStandByShowing = value if screenStandByShowing then authen_msg("Login", "Loading prerequisite resources.."..screenStandBy("getPercentage").."%") end screenStandByCurrent = 0 return true elseif action == "getPercentage" then local percentage = math.floor(screenStandByCurrent/screenStandByComplete*100) if screenStandByShowing then authen_msg("Login", "Loading prerequisite resources.."..percentage.."%") end return percentage end end addEvent("screenStandBy",true) addEventHandler("screenStandBy",root,screenStandBy) addEventHandler ( "onClientElementDataChange", localPlayer, function ( dataName ) if getElementType ( localPlayer ) == "player" and dataName == "loggedin" then showChat(getElementData(localPlayer, "loggedin") == 1) end end ) --
  6. 1) What is 'WnashTime' ? My server name WnashTime 2) Tell me about these 'WnashTime' servers: This Official our servers 178.32.127.216:22003 These servers are not specific to us and steal our servers name 87.98.233.30:20088 178.33.54.33:20008 87.98.233.30:22022 185.232.64.191:27415 46.105.250.205:26148
  7. للاسف م ضبط بس هذي الاكواد Client addEvent("fadeCameraOnSpawn", true) addEventHandler("fadeCameraOnSpawn", getLocalPlayer(), function() start = getTickCount() end ) local bRespawn = nil function showRespawnButton(victimDropItem) showCursor(true) local width, height = 201,54 local scrWidth, scrHeight = guiGetScreenSize() local x = scrWidth/2 - (width/2) local y = scrHeight/1.1 - (height/2) bRespawn = guiCreateButton(x, y, width, height,"Respawn",false) guiSetFont(bRespawn,"sa-header") addEventHandler("onClientGUIClick", bRespawn, function () if bRespawn then destroyElement(bRespawn) bRespawn = nil showCursor(false) guiSetInputEnabled(false) end triggerServerEvent("es-system:acceptDeath", getLocalPlayer(), getLocalPlayer(), victimDropItem) showCursor(false) end, false) end addEvent("es-system:showRespawnButton", true) addEventHandler("es-system:showRespawnButton", getLocalPlayer(),showRespawnButton) function closeRespawnButton() if bRespawn then destroyElement(bRespawn) bRespawn = nil showCursor(false) guiSetInputEnabled(false) end end addEvent("es-system:closeRespawnButton", true) addEventHandler("es-system:closeRespawnButton", getLocalPlayer(),closeRespawnButton) Server mysql = exports.mysql function playerDeath(totalAmmo, killer, killerWeapon) if getElementData(source, "dbid") then if getElementData(source, "adminjailed") then local team = getPlayerTeam(source) spawnPlayer(source, 263.821807, 77.848365, 1001.0390625, 270) --, team) setElementModel(source,getElementModel(source)) setPlayerTeam(source, team) setElementInterior(source, 6) setElementDimension(source, getElementData(source, "playerid")+65400) setCameraInterior(source, 6) setCameraTarget(source) fadeCamera(source, true) exports.logs:dbLog(source, 34, source, "died in admin jail") elseif getElementData(source, "jailed") then exports["prison-system"]:checkForRelease(source) --[[ local x, y, z = getElementPosition(source) local int = getElementInterior(source) local dim = getElementDimension(source) spawnPlayer(source, x, y, z, 270, getElementModel(source), int, dim, getPlayerTeam(source)) setCameraInterior(source, int) setCameraTarget(source)--]] exports.logs:dbLog(source, 34, source, "died in police jail") else local affected = { } table.insert(affected, source) local killstr = ' died' if (killer) then if getElementType(killer) == "player" then if (killerWeapon) then killstr = ' got killed by '..getPlayerName(killer):gsub("_", " ").. ' ('..getWeaponNameFromID ( killerWeapon )..')' else killstr = ' died' end table.insert(affected, killer) else killstr = ' got killed by an unknown source' table.insert(affected, "Unknown") end end -- Remove seatbelt if theres one on if (getElementData(source, "seatbelt") == true) then exports.anticheat:changeProtectedElementDataEx(source, "seatbelt", false, true) end --Maxime setElementData(source, "dead", 1) local victimDropItem = false -- if killer and (getElementData(killer, "hoursplayed" ) >= 20) then -- victimDropItem = true -- end changeDeathViewTimer = setTimer(changeDeathView, 3000, 1, source, victimDropItem) outputChatBox("If you were killed due to DM or anything similar, /report to get an admin to revive you.", source) outputChatBox("If you accept your death, you may lose some of your items - unless revived.", source) --outputChatBox("Respawn in 10 seconds.", source) --setTimer(respawnPlayer, 10000, 1, source) exports.logs:dbLog(source, 34, affected, killstr) exports.anticheat:changeProtectedElementDataEx(source, "lastdeath", " [KILL] "..getPlayerName(source):gsub("_", " ") .. killstr, true) --logMe(" [KILL] "..getPlayerName(source) .. killstr) end end end addEventHandler("onPlayerWasted", getRootElement(), playerDeath) --Maxime function changeDeathView(source, victimDropItem) if isPedDead(source) then local x, y, z = getElementPosition(source) local rx, ry, rz = getElementRotation(source) setCameraMatrix(source, x+6, y+6, z+3, x, y, z) triggerClientEvent(source,"es-system:showRespawnButton",source, victimDropItem) end end addEvent("changeDeathView", true) addEventHandler("changeDeathView", getRootElement(), changeDeathView) function acceptDeath(thePlayer, victimDropItem) if getElementData(thePlayer, "dead") == 1 then if victimDropItem then local x, y, z = getElementPosition(thePlayer) for key, item in pairs(exports["item-system"]:getItems(thePlayer)) do itemID = tonumber(item[1]) local ammo = false if itemID == 116 then ammo = exports.global:explode( ":", item[2] )[2] end local keepammo = false if itemID == 116 or itemID == 115 or itemID == 134 then triggerEvent("dropItemOnDead", thePlayer, itemID, item[2], x, y, z, ammo, false) end end end fadeCamera(thePlayer, true) outputChatBox("Respawning...", thePlayer) if isTimer(changeDeathViewTimer) == true then killTimer(changeDeathViewTimer) end respawnPlayer(thePlayer, victimDropItem) else outputChatBox("You aren't dead!", thePlayer, 255, 0, 0) end end addEvent("es-system:acceptDeath", true) addEventHandler("es-system:acceptDeath", getRootElement(), acceptDeath) --addCommandHandler("acceptdeath", acceptDeath) --addCommandHandler("spawn", acceptDeath) function logMe( message ) local logMeBuffer = getElementData(getRootElement(), "killog") or { } local r = getRealTime() exports.global:sendMessageToAdmins(message) table.insert(logMeBuffer,"["..("%02d:%02d"):format(r.hour,r.minute).. "] " .. message) if #logMeBuffer > 30 then table.remove(logMeBuffer, 1) end setElementData(getRootElement(), "killog", logMeBuffer) end function logMeNoWrn( message ) local logMeBuffer = getElementData(getRootElement(), "killog") or { } local r = getRealTime() table.insert(logMeBuffer,"["..("%02d:%02d"):format(r.hour,r.minute).. "] " .. message) if #logMeBuffer > 30 then table.remove(logMeBuffer, 1) end setElementData(getRootElement(), "killog", logMeBuffer) end function readLog(thePlayer) if exports.integration:isPlayerTrialAdmin(thePlayer) then local logMeBuffer = getElementData(getRootElement(), "killog") or { } outputChatBox("Recent kill list:", thePlayer, 205, 201, 165) for a, b in ipairs(logMeBuffer) do outputChatBox("- "..b, thePlayer, 205, 201, 165, true) end outputChatBox(" END", thePlayer, 205, 201, 165) end end addCommandHandler("showkills", readLog) function respawnPlayer(thePlayer, victimDropItem) if (isElement(thePlayer)) then if (getElementData(thePlayer, "loggedin") == 0) then exports.global:sendMessageToAdmins("AC0x0000004: "..getPlayerName(thePlayer):gsub("_", " ").." died while not in character, triggering blackfade.") return end setPedHeadless(thePlayer, false) local cost = math.random(175, 500) local tax = exports.global:getTaxAmount() exports.global:giveMoney( getTeamFromName("Los Santos Emergency Services"), math.ceil((1-tax)*cost) ) exports.global:takeMoney( getTeamFromName("Government of Los Santos"), math.ceil((1-tax)*cost) ) mysql:query_free("UPDATE characters SET deaths = deaths + 1 WHERE charactername='" .. mysql:escape_string(getPlayerName(thePlayer)) .. "'") setCameraInterior(thePlayer, 0) setCameraTarget(thePlayer, thePlayer) outputChatBox("You have recieved treatment from Los Santos Emergency Services.", thePlayer, 255, 255, 0) -- take all drugs local count = 0 for i = 30, 43 do while exports.global:hasItem(thePlayer, i) do local number = exports['item-system']:countItems(thePlayer, i) exports.global:takeItem(thePlayer, i) exports.logs:logMessage("[SFES Death] " .. getElementData(thePlayer, "account:username") .. "/" .. getPlayerName(thePlayer) .. " lost "..number.."x item "..tostring(i), 28) exports.logs:dbLog(thePlayer, 34, thePlayer, "lost "..number.."x item "..tostring(i)) count = count + 1 end end if count > 0 then outputChatBox("SFES Employee: We handed your drugs over to the SFPD.", thePlayer, 255, 194, 14) end -- take guns local removedWeapons = nil if not victimDropItem then local gunlicense = tonumber(getElementData(thePlayer, "license.gun")) local gunlicense2 = tonumber(getElementData(thePlayer, "license.gun2")) local team = getPlayerTeam(thePlayer) local factiontype = getElementData(team, "type") local items = exports['item-system']:getItems( thePlayer ) -- [] [1] = itemID [2] = itemValue local formatedWeapons local correction = 0 for itemSlot, itemCheck in ipairs(items) do if (itemCheck[1] == 115) or (itemCheck[1] == 116) then -- Weapon -- itemCheck[2]: [1] = gta weapon id, [2] = serial number/Amount of bullets, [3] = weapon/ammo name local itemCheckExplode = exports.global:explode(":", itemCheck[2]) local weapon = tonumber(itemCheckExplode[1]) local ammountOfAmmo if (((weapon >= 16 and weapon <= 40 and (gunlicense == 0 and gunlicense2 == 0)) or (weapon == 29 or weapon == 30 or weapon == 32 or weapon ==31 or weapon == 34) and (gunlicense2 == 0)) and factiontype ~= 2) or (weapon >= 35 and weapon <= 38) then -- (weapon == 4 or weapon == 8) exports['item-system']:takeItemFromSlot(thePlayer, itemSlot - correction) correction = correction + 1 if (itemCheck[1] == 115) then exports.logs:dbLog(thePlayer, 34, thePlayer, "lost a weapon (" .. itemCheck[2] .. ")") for k = 1, 12 do triggerEvent("createWepObject", thePlayer, thePlayer, k, 0, getSlotFromWeapon(k)) end else exports.logs:dbLog(thePlayer, 34, thePlayer, "lost a magazine of ammo (" .. itemCheck[2] .. ")") local splitArray = split(itemCheck[2], ":") ammountOfAmmo = splitArray[2] end if (removedWeapons == nil) then if ammountOfAmmo then removedWeapons = ammountOfAmmo .. " " .. itemCheckExplode[3] formatedWeapons = ammountOfAmmo .. " " .. itemCheckExplode[3] else removedWeapons = itemCheckExplode[3] formatedWeapons = itemCheckExplode[3] end else if ammountOfAmmo then removedWeapons = removedWeapons .. ", " .. ammountOfAmmo .. " " .. itemCheckExplode[3] formatedWeapons = formatedWeapons .. "\n" .. ammountOfAmmo .. " " .. itemCheckExplode[3] else removedWeapons = removedWeapons .. ", " .. itemCheckExplode[3] formatedWeapons = formatedWeapons .. "\n" .. itemCheckExplode[3] end end end end end end if (removedWeapons~=nil) then if gunlicense == 0 and factiontype ~= 2 then outputChatBox("SFES Employee: We have taken away weapons which you did not have a license for. (" .. removedWeapons .. ").", thePlayer, 255, 194, 14) else outputChatBox("SFES Employee: We have taken away weapons which you are not allowed to carry. (" .. removedWeapons .. ").", thePlayer, 255, 194, 14) end end local death = getElementData(thePlayer, "lastdeath") if removedWeapons ~= nil then logMe(death) exports.global:sendMessageToAdmins("/showkills to view lost weapons.") logMeNoWrn("#FF0033 Lost Weapons: " .. removedWeapons) else logMe(death) end local theSkin = getPedSkin(thePlayer) local theTeam = getPlayerTeam(thePlayer) local fat = getPedStat(thePlayer, 21) local muscle = getPedStat(thePlayer, 23) setElementData(thePlayer, "dead", 0) spawnPlayer(thePlayer, 1176.892578125, -1323.828125, 14.04377746582, 275)--, theTeam) setElementModel(thePlayer,theSkin) setPlayerTeam(thePlayer, theTeam) setElementInterior(thePlayer, 0) setElementDimension(thePlayer, 0) setPedStat(thePlayer, 21, fat) setPedStat(thePlayer, 23, muscle) fadeCamera(thePlayer, true, 6) triggerClientEvent(thePlayer, "fadeCameraOnSpawn", thePlayer) triggerEvent("updateLocalGuns", thePlayer) end end function recoveryPlayer(thePlayer, commandName, targetPlayer, duration) if not (targetPlayer) or not (duration) then outputChatBox("SYNTAX: /" .. commandName .. " [Player Partial Nick / ID] [Hours]", thePlayer, 255, 194, 14) else local targetPlayer, targetPlayerName = exports.global:findPlayerByPartialNick(thePlayer, targetPlayer) if targetPlayer then local logged = getElementData(thePlayer, "loggedin") if (logged==1) then local theTeam = getPlayerTeam(thePlayer) local factionType = getElementData(theTeam, "type") if (factionType==4) or (exports.integration:isPlayerTrialAdmin(thePlayer) == true) then --if (targetPlayer == thePlayer) then local dimension = getElementDimension(thePlayer) --if (dimesion==9) then totaltime = tonumber(duration) if totaltime < 12 then local money = exports.bank:takeBankMoney(targetPlayer, 100*totaltime) if not money then outputChatBox("This player does not have enough money in their bank to be placed in recovery.", thePlayer, 255, 0, 0) return end exports.global:giveMoney( getTeamFromName("Los Santos Fire Department"), 100*totaltime ) local dbid = getElementData(targetPlayer, "dbid") mysql:query_free("UPDATE characters SET recovery='1' WHERE id = " .. dbid) setElementFrozen(targetPlayer, true) outputChatBox("You have successfully put " .. targetPlayerName .. " in recovery for " .. duration .. " hour(s) and charged $".. 100*totaltime ..".", thePlayer, 255, 0, 0) exports.global:sendMessageToAdmins("AdmWrn: " .. targetPlayerName .. " was put in recovery for " .. duration .. " hour(s) by " .. getPlayerName(thePlayer):gsub("_"," ") .. ".") outputChatBox("You were put in recovery by " .. getPlayerName(thePlayer) .. " for " .. duration .. " hour(s) and charged $".. 100*totaltime ..".", targetPlayer, 255, 0, 0) exports.logs:dbLog(thePlayer, 4, targetPlayer, "RECOVERY " .. duration) local r = getRealTime() if r.hour + duration >= 24 then local timeString = ("%04d%02d%02d%02d%02d%02d"):format(r.year+1900, r.month + 1, r.monthday + 1, r.hour + duration - 24,r.minute, r.second) mysql:query_free("UPDATE characters SET recoverytime='" ..timeString.. "' WHERE id = " .. dbid) else local timeString = ("%04d%02d%02d%02d%02d%02d"):format(r.year+1900, r.month + 1, r.monthday, r.hour + duration,r.minute, r.second) mysql:query_free("UPDATE characters SET recoverytime='" ..timeString.. "' WHERE id = " .. dbid) end else outputChatBox("You cannnot put someone in recovery for that much time.", thePlayer, 255, 0, 0) end --[[else outputChatBox("You must be in the hospital to do this command.", thePlayer, 255, 0, 0) end]] --[[else outputChatBox("You cannot recover yourself.", thePlayer, 255, 0, 0) end]] else outputChatBox("You have no basic medic skills, contact the ES.", thePlayer, 255, 0, 0) end else outputChatBox("The player is not logged in.", thePlayer, 255,0,0) end end end end addCommandHandler("recovery", recoveryPlayer) function scanForRecoveryRelease(player, eventname) local tick = getTickCount() local counter = 0 local players = exports.pool:getPoolElementsByType("player") for key, value in ipairs(players) do local logged = getElementData(value, "loggedin") if (logged==1) then -- Check all logged in players. local dbid = getElementData(value, "dbid") local result1 = mysql:query_fetch_assoc( "SELECT `recovery` FROM `characters` WHERE `id`=" .. mysql:escape_string(dbid) ) -- Check to see if the player is listed as a current recovery patient. local mm = tonumber(result1["recovery"]) if (mm==1) then local result2 = mysql:query_fetch_assoc( "SELECT `recoverytime` FROM `characters` WHERE `id`=" .. mysql:escape_string(dbid) ) -- Check to see if the player is listed as a current recovery patient. local nn = tonumber(result2["recoverytime"]) local currenttime = getRealTime() local currenttimereal = ("%04d%02d%02d%02d%02d%02d"):format(currenttime.year+1900, currenttime.month + 1, currenttime.monthday, currenttime.hour,currenttime.minute, currenttime.second) local bb = tonumber(currenttimereal) if (nn<bb) then -- Is the time up? If yes: setElementFrozen(value, false) mysql:query_free("UPDATE characters SET recovery='0' WHERE id = " .. dbid) -- Allow them to move, and revert back to recovery type set to 0. mysql:query_free("UPDATE characters SET recoverytime=NULL WHERE id = " .. dbid) outputChatBox("You are no longer in recovery!", value, 0, 255, 0) -- Let them know about it! else setElementFrozen(value, true) -- If they are still in recovery, then make sure they are frozen (if they login). if (player==value) and (eventname=="accounts:characters:spawn") then outputChatBox("You are still in recovery.", value, 255,0,0) end end end end end local tickend = getTickCount() end setTimer(scanForRecoveryRelease, 500000, 0) -- Check every 5 minutes. function scanForRecoveryReleaseF10(player, eventname) local tick = getTickCount() local counter = 0 local players = exports.pool:getPoolElementsByType("player") for key, value in ipairs(players) do local logged = getElementData(value, "loggedin") if (logged==1) then -- Check all logged in players. local dbid = getElementData(value, "dbid") local result1 = mysql:query_fetch_assoc( "SELECT `recovery` FROM `characters` WHERE `id`=" .. mysql:escape_string(dbid) ) -- Check to see if the player is listed as a current recovery patient. local mm = tonumber(result1["recovery"]) if (mm==1) then local result2 = mysql:query_fetch_assoc( "SELECT `recoverytime` FROM `characters` WHERE `id`=" .. mysql:escape_string(dbid) ) -- Check to see if the player is listed as a current recovery patient. local nn = tonumber(result2["recoverytime"]) local currenttime = getRealTime() local currenttimereal = ("%04d%02d%02d%02d%02d%02d"):format(currenttime.year+1900, currenttime.month + 1, currenttime.monthday, currenttime.hour,currenttime.minute, currenttime.second) local bb = tonumber(currenttimereal) if (nn<bb) then -- Is the time up? If yes: setElementFrozen(value, false) mysql:query_free("UPDATE characters SET recovery='0' WHERE id = " .. dbid) -- Allow them to move, and revert back to recovery type set to 0. mysql:query_free("UPDATE characters SET recoverytime=NULL WHERE id = " .. dbid) outputChatBox("You are no longer in recovery!", value, 0, 255, 0) -- Let them know about it! else setElementFrozen(value, true) -- If they are still in recovery, then make sure they are frozen (if they login). if (player==value) and (eventname=="accounts:characters:spawn") then outputChatBox("You are still in recovery.", value, 255,0,0) end end end end end local tickend = getTickCount() end addEventHandler("accounts:characters:spawn", getRootElement(), scanForRecoveryReleaseF10) function prescribe(thePlayer, commandName, ...) local team = getPlayerTeam(thePlayer) if (getTeamName(team)=="Los Santos Fire Department") then if not (...) then outputChatBox("SYNTAX /" .. commandName .. " [prescription value]", thePlayer, 255, 184, 22) else local itemValue = table.concat({...}, " ") itemValue = tonumber(itemValue) or itemValue if not(itemValue=="") then exports.global:giveItem( thePlayer, 132, itemValue ) outputChatBox("The prescription '" .. itemValue .. "' has been processed.", thePlayer, 0, 255, 0) exports.global:sendMessageToAdmins(getPlayerName(thePlayer):gsub("_"," ") .. " has made a prescription with the value of: " .. itemValue .. ".") exports.logs:dbLog(thePlayer, 4, thePlayer, "PRESCRIPTION " .. itemValue) end end end end addCommandHandler("prescribe", prescribe) -- /revive function revivePlayerFromPK(thePlayer, commandName, targetPlayer) if (exports.integration:isPlayerTrialAdmin(thePlayer)) then if not (targetPlayer) then outputChatBox("SYNTAX: /" .. commandName .. " [Player Partial Name / ID]", thePlayer, 255, 194, 14) else local targetPlayer, targetPlayerName = exports.global:findPlayerByPartialNick(thePlayer, targetPlayer) if targetPlayer then if getElementData(targetPlayer, "dead") == 1 then triggerClientEvent(targetPlayer,"es-system:closeRespawnButton",targetPlayer) --fadeCamera(thePlayer, true) --outputChatBox("Respawning...", thePlayer) if isTimer(changeDeathViewTimer) == true then killTimer(changeDeathViewTimer) end local x,y,z = getElementPosition(targetPlayer) local int = getElementInterior(targetPlayer) local dim = getElementDimension(targetPlayer) local skin = getElementModel(targetPlayer) local team = getPlayerTeam(targetPlayer) setPedHeadless(targetPlayer, false) setCameraInterior(targetPlayer, int) setCameraTarget(targetPlayer, targetPlayer) setElementData(targetPlayer, "dead", 0) spawnPlayer(targetPlayer, x, y, z, 0)--, team) setElementModel(targetPlayer,skin) setPlayerTeam(targetPlayer, team) setElementInterior(targetPlayer, int) setElementDimension(targetPlayer, dim) triggerEvent("updateLocalGuns", targetPlayer) local adminTitle = tostring(exports.global:getPlayerAdminTitle(thePlayer)) outputChatBox("You have been revived by "..tostring(exports.global:getPlayerAdminTitle(thePlayer)).." "..tostring(getPlayerName(thePlayer):gsub("_"," "))..".", targetPlayer, 0, 255, 0) outputChatBox("You have revived "..tostring(getPlayerName(targetPlayer):gsub("_"," "))..".", thePlayer, 0, 255, 0) exports.global:sendMessageToAdmins("AdmCmd: "..tostring(exports.global:getPlayerAdminTitle(thePlayer)).." "..getPlayerName(thePlayer).." revived "..tostring(getPlayerName(targetPlayer))..".") exports.logs:dbLog(thePlayer, 4, targetPlayer, "REVIVED from PK") else outputChatBox(tostring(getPlayerName(targetPlayer):gsub("_"," ")).." is not dead.", thePlayer, 255, 0, 0) end end end end end addCommandHandler("revive", revivePlayerFromPK, false, false) -- addEventHandler("onPlayerSpawn", root, function() takeAllWeapons(source) end )
  8. سلام عليكم , عندي سيرفر حياة واقعية لاكن فيه مشكلة بعد م يموت ويرسبن بالمستشفى الاسلحة م تروح ابيها تروح منه عشان م يرجع يقتل بها
  9. سلام عليكم , فيه مود م ينزل تحت من السهم عندي فاكشنات كثيرة لاكن ماقدر انزل تحت اختار منها لها حد معين لاهنتم ابي تصليح له tBizManagement = guiCreateTab ( "Configurations" , shopTabPanel ) local l1 = guiCreateLabel(11,19,716,56,"Faction Drop NPC Configurations",false,tBizManagement) guiLabelSetHorizontalAlign(l1,"center",false) guiSetFont(l1, BizNoteFont) local line = 40 local col = 200 local xOffset = 30 local lTeam = guiCreateLabel(xOffset,line*3,716,56,"Grant accesses to Faction:",false,tBizManagement) guiSetFont(lTeam, "default-bold-small") local cFaction = guiCreateComboBox ( xOffset+col,line*3,col*2,56, "None", false, tBizManagement ) local counter = 0 local comboIndex1 = {} comboIndex1[0] = {"None", 0} guiComboBoxAddItem(cFaction, "None") local factions = getElementsByType("team") for i = 1, #factions do local factionName = getTeamName(factions[i]) if factionName ~= "Citizen" then counter = counter + 1 guiComboBoxAddItem(cFaction, factionName) comboIndex1[counter] = {getTeamName(factions[i]), getElementData(factions[i], "id")} outputDebugString(counter.." - "..tostring(getTeamName(factions[i])).." - ".. tostring(getElementData(factions[i], "id"))) end end if counter > 2 then counter = counter - 1 end exports.global:guiComboBoxAdjustHeight(cFaction, counter) guiComboBoxSetSelected ( cFaction, getComboIndexFromFactionID(comboIndex1,getElementData(ped, "faction_belong")) )
  10. شكرا لكم كلكم , من آول شخص لاخر شخص سآعدني
  11. شكرا لك ضبط بس ابي اكثر من شخص يحط سريال مو بس انا
  12. احط ذا الكود كلنت ولا سيرفر
  13. سلام عليكم ورحمة آللهه وبركآته كيف آلحآل , عندي سيرفر للبرمجة , ابيه م يخشه الا شخص محدد اذا دخل غيره ينقله للسيرفر الاساسي , يعني سريال محدد هو الي م ينقله للسيرفر الاصلي الباقيين ينقلهم
  14. آخوي لنآ قرآبة الشهر نتكلم ويقول مآبي آكمل آلمود
  15. سلام عليكم ورحمة آلله وبركآته , كيف حآلك آخوي وآي فآي , آخبآر القيم مود حق ونآسة تآيم , كملته ولا باقي ؟ , دفعنآ لك آلمبلغ ومآكملت المود , ي ليت تكمله لنآ
  16. function canPlayerAccessStaffManager(player) return exports.integration:isPlayerTrialAdmin(player) or exports.integration:isPlayerSupporter(player) or exports.integration:isPlayerVCTMember(player) or exports.integration:isPlayerLeadScripter(player) or exports.integration:isPlayerMappingTeamLeader(player) end
  17. سلام عليكم ورحمة الله وبركاته لوحة تسجيل آلحياة الواقعية م تسوي حفظ للحساب اول م يخش يلقاه جآهز --Globals local lUsername, tUsername, lPassword, tPassword, chkRememberLogin, bLogin, bRegister, defaultingTimer = nil local newsTitle, newsText, newsAuthor local loginTitleText = "HOS-INST Roleplay" --Settings block for c_characters.lua/line 87 endCam = { [0] = {591.1669921875, -1827.3310546875, 10.137532234191, 570.09375, -1849.947265625, 4.968677997}, [1] = {2511.8854980469, -1679.1414794922, 17.823833465576, 2425.4426269531, -1641.1086425781, -15.056860923767}, [2] = {1553.4459228516, -1365.8366699219, 332.95718383789, 1495.1271972656, -1295.9808349609, 291.49520874023}, [3] = {-2233.2431640625, -1705.6872558594, 484.6149597168, -2268.3579101563, -1797.0213623047, 463.99838256836}, } startCam = { [0] = {1309.4599609375, -2123.7509765625, 106.98361206055, 1309.53515625, -1818.5615234375, 76.211189270 }, [1] = {2637.0703125, -1719.1510009766, 90.978698730469, 2636.2329101563, -1718.8670654297, 90.511764526367}, [2] = {1862.1447753906, -1743.5769042969, 616.80279541016, 1807.4505615234, -1676.6506347656, 566.50939941406}, [3] = {-1553.6662597656, -1547.2840576172, 76.449432373047, -1653.0958251953, -1555.7768554688, 69.997413635254}, } originalStartCam = { [0] = {1309.4599609375, -2123.7509765625, 106.98361206055, 1309.53515625, -1818.5615234375, 76.211189270 }, [1] = {2637.0703125, -1719.1510009766, 90.978698730469, 2636.2329101563, -1718.8670654297, 90.511764526367}, [2] = {1862.1447753906, -1743.5769042969, 616.80279541016, 1807.4505615234, -1676.6506347656, 566.50939941406}, [3] = {-1553.6662597656, -1547.2840576172, 76.449432373047, -1653.0958251953, -1555.7768554688, 69.997413635254}, } pedPos = { [0] = {581.5712890625, -1835.89453125, 5.6328125, 306.9929}, [1] = {2502.59765625, -1679.40234375, 13.375785827637, 256.50445556641}, [2] = {1549.615234375, -1362.326171875, 329.45889282227, 202.84092712402}, [3] = {-2236.76171875, -1710.3046875, 480.88693237305, 310.16250610352}, } globalspeed = 25 --Higher value = slower speed = {} doneCam = { [0] = {false, false, false, false, false, false}, [1] = {false, false, false, false, false, false}, [2] = {false, false, false, false, false, false}, [3] = {false, false, false, false, false, false}, } function getSelectionScreenID() local hasThisPerk, thisPerkValue = exports.donators:hasPlayerPerk(localPlayer, 24) --Groove St if hasThisPerk and tonumber(thisPerkValue) == 1 then return 1 end hasThisPerk, thisPerkValue = exports.donators:hasPlayerPerk(localPlayer, 25) --Star Tower if hasThisPerk and tonumber(thisPerkValue) == 1 then return 2 end hasThisPerk, thisPerkValue = exports.donators:hasPlayerPerk(localPlayer, 26) --Mount Chiliad if hasThisPerk and tonumber(thisPerkValue) == 1 then return 3 end return 0 end -------------------------------------------- function blackoutOnJoin () -- end addEventHandler ( "onPlayerJoin", getRootElement(), blackoutOnJoin) addEventHandler("accounts:login:request", getRootElement(), function () setElementDimension ( getLocalPlayer(), 0 ) setElementInterior( getLocalPlayer(), 0 ) --setElementPosition( getLocalPlayer(), -262, -1143, 24) --setCameraMatrix(-262, -1143, 24, -97, -1167, 2) setElementPosition( getLocalPlayer(), 1480, -1688, 13 ) setCameraMatrix (originalStartCam[selectionScreenID][2], originalStartCam[selectionScreenID][2], originalStartCam[selectionScreenID][3], originalStartCam[selectionScreenID][4], originalStartCam[selectionScreenID][5], originalStartCam[selectionScreenID][6]) guiSetInputEnabled(true) clearChat() triggerServerEvent("onJoin", getLocalPlayer()) --LoginScreen_openLoginScreen() end ); --[[ LoginScreen_openLoginScreen( ) - Open the login screen ]]-- local wLogin, lUsername, tUsername, lPassword, tPassword, chkRememberLogin, bLogin, bRegister--[[, updateTimer]] = nil function LoginScreen_openLoginScreen(title) open_log_reg_pannel() --[[ guiSetInputEnabled(true) showCursor(true) if not title then local width, height = guiGetScreenSize() local logoW, logoH = 372, 90 local logoPosX = width/2 - 186 local logoPosY = height/2- 140 iLogo = guiCreateStaticImage(logoPosX, logoPosY, logoW, logoH, "img/OGLogo.png", false) lUsername = guiCreateLabel(0.4110, 0.4800, 1, 0.5000, "Username", true) guiSetFont(lUsername, "default-bold-small") tUsername = guiCreateEdit(0.3680, 0.5000, 0.1300, 0.0350, "Username", true) guiSetFont(tUsername, "default-bold-small") guiEditSetMaxLength(tUsername, 32) addEventHandler("onClientGUIAccepted", tUsername, checkCredentials, false) lPassword = guiCreateLabel(0.5460, 0.4800, 1, 0.5000, "Password", true) guiSetFont(lPassword, "default-bold-small") tPassword = guiCreateEdit(0.5000, 0.5000, 0.1300, 0.0350, "Password", true) guiSetFont(tPassword, "default-bold-small") guiEditSetMasked(tPassword, true) guiEditSetMaxLength(tPassword, 64) addEventHandler("onClientGUIAccepted", tPassword, checkCredentials, false) chkRememberLogin = guiCreateCheckBox(0.4610, 0.5650, 0.1300, 0.0350, "Remember Me", false, true) guiSetFont(chkRememberLogin, "default-bold-small") bLogin = guiCreateButton(0.4330, 0.5400, 0.0650, 0.0300, "Login", true) guiSetFont(bLogin, "default-bold-small") addEventHandler("onClientGUIClick", bLogin, checkCredentials, false) bRegister = guiCreateButton(0.5000, 0.5400, 0.0650, 0.0300, "Register", true) guiSetFont(bRegister, "default-bold-small") addEventHandler("onClientGUIClick", bRegister, LoginScreen_Register, false) guiSetText(tUsername, tostring( loadSavedData("username", "") )) local tHash = tostring( loadSavedData("hashcode", "") ) guiSetText(tPassword, tHash) if #tHash > 1 then guiCheckBoxSetSelected(chkRememberLogin, true) end newsTitle = getElementData(getResourceRootElement(), "news:title") newsText = getElementData(getResourceRootElement(), "news:text") newsAuthor = getElementData(getResourceRootElement(), "news:sub") addEventHandler("onClientRender", getRootElement(), showLoginTitle) triggerEvent("accounts:settings:loadGraphicSettings", getLocalPlayer()) else loginTitleText = title addEventHandler("onClientRender", getRootElement(), showLoginTitle) end ]] end addEvent("beginLogin", true) addEventHandler("beginLogin", getRootElement(), LoginScreen_openLoginScreen) function showLoginTitle() --[[ local screenX, screenY = guiGetScreenSize() local alphaAction = 3 local alphaStep = 50 local alphaAction = 3 local alphaStep = 50 local sWidth,sHeight = guiGetScreenSize() if loginTitleText == "Banned." then dxDrawText(loginTitleText,(700/1600)*sWidth, (350/900)*sHeight, (900/1600)*sWidth, (450/900)*sHeight, tocolor(255,0,0,255), (sWidth/1600)*2, "default-bold","center","center",false,false,false) else dxDrawText(loginTitleText,(700/1600)*sWidth, (350/900)*sHeight, (900/1600)*sWidth, (450/900)*sHeight, tocolor(255,255,255,255), (sWidth/1600)*2, "default-bold","center","center",false,false,false) end alphaStep = alphaStep + alphaAction if (alphaStep > 200) or (alphaStep < 50) then alphaAction = alphaAction - alphaAction - alphaAction end dxDrawRectangle( (10/1600)*sWidth, (17/900)*sHeight, (400/1600)*sWidth, (600/900)*sHeight, tocolor(0, 0, 0, 150)) dxDrawText( newsTitle, (35/1600)*sWidth, (30/900)*sHeight, (375/1600)*sWidth, (550/900)*sHeight, tocolor ( 255, 255, 255, 255 ), 1.5, "default-bold" ) dxDrawText( " " .. newsAuthor, (80/1600)*sWidth, (60/900)*sHeight, sWidth, sHeight, tocolor ( 255, 255, 255, 255 ), 1.2, "default-bold", "left", "top", true, false ) dxDrawText( newsText, (35/1600)*sWidth, (92/900)*sHeight, (375/1600)*sWidth, sHeight, tocolor ( 255, 255, 255, 255 ), 1, "default-bold", "left", "top", true, true ) ]] end function LoginScreen_Register() local username = guiGetText(tUsername) local password = guiGetText(tPassword) if (string.len(username)<3) then LoginScreen_showWarningMessage( "Your username must be a minimum of 3 characters!" ) elseif (string.find(username, ";", 0)) or (string.find(username, "'", 0)) or (string.find(username, "@", 0)) or (string.find(username, ",", 0)) or (string.find(username, " ", 0)) then LoginScreen_showWarningMessage("Your username cannot contain ;,@.' or space!") elseif (string.len(password)<6) then LoginScreen_showWarningMessage("Your password is too short. \n You must enter 6 or more characters.", 255, 0, 0) elseif (string.len(password)>=30) then LoginScreen_showWarningMessage("Your password is too long. \n You must enter less than 30 characters.", 255, 0, 0) elseif (string.find(password, ";", 0)) or (string.find(password, "'", 0)) or (string.find(password, "@", 0)) or (string.find(password, ",", 0)) then LoginScreen_showWarningMessage("Your password cannot contain ;,@'.", 255, 0, 0) else showChat(true) triggerServerEvent("accounts:register:attempt", getLocalPlayer(), username, password) end end function LoginScreen_RefreshIMG() currentslide = currentslide + 1 if currentslide > totalslides then currentslide = 1 end end --[[ LoginScreen_closeLoginScreen() - Close the loginscreen ]] function LoginScreen_closeLoginScreen() removeEventHandler( "onClientRender", getRootElement(), showLoginTitle ) end --[[ checkCredentials() - Used to validate and send the contents of the login screen ]]-- function checkCredentials() local username = guiGetText(tUsername) local password = guiGetText(tPassword) guiSetText(tPassword, "") --appendSavedData("hashcode", "") if (string.len(username)<3) then outputChatBox("Your username is too short. You must enter 3 or more characters.", 255, 0, 0) else local saveInfo = guiCheckBoxGetSelected(chkRememberLogin) triggerServerEvent("accounts:login:attempt", getLocalPlayer(), username, password, saveInfo) if (saveInfo) then --appendSavedData("username", tostring(username)) else --appendSavedData("username", "") end end end local warningBox, warningMessage, warningOk = nil function LoginScreen_showWarningMessage( message ) if (isElement(warningBox)) then destroyElement(warningBox) end local x, y = guiGetScreenSize() warningBox = guiCreateWindow( x*.5-150, y*.5-65, 300, 120, "Attention!", false ) guiWindowSetSizable( warningBox, false ) warningMessage = guiCreateLabel( 40, 30, 220, 60, message, false, warningBox ) guiLabelSetHorizontalAlign( warningMessage, "center", true ) guiLabelSetVerticalAlign( warningMessage, "center" ) warningOk = guiCreateButton( 130, 90, 70, 20, "Ok", false, warningBox ) addEventHandler( "onClientGUIClick", warningOk, function() destroyElement(warningBox) end ) guiBringToFront( warningBox ) end addEventHandler("accounts:error:window", getRootElement(), LoginScreen_showWarningMessage) function defaultLoginText() loginTitleText = "HOS-INST MTA Roleplay" end addEventHandler("accounts:login:attempt", getRootElement(), function (statusCode, additionalData) if (statusCode == 0) then LoginScreen_closeLoginScreen() if (isElement(warningBox)) then destroyElement(warningBox) end -- Succesful login --[[ for _, theValue in ipairs(additionalData) do setElementData(getLocalPlayer(), theValue[1], theValue[2], false) end ]] local newAccountHash = getElementData(getLocalPlayer(), "account:newAccountHash") --appendSavedData("hashcode", newAccountHash or "") local characterList = getElementData(getLocalPlayer(), "account:characters") if #characterList == 0 then newCharacter_init() else Characters_showSelection() fadeCamera ( false, 0, 0,0,0 ) end elseif (statusCode > 0) and (statusCode < 5) then LoginScreen_showWarningMessage( additionalData ) elseif (statusCode == 5) then LoginScreen_showWarningMessage( additionalData ) -- TODO: show make app screen? end end ) local Window = {} local Button = {} local Label = {} local Edit = {} function showPasswordUpdate() showCursor(true) Window[1] = guiCreateWindow(0.3562,0.3997,0.2891,0.2383,"SECURITY NOTICE:",true) guiSetInputEnabled ( true) Label[1] = guiCreateLabel(0.0378,0.153,0.9324,0.2404,"We have noticed a potential security flaw with your account.\nTo help prevent any loss of data, we highly reccomend that\nyou enter a new password in the box below!",true,Window[1]) guiLabelSetColor(Label[1],0,200,0) guiLabelSetHorizontalAlign(Label[1],"center",false) Edit[1] = guiCreateEdit(0.4243,0.4481,0.5351,0.1475,"",true,Window[1]) guiEditSetMasked(Edit[1], true) Edit[2] = guiCreateEdit(0.4243,0.6175,0.5351,0.1475,"",true,Window[1]) guiEditSetMasked(Edit[2], true) Label[2] = guiCreateLabel(0.1649,0.4754,0.2432,0.1038,"New Password:",true,Window[1]) Label[3] = guiCreateLabel(0.1216,0.6284,0.2784,0.1038,"Confirm Password:",true,Window[1]) Button[1] = guiCreateButton(0.427,0.8087,0.527,0.1257,"Change Password",true,Window[1]) addEventHandler("onClientGUIClick", Button[1], function() triggerServerEvent("account:forceChange:validate", getLocalPlayer(), guiGetText(Edit[1]), guiGetText(Edit[2])) end) end addEvent("account:forceChangePassword:GUI", true) addEventHandler("account:forceChangePassword:GUI", getRootElement(), showPasswordUpdate) function closePasswordUpdate() destroyElement(Window[1]) showCursor(false) guiSetInputEnabled ( false) end addEvent("account:forceChange:GUIClose", true) addEventHandler("account:forceChange:GUIClose", getRootElement(), closePasswordUpdate)
  18. بآلتوفيق , باذن آلله آخر واحد يخش , لعدم انتباهي للمواضيع هنآ بس ان شاء الله نلحق الافتتآح ونخش الاول
×
×
  • Create New...