||BuLLeT|| Posted December 27, 2012 Share Posted December 27, 2012 call(getResourceFromName("scoreboard"),"addScoreboardColumn","Money",root,20) call(getResourceFromName("scoreboard"),"addScoreboardColumn","Class",root,100) function update() for k, v in ipairs(getElementsByType('player')) do local money = getPlayerMoney(v) setElementData(v,"Money",money ) end for g, v in ipairs(getElementsByType('player')) do local gang = getElementData(v,"spawnedAs") or "N/A" setElementData(v,"Class",gang ) end end setTimer(update, 100, 0) playerBlips = {} function startup () local xml = xmlLoadFile("spawns.xml") -- open the XML file local cityNodes = xmlNodeGetChildren(xml) -- get all child nodes of the root node () local cities = {} -- create a new global variable to store the welcome messages for i,node in ipairs(cityNodes) do local classnodes = xmlNodeGetChildren(node) for i2,node2 in ipairs(classnodes) do local name = xmlNodeGetAttribute(node2, "name") local r = xmlNodeGetAttribute(node2, "r") local g = xmlNodeGetAttribute(node2, "g") local b = xmlNodeGetAttribute(node2, "b") if not getTeamFromName(name) then createTeam( name , r , g , b) end end end xmlUnloadFile(xml) -- Logout all players for safety. local players = getElementsByType ( "player" ) -- Get every player for k, player in ipairs ( players ) do -- For every player do the following... account = getPlayerAccount ( player ) -- Get every player's account if ( not isGuestAccount ( account ) ) then -- For every player that's logged in.... logOut ( player ) -- Log them out. end end addEventHandler("onPlayerLogout",getRootElement(),loggedOut) end addEventHandler("onResourceStart", resourceRoot, startup) function playerSpawn (spawnX, spawnY, spawnZ, team, permission, skin, weapons, player, skinName, sR, sG, sB ) local playerAccountName = getAccountName(getPlayerAccount(player)) --outputConsole("user." .. playerAccountName .. ", " .. permission) if isObjectInACLGroup ("user." .. playerAccountName, aclGetGroup(permission)) then spawnTeam = getTeamFromName(team) spawnPlayer (player, spawnX , spawnY, spawnZ, 0, skin, 0, 0, spawnTeam) -- spawns player with random skin fadeCamera (player, true) setCameraInterior (player, 0 ) setCameraTarget (player, player) local tR , tG , tB = getTeamColor(spawnTeam) local r = sR or tR local g = sG or tG local b = sB or tB playerBlips[player] = createBlipAttachedTo(player, 0, 2, r, g, b, 255, 0, 65535, getRootElement()) setPlayerNametagColor(player, r, g, b) if(weapons) then local weps = split(weapons, ",") for i, node in ipairs(weps) do --outputConsole(node) local wepinfo = split(node, ".") local wepid = wepinfo[1] --outputConsole(wepid) local wepammo = wepinfo[2] --outputConsole(wepammo) giveWeapon ( player, wepid, wepammo ) end end setAccountData(getPlayerAccount(player), "skinName", skinName) setElementData(player, "spawnedAs", skinName) triggerClientEvent(player, "onSpawnSuccessful", getRootElement()) else triggerClientEvent(player, "onSpawnError", getRootElement() , "You Dont Have Permission .") end end addEvent("onPlayerSpawnButton", true) addEventHandler("onPlayerSpawnButton", getRootElement(), playerSpawn) function playerDespawn() local player = source if playerBlips[player] then if getElementType(playerBlips[player]) == "blip" then destroyElement(playerBlips[player]) end end end addEventHandler("onPlayerWasted", getRootElement(), playerDespawn) addEventHandler("onPlayerQuit", getRootElement(), playerDespawn) function saveProperty(a, b, c, playah) local player = playah or source local playeraccount = getPlayerAccount(player) if not isPedDead(player) then local x, y, z = getElementPosition(player) setAccountData(playeraccount, "x", x) setAccountData(playeraccount, "y", y) setAccountData(playeraccount, "z", z) local skin = getElementModel(player) setAccountData(playeraccount, "skin", skin) local team = getTeamName(getPlayerTeam(player)) setAccountData(playeraccount, "team", team) local permission = "spawn.spawn" setAccountData(playeraccount, "permission", permission) local weaponsarray = {} for i=1, 12 do if(getPedWeapon(player, i) ~= 0 and getPedTotalAmmo(player, i) > 0) then table.insert(weaponsarray, getPedWeapon(player, i) .. "." .. getPedTotalAmmo(player, i)) end end local weaponstring = table.concat(weaponsarray,",") setAccountData(playeraccount, "weapons", weaponstring) setAccountData(playeraccount, "aliveonquit", true) else setAccountData(playeraccount, "aliveonquit", false) setAccountData(playeraccount, "x", nil) setAccountData(playeraccount, "y", nil) setAccountData(playeraccount, "z", nil) setAccountData(playeraccount, "permission", nil) setAccountData(playeraccount, "team", nil) setAccountData(playeraccount, "skin", nil) setAccountData(playeraccount, "weapons", nil) end end addEventHandler("onPlayerQuit", getRootElement(), saveProperty) function wasPlayerAlive() if getAccountData(getPlayerAccount(source), "aliveonquit") then --outputConsole("Seems like playah wus alive!") local playerAccount = getPlayerAccount(source) local x = getAccountData(playerAccount, "x") local y = getAccountData(playerAccount, "y") local z = getAccountData(playerAccount, "z") local team = getAccountData(playerAccount, "team") local permission = getAccountData(playerAccount, "permission") local skin = getAccountData(playerAccount, "skin") local weps = getAccountData(playerAccount, "weapons") local skinName = getAccountData(playerAccount, "skinName") playerSpawn(x , y , z, team, permission, skin, weps, source, skinName) else triggerClientEvent(source, "onPlayerWasntAlive", source) end end addEvent("wasPlayerAliveEvent", true) addEventHandler("wasPlayerAliveEvent", getRootElement(), wasPlayerAlive) function loggedOut() cancelEvent() outputChatBox("You can't log out!", source, 255, 0 ,0) end function stopdown() local players = getElementsByType("player") for i, player in ipairs(players) do saveProperty(nil, nil, nil, player) killPed(player) logOut(player) end end addEventHandler("onResourceStop", resourceRoot, stopdown) So you would ask wheres problem here? hmm, its when i start script, spawn is not showing,it just log players out and when they login nothing, i want that when script starts that spawn menu is showing to players so they can spawn! Anybody could help? DO NOT COPY THIS PLEASE! Link to comment
Castillo Posted December 27, 2012 Share Posted December 27, 2012 function update() for k, v in ipairs(getElementsByType('player')) do local money = getPlayerMoney(v) setElementData(v,"Money",money ) end for g, v in ipairs(getElementsByType('player')) do local gang = getElementData(v,"spawnedAs") or "N/A" setElementData(v,"Class",gang ) end end setTimer(update, 100, 0) That function is really inefficient, reasons: 1: You are looping twice, that's not required, you can use the same loop for both. 2: You are using a 100 ms timer, that's not efficient at all. About your problem, where's the login part? Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now