Jump to content


  • Posts

  • Joined

  • Last visited

Everything posted by SinaAmp

  1. @SpecToh sorry i forgot to edit my code in forum that (fixvehicle(hitElement)) is my test code i replaced that with destroyElement(hitElement) but again that not worked
  2. @SpecT whats wrong with my serverside script? i doesn't receive any error in debugscript 3 -- client function DesVeh(weapon, ammo, ammoInClip, hitX, hitY, hitZ, hitElement ) if weapon == 22 and getElementType(hitElement)=="vehicle" then triggerServerEvent("onAdminShot" , hitElement) outputChatBox ( "Your vehicle has been destroyed!", 0, 255, 0 ) else outputChatBox ( "opssss !", 255, 0, 0 ) end end addEventHandler ( "onClientPlayerWeaponFire", root, DesVeh ) -- server function DesMyVeh(hitElement) if isElement(hitElement) and getElementType(hitElement) == "vehicle" then fixVehicle(hitElement) end end addEvent("onAdminShot",true); addEventHandler("onAdminShot",root,DesMyVeh);
  3. thank you @Tekken why my script does not destroy vehicles? -- client function DesVeh(weapon, ammo, ammoInClip, hitX, hitY, hitZ, hitElement ) if weapon == 22 and getElementType(hitElement)=="vehicle" then destroyElement(hitElement) outputChatBox ( "Your vehicle has been destroyed!", 0, 255, 0 ) else outputChatBox ( "opssss !", 255, 0, 0 ) end end addEventHandler ( "onClientPlayerWeaponFire", root, DesVeh )
  4. thank you @xLive but every thing i tried not worked can u give me example script?
  5. hi guys how i can give function to gun shot (and preventing damage) for destroy only vehicles? (I want to make a admin tool that destroy veh and its replace with colt45)
  6. @SpecT @nikitafloy hi is this method works? function(username) if (singleQuery("SELECT * FROM accounts WHERE username=? LIMIT 1",(username))) then local myacc = singleQuery("SELECT * FROM accounts WHERE username=? LIMIT 1",(username)) local aaccount = aclGroupListObjects(Admin) local admins = {} local agroup = aclGetGroup( "Admin" ) if (group) then aclGroupListObjects(group) local objType = gettok( object, 1, string.byte('.') ) if (objType == "user") then local _name = gettok( object, 2, string.byte('.') ) table.insert( admins, _name ) end end if (myacc == admins) then aclSetRight() aclSave () end end end
  7. thank you @SpecT i tried everything but my scripts does not work
  8. hi my mysql login panel have issue when the player joins it can't realise player is admin or not to give him admin right any suggest?
  9. i solved this problem by change line 53 & 110 to below code -- line 53 setPlayerName(source, accData.nickname) -- line 110 local name = getPlayerName(palyer) but after join i can't get admin rights by my loggin panel i need need script to check player is in the acl or not
  10. hi all resently i edited the login panel that stores data in mysql and i edited it to receive nick name from player and save it but after register and login it can't get player saved nickname here is my server side script i think line 110 or 54 have issue local db_host = "" --change this if your using MySQL off the server machine your using for the MTA server. local db_username = "" --database username local db_password = "" --datbase password local db_table = "" local db_port = "" local connection = false function connect() connection = dbConnect("mysql","dbname="..db_table..";host="..db_host..";port="..db_port..";unix_socket=/var/run/mysqld/mysqld.sock",db_username,db_password) if (connection) then outputChatBox("connected") return true else outputChatBox("notconnected") setTimer(connect,5000,1) end end addEventHandler("onResourceStart",resourceRoot,connect) function singleQuery(str,...) if (connection) then local query = dbQuery(connection,str,...) local result = dbPoll(query,-1) if (type(result == "table")) then return result[1] else return result end else return false end end function execute(str,...) if (connection) then local query = dbExec(connection,str,...) return query else return false end end ---------------------------------------------------------------------------------------------------------------------- addEvent("onPlayerAttemptLogin",true) addEventHandler("onPlayerAttemptLogin",root, function(username,nickname,password) if (singleQuery("SELECT * FROM accounts WHERE username=? LIMIT 1",string.lower(username))) then local accData = singleQuery("SELECT * FROM accounts WHERE username=? AND nickname=? AND password=? LIMIT 1",string.lower(username),string.lower(nickname),sha256(password)) if (accData) then outputChatBox("Welcome back "..getPlayerName(source),source,0,255,0) setElementData(source,"accountID",accData.id) setElementData(source,"accountUsername",accData.username) setElementData(source,"accountNickname",accData.nickname) fadeCamera(source,false,1.0,0,0,0) setTimer(fadeCamera,2000,1,source,true,1.0,0,0,0) setCameraTarget(source,source) showChat(source,true) showPlayerHudComponent(source,"radar",true) showPlayerHudComponent(source,"area_name",true) spawnPlayer(source,accData.x,accData.y,accData.z+1,accData.rotation,accData.skin,accData.interior,accData.dimension,accData.team) local weapons = fromJSON(accData.weapons) if (weapons) then for k,v in pairs(weapons) do giveWeapon(source,tonumber(k),tonumber(v)) end end if (accData.health == 0) then killPed(source) else setElementHealth(source,tonumber(accData.health)) end setPedArmor(source,tonumber(accData.armor)) setPlayerMoney(source,tonumber(accData.money)) setElementData(source,"isGuestAccount",false) triggerClientEvent(source,"closeLoginWindow",source) triggerEvent("onAccountPlayerLogin",source,accData.id,accData.username,accData.nickname) log(source) --store the login data. else outputChatBox("Your username and/or password is incorrect!",source,255,0,0) end else outputChatBox("This username doesn't exist!",source,255,0,0) end end) addEvent("onPlayerAttemptRegister",true) addEventHandler("onPlayerAttemptRegister",root, function(username,nickname,password1,password2,email) if (singleQuery("SELECT username FROM accounts WHERE username=? LIMIT 1",string.lower(username))) then outputChatBox("This username is taken! please choose another!",source,255,0,0) else local x,y,z = 1450.32421875, -2287.287109375, 13.546875 if (execute("INSERT INTO accounts (username,nickname,password,email,serial,x,y,z,interior,dimension,skin,health) VALUES (?,?,?,?,?,?,?,?,?,?,?,?)",string.lower(username),string.lower(nickname),sha256(password1),email,getPlayerSerial(source),x,y,z+1,0,0,0,100)) then outputChatBox("Your account was registered successfully!",source,0,255,0) triggerClientEvent(source,"switchToLogin",source) end end end) ------------------------------ function log(player) if (player) then local serial = getPlayerSerial(player) local ip = getPlayerIP(player) local name = getElementData(palyer, "accountNickname") local username = getElementData(player,"accountUsername") local timestamp = getRealTime().timestamp execute("INSERT INTO logs (username,playerName,serial,ip,timestamp) VALUES (?,?,?,?,?)",username,name,serial,ip,timestamp) end end function prepair() setElementData(source,"isGuestAccount",true) outputChatBox("Welcome to the server.",source,0,255,0) end addEventHandler("onPlayerJoin",root,prepair) function saveData() if not (getElementData(source,"isGuestAccount") == true) then x,y,z = getElementPosition(source) int,dim = getElementInterior(source),getElementDimension(source) health,armor = getElementHealth(source),getPedArmor(source) money = getPlayerMoney(source) rotation = getElementRotation(source) team = getTeamName(getPlayerTeam(soure)) skin = getElementModel(source) weapons = {} for i=0,12 do local wep = getPedWeapon(source,i) if (wep > 0) then local ammo = getPedTotalAmmo(source,i) if (ammo > 0) then table.insert(weapons,{wep,ammo}) end end end weaponsStr = toJSON(weapons) id = getElementData(source,"accountID") execute("UPDATE accounts SET x=?,y=?,z=?,interior=?,dimension=?,health=?,armor=?,money=?,rotation=?,team=?,skin=?,weapons=? WHERE id=?",x,y,z,int,dim,health,armor,money,rotation,team,skin,weaponsStr,id) else return false end end addEventHandler("onPlayerQuit",root,saveData) addEventHandler("onPlayerWasted",root,saveData)
  11. thank you so much bro that worked do you know how i can prevent random name after player join and login ? i mean my login panel get username and pasword for login and register but how it can get nick name from player and prevent random nickname? i dont know usually rp servers how they get nickname and which default script make onjoin random nick name
  12. hello guys i need to show player account name instaead nikname in server or if you can show me a example script that can save player nickname and after login set player nickname to saved nikname i found this code but this can't change player nickname to account name after login local counter = 0 local originalName = {} addEventHandler('onPlayerJoin', root, function() local name = getPlayerName(source) originalName[source] = name setPlayerName(source, "Guest_"..counter) counter = counter + 1 end) addEventHandler('onPlayerLogin', root, function() setPlayerName(source, originalName[source]) end)
  13. i dont have any code for mysql i cannt understand this topic i tried it but it doesent work and i cant download server.zip file is it possible to create database in cpanel and connect it to server? can i talk with you in gmail?
  14. hi i loged in to my account in my server and set my nik and my money but when i disconnected my changes dont saved is it relevant to mysql?
  15. hi i have a question? the freeroom gamemod is rpg gamemod? :| how i can change default gamemod to RPG?
  • Create New...