Jump to content

Not working.


xeon17

Recommended Posts

I want when a player click to spawn , he spawn there where he quit last time on my server , with same weapons , money , weapon skill and other but with the skin witch he choosen in skin-selector , but it dosen't work.

SERVER :

function onQuit (quitType, reason, responsibleElement) 
          if not (isGuestAccount (getPlayerAccount (source))) then 
            account = getPlayerAccount (source) 
            if (account) then 
              local x,y,z = getElementPosition (source) 
              setAccountData (account, "funmodev2-money", tostring (getPlayerMoney (source))) 
              setAccountData (account, "funmodev2-health", tostring (getElementHealth (source))) 
              setAccountData (account, "funmodev2-armor", tostring (getPedArmor (source))) 
              setAccountData (account, "funmodev2-R", r) 
              setAccountData (account, "funmodev2-G", g) 
              setAccountData (account, "funmodev2-B", b) 
              setAccountData (account, "funmodev2-x", x) 
              setAccountData (account, "funmodev2-y", y) 
              setAccountData (account, "funmodev2-z", z) 
              setAccountData (account, "funmodev2-int", getElementInterior (source)) 
              setAccountData (account, "funmodev2-dim", getElementDimension (source)) 
              setAccountData (account, "funmodev2-wantedlevel", getPlayerWantedLevel (source)) 
              setAccountData (account, "funmodev2-weaponID0", getPedWeapon (source, 0)) 
              setAccountData (account, "funmodev2-weaponID1", getPedWeapon (source, 1)) 
              setAccountData (account, "funmodev2-weaponID2", getPedWeapon (source, 2)) 
              setAccountData (account, "funmodev2-weaponID3", getPedWeapon (source, 3)) 
              setAccountData (account, "funmodev2-weaponID4", getPedWeapon (source, 4)) 
              setAccountData (account, "funmodev2-weaponID5", getPedWeapon (source, 5)) 
              setAccountData (account, "funmodev2-weaponID6", getPedWeapon (source, 6)) 
              setAccountData (account, "funmodev2-weaponID7", getPedWeapon (source, 7)) 
              setAccountData (account, "funmodev2-weaponID8", getPedWeapon (source, -- s8) -->) 
              setAccountData (account, "funmodev2-weaponID9", getPedWeapon (source, 9)) 
              setAccountData (account, "funmodev2-weaponID10", getPedWeapon (source, 10)) 
              setAccountData (account, "funmodev2-weaponID11", getPedWeapon (source, 11)) 
              setAccountData (account, "funmodev2-weaponID12", getPedWeapon (source, 12)) 
              setAccountData (account, "funmodev2-weaponAmmo0", getPedTotalAmmo (source, 0)) 
              setAccountData (account, "funmodev2-weaponAmmo1", getPedTotalAmmo (source, 1)) 
              setAccountData (account, "funmodev2-weaponAmmo2", getPedTotalAmmo (source, 2)) 
              setAccountData (account, "funmodev2-weaponAmmo3", getPedTotalAmmo (source, 3)) 
              setAccountData (account, "funmodev2-weaponAmmo4", getPedTotalAmmo (source, 4)) 
              setAccountData (account, "funmodev2-weaponAmmo5", getPedTotalAmmo (source, 5)) 
              setAccountData (account, "funmodev2-weaponAmmo6", getPedTotalAmmo (source, 6)) 
              setAccountData (account, "funmodev2-weaponAmmo7", getPedTotalAmmo (source, 7)) 
              setAccountData (account, "funmodev2-weaponAmmo8", getPedTotalAmmo (source, -- s8) -->) 
              setAccountData (account, "funmodev2-weaponAmmo9", getPedTotalAmmo (source, 9)) 
              setAccountData (account, "funmodev2-weaponAmmo10", getPedTotalAmmo (source, 10)) 
              setAccountData (account, "funmodev2-weaponAmmo11", getPedTotalAmmo (source, 11)) 
              setAccountData (account, "funmodev2-weaponAmmo12", getPedTotalAmmo (source, 12)) 
            end 
          end 
        end 
        addEventHandler ("onPlayerQuit", getRootElement(), onQuit) 
  
  
  
  
  
  
  
  
  
  
local spawnLocations = { 
{2171.90625, 1392.59765625, 10.8203125}, 
{2265.3674316406, 2398.3068847656, 10.8203125}, 
{2361.689453125, 2070.2077636719, 10.671875}, 
{2087.9260253906, 1448.8768310547, 10.8203125}, 
{2000.55, 1526.25, 14.6171875}, 
{1607.35, 1816.54, 10.82} 
} 
  
  
  
StartMoney = 2500 
CashForKill = 2500 
PayNSprayCost = 100 
  
playerSkin = {} 
Garages = {0,1,2,3,4,5,6,7,8,9,10, 
11,12,13,14,15,16,17,18,19,20, 
21,22,23,24,25,26,27,28,29,30, 
31,32,33,34,35,36,37,38,39,40, 
41,42,43,44,45,46,47,48,49,50, 
51,52,53,54,55,56,57,58,59,60} 
  
  
  
function SpawnPlayer(thePlayer,skin,r,g,b , thePreviousAccount, theCurrentAccount, autoLogin) 
local accountData = getAccountData (theCurrentAccount, "funmodev2-money") 
            if (accountData) then 
              local playerMoney = getAccountData (theCurrentAccount, "funmodev2-money") 
              local playerSkin = getAccountData (theCurrentAccount, "funmodev2-skin") 
              local playerHealth = getAccountData (theCurrentAccount, "funmodev2-health") 
              local playerArmor = getAccountData (theCurrentAccount, "funmodev2-armor") 
              local playerX = getAccountData (theCurrentAccount, "funmodev2-x") 
              local playerY = getAccountData (theCurrentAccount, "funmodev2-y") 
              local playerZ = getAccountData (theCurrentAccount, "funmodev2-z") 
              local playerInt = getAccountData (theCurrentAccount, "funmodev2-int") 
              local playerDim = getAccountData (theCurrentAccount, "funmodev2-dim") 
              local playerWanted = getAccountData (theCurrentAccount, "funmodev2-wantedlevel") 
             local playerTeam = getAccountData (theCurrentAccount, "funmodev2-Team") 
              local playerWeaponID0 = getAccountData (theCurrentAccount, "funmodev2-weaponID0") 
              local playerWeaponID1 = getAccountData (theCurrentAccount, "funmodev2-weaponID1") 
              local playerWeaponID2 = getAccountData (theCurrentAccount, "funmodev2-weaponID2") 
              local playerWeaponID3 = getAccountData (theCurrentAccount, "funmodev2-weaponID3") 
              local playerWeaponID4 = getAccountData (theCurrentAccount, "funmodev2-weaponID4") 
              local playerWeaponID5 = getAccountData (theCurrentAccount, "funmodev2-weaponID5") 
              local playerWeaponID6 = getAccountData (theCurrentAccount, "funmodev2-weaponID6") 
              local playerWeaponID7 = getAccountData (theCurrentAccount, "funmodev2-weaponID7") 
              local playerWeaponID8 = getAccountData (theCurrentAccount, "funmodev2-weaponID8") 
              local playerWeaponID9 = getAccountData (theCurrentAccount, "funmodev2-weaponID9") 
              local playerWeaponID10 = getAccountData (theCurrentAccount, "funmodev2-weaponID10") 
              local playerWeaponID11 = getAccountData (theCurrentAccount, "funmodev2-weaponID11") 
              local playerWeaponID12 = getAccountData (theCurrentAccount, "funmodev2-weaponID12") 
              local playerWeaponAmmo0 = getAccountData (theCurrentAccount, "funmodev2-weaponAmmo0") 
              local playerWeaponAmmo1 = getAccountData (theCurrentAccount, "funmodev2-weaponAmmo1") 
              local playerWeaponAmmo2 = getAccountData (theCurrentAccount, "funmodev2-weaponAmmo2") 
              local playerWeaponAmmo3 = getAccountData (theCurrentAccount, "funmodev2-weaponAmmo3") 
              local playerWeaponAmmo4 = getAccountData (theCurrentAccount, "funmodev2-weaponAmmo4") 
              local playerWeaponAmmo5 = getAccountData (theCurrentAccount, "funmodev2-weaponAmmo5") 
              local playerWeaponAmmo6 = getAccountData (theCurrentAccount, "funmodev2-weaponAmmo6") 
              local playerWeaponAmmo7 = getAccountData (theCurrentAccount, "funmodev2-weaponAmmo7") 
              local playerWeaponAmmo8 = getAccountData (theCurrentAccount, "funmodev2-weaponAmmo8") 
              local playerWeaponAmmo9 = getAccountData (theCurrentAccount, "funmodev2-weaponAmmo9") 
              local playerWeaponAmmo10 = getAccountData (theCurrentAccount, "funmodev2-weaponAmmo10") 
              local playerWeaponAmmo11 = getAccountData (theCurrentAccount, "funmodev2-weaponAmmo11") 
              local playerWeaponAmmo12 = getAccountData (theCurrentAccount, "funmodev2-weaponAmmo12") 
              spawnPlayer (source, playerX, playerY, playerZ +1, 0, playerSkin, playerInt, playerDim) 
    spawnPlayer ( thePlayer, playerX, playerY, playerZ +1, 90.0, skin ,playerInt, playerDim  ) 
              giveWeapon(source, playerWeaponID0, playerWeaponAmmo0, true) 
              giveWeapon(source, playerWeaponID1, playerWeaponAmmo1, false) 
              giveWeapon(source, playerWeaponID2, playerWeaponAmmo2, false) 
              giveWeapon(source, playerWeaponID3, playerWeaponAmmo3, false) 
              giveWeapon(source, playerWeaponID4, playerWeaponAmmo4, false) 
              giveWeapon(source, playerWeaponID5, playerWeaponAmmo5, false) 
              giveWeapon(source, playerWeaponID6, playerWeaponAmmo6, false) 
              giveWeapon(source, playerWeaponID7, playerWeaponAmmo7, false) 
              giveWeapon(source, playerWeaponID8, playerWeaponAmmo8, false) 
              giveWeapon(source, playerWeaponID9, playerWeaponAmmo9, false) 
              giveWeapon(source, playerWeaponID10, playerWeaponAmmo10, false) 
              giveWeapon(source, playerWeaponID11, playerWeaponAmmo11, false) 
              giveWeapon(source, playerWeaponID12, playerWeaponAmmo12, false) 
    setCameraTarget (source, source) 
    createBlipAttachedTo(source,0,2,r,g,b) 
    setPlayerMoney(thePlayer,playerMoney) 
    playerSkin[thePlayer] = {skin,r,g,b} 
    setElementData(thePlayer,"Score",0) 
    setPlayerNametagShowing ( thePlayer, false) 
end 
addEvent( "onClientWantsToSpawn", true ) 
addEventHandler( "onClientWantsToSpawn", getRootElement(), SpawnPlayer ) 
  
addEventHandler ( "onPlayerQuit", getRootElement(), 
function() 
    local attachedElements = getAttachedElements ( source ) 
        if ( attachedElements ) then 
            for k,v in ipairs ( attachedElements ) do 
                if ( getElementType ( v ) == "blip" ) then 
                    destroyElement(v) 
                else 
            end 
        end 
    end 
end) 
  
function PlayerDied(ammo,killer) 
    if killer and getElementType ( killer ) == "player" then 
        setPlayerMoney(killer,getPlayerMoney(killer)+CashForKill) 
        local Score = getElementData(killer,"Score") 
        setElementData(killer,"Score",Score+1) 
    end 
setTimer(PlayerRespawn,1000,1,source) 
end 
addEventHandler("onPlayerWasted",getRootElement(),PlayerDied) 
  
function PlayerRespawn(diedPlayer) 
if not diedPlayer then else 
    toggleAllControls(diedPlayer,true) 
    setPlayerMoney(diedPlayer,StartMoney) 
    local chosenSpawnLocation = math.random(1,#spawnLocations) 
   spawnPlayer(diedPlayer,spawnLocations[chosenSpawnLocation][1],spawnLocations[chosenSpawnLocation][2],spawnLocations[chosenSpawnLocation][3],90,playerSkin[diedPlayer][1]) 
    setCameraTarget (diedPlayer, diedPlayer) 
end 
end 
  
function FixPlayerVehicle(hitElement,number) 
    local money = getPlayerMoney(hitElement) 
        if money < PayNSprayCost then 
            outputChatBox("*PM: You don't have enought cash.",hitElement,170,0,0,true) 
        else 
            if getPedOccupiedVehicle(hitElement) then 
            local vehicle = getPedOccupiedVehicle(hitElement) 
            fixVehicle(vehicle) 
            playSoundFrontEnd(hitElement,16) 
            toggleAllControls(hitElement,false) 
            setPlayerMoney(hitElement,money-PayNSprayCost) 
        local vehicle = getPedOccupiedVehicle(hitElement) 
            setElementFrozen(vehicle,true) 
            setTimer(function() 
            toggleAllControls(hitElement,true) 
            setCameraTarget (hitElement, hitElement) 
            setElementFrozen(vehicle,false) 
            end,2500,1) 
                if number == 1 then 
                    setCameraMatrix(hitElement,1032.7685546875,-1039.337890625,45.220012664795,1030.095703125,-1027.6357421875,40.220008850098) 
                elseif number == 2 then 
                    setCameraMatrix(hitElement,489.150390625,-1728.8310546875,31.169326782227,488.6884765625,-1734.04296875,21.179261207581) 
                elseif number == 3 then 
                    setCameraMatrix(hitElement,2076.5859375,-1831.4208984375,18.546875,2072.626953125,-1831.361328125,18.546875) 
                else 
            end 
        end 
    end 
 end 
  
addEvent( "onBoughtWeapon", true ) 
addEventHandler( "onBoughtWeapon", getRootElement(), 
function(thePlayer,id,cash) 
    setPlayerMoney(thePlayer,getPlayerMoney(thePlayer)-cash) 
        if id == 500 then 
            setPedArmor ( thePlayer, 100 ) 
        else 
        giveWeapon ( thePlayer, id, 120 ) 
    end 
end) 
  
addEvent( "onBoughtBurger", true ) 
addEventHandler( "onBoughtBurger", getRootElement(), 
function(thePlayer,cash) 
    setPlayerMoney(thePlayer,getPlayerMoney(thePlayer)-cash) 
    setElementHealth(thePlayer,getElementHealth(thePlayer)+cash) 
        if getElementHealth > 100 then 
        setElementHealth(thePlayer,100) 
    end 
end) 
--server 
addEventHandler ( "onPlayerLogin",root ) 
    function a () 
        triggerClientEvent(source,"TriggerClient",root) 
        end 
        end 
   
     
  

CLIENT:

local x, y = guiGetScreenSize() 
  
SkinMusic = "data/music/SkinSelectMusic.mp3" 
SkinAnims = {"dnce_M_b","DAN_Left_A","DAN_Down_A","DAN_Loop_A"} 
StartSkin = 0 
NewSkin = false 
  
--client 
addEvent("TriggerClient",true) 
function SelectSkin () 
    setElementInterior ( getLocalPlayer(), 0, 0,0,0 ) 
    setCameraMatrix( 2745.8266601563,-2231.1694335938,62.25520324707, 3999.9999499991,-2607.4000244141,16.1) 
    skin = createPed ( StartSkin, 2749.7502441406,-2232.7170410156,61.727611541748,60 ) 
    setPedAnimation( skin, "DANCING", SkinAnims[math.random(1,4)]) 
    fadeCamera( true, 10) 
    setTime(0,0) 
    SkinSelectMusic = playSound(SkinMusic,true) 
    bindKey("arrow_r","down",NextSkin) 
    bindKey("arrow_l","down",LastSkin) 
    bindKey(".","down",SpawnPlayer) 
    addEventHandler("onClientRender",getRootElement(),AnnounceSkinJob) 
    guiSetVisible(lnextskin,true) 
    guiSetVisible(rnextskin,true) 
    guiSetVisible(spawnskin,true) 
    showCursor(true) 
    showChat(false) 
    showPlayerHudComponent ( "radar", false ) 
end 
addEventHandler("TriggerClient",root,SelectSkin) 
function SpawnPlayer() 
    local r,g,b = math.random(0,255),math.random(0,255),math.random(0,255) 
    triggerServerEvent ( "onClientWantsToSpawn", getLocalPlayer(), getLocalPlayer(),StartSkin,r,g,b ) 
    unbindKey("arrow_r","down",NextSkin) 
    unbindKey("arrow_l","down",LastSkin) 
    unbindKey("lshift","down",SpawnPlayer) 
    setTime(12,0) 
    stopSound(SkinSelectMusic) 
    removeEventHandler("onClientRender",getRootElement(),AnnounceSkinJob) 
    showCursor(false) 
    showChat(true) 
    showPlayerHudComponent ( "radar", true ) 
    guiSetVisible(lnextskin,false) 
    guiSetVisible(rnextskin,false) 
    guiSetVisible(spawnskin,false) 
    setElementData(getLocalPlayer(),"red",r) 
    setElementData(getLocalPlayer(),"green",g) 
    setElementData(getLocalPlayer(),"blue",b) 
end 
function NextSkin() 
    if StartSkin == 312 then 
        StartSkin = -1 
    elseif StartSkin == 2 then 
        StartSkin = 8 
    end 
        StartSkin = StartSkin + 1 
        setElementModel(skin,StartSkin) 
        setPedAnimation( skin, "DANCING", SkinAnims[math.random(1,4)]) 
        SkinJobTextColor() 
end 
function LastSkin() 
    if StartSkin == 0 then 
        StartSkin = 313 
    elseif StartSkin == 9 then 
        StartSkin = 3 
    end 
        StartSkin = StartSkin - 1 
        setElementModel(skin,StartSkin) 
        setPedAnimation( skin, "DANCING", SkinAnims[math.random(1,4)]) 
        SkinJobTextColor() 
end 
  
lnextskin = guiCreateButton(x-x/1.30,y/1.22,x/5,y/20,"<<<",false) 
guiSetProperty(lnextskin,"PushedTextColour","FFFFFF00") 
guiSetFont(lnextskin,"sa-header") 
rnextskin = guiCreateButton(x-x/2.90,y/1.22,x/5,y/20,">>>",false) 
guiSetProperty(rnextskin,"PushedTextColour","FFFFFF00") 
guiSetFont(rnextskin,"sa-header") 
spawnskin = guiCreateButton(x-x/1.80,y/1.22,x/5,y/20,"Play",false) 
guiSetProperty(spawnskin,"PushedTextColour","FFFFFF00") 
guiSetFont(spawnskin,"sa-header") 
guiSetVisible(lnextskin,false) 
guiSetVisible(rnextskin,false) 
guiSetVisible(spawnskin,false) 
  
addEventHandler( "onClientGUIClick", getRootElement(), function() 
    if source == lnextskin then 
        LastSkin() 
    elseif source == rnextskin then 
        NextSkin() 
    elseif source == spawnskin then 
        SpawnPlayer() 
    end 
end) 
  
------PEDS 
  
function FreezeBots() 
    local Bots = getElementsByType("ped") 
        for k,v in ipairs(Bots) do 
        setElementFrozen(v,true) 
    end 
end 
  
function loadMansion () 
  
        outputChatBox("[bem-Vindo Ao Server]", getRootElement(), 255, 0, 0,true ) 
end 
addEventHandler("onClientResourceStart", getResourceRootElement(), loadMansion) 

Link to comment

Server:

function onQuit (quitType, reason, responsibleElement) 
          if not (isGuestAccount (getPlayerAccount (source))) then 
            account = getPlayerAccount (source) 
            if (account) then 
              local x,y,z = getElementPosition (source) 
              setAccountData (account, "funmodev2-money", tostring (getPlayerMoney (source))) 
              setAccountData (account, "funmodev2-health", tostring (getElementHealth (source))) 
              setAccountData (account, "funmodev2-armor", tostring (getPedArmor (source))) 
              setAccountData (account, "funmodev2-R", r) 
              setAccountData (account, "funmodev2-G", g) 
              setAccountData (account, "funmodev2-B", b) 
              setAccountData (account, "funmodev2-x", x) 
              setAccountData (account, "funmodev2-y", y) 
              setAccountData (account, "funmodev2-z", z) 
              setAccountData (account, "funmodev2-int", getElementInterior (source)) 
              setAccountData (account, "funmodev2-dim", getElementDimension (source)) 
              setAccountData (account, "funmodev2-wantedlevel", getPlayerWantedLevel (source)) 
              setAccountData (account, "funmodev2-weaponID0", getPedWeapon (source, 0)) 
              setAccountData (account, "funmodev2-weaponID1", getPedWeapon (source, 1)) 
              setAccountData (account, "funmodev2-weaponID2", getPedWeapon (source, 2)) 
              setAccountData (account, "funmodev2-weaponID3", getPedWeapon (source, 3)) 
              setAccountData (account, "funmodev2-weaponID4", getPedWeapon (source, 4)) 
              setAccountData (account, "funmodev2-weaponID5", getPedWeapon (source, 5)) 
              setAccountData (account, "funmodev2-weaponID6", getPedWeapon (source, 6)) 
              setAccountData (account, "funmodev2-weaponID7", getPedWeapon (source, 7)) 
              setAccountData (account, "funmodev2-weaponID8", getPedWeapon (source, -- s8) -->) 
              setAccountData (account, "funmodev2-weaponID9", getPedWeapon (source, 9)) 
              setAccountData (account, "funmodev2-weaponID10", getPedWeapon (source, 10)) 
              setAccountData (account, "funmodev2-weaponID11", getPedWeapon (source, 11)) 
              setAccountData (account, "funmodev2-weaponID12", getPedWeapon (source, 12)) 
              setAccountData (account, "funmodev2-weaponAmmo0", getPedTotalAmmo (source, 0)) 
              setAccountData (account, "funmodev2-weaponAmmo1", getPedTotalAmmo (source, 1)) 
              setAccountData (account, "funmodev2-weaponAmmo2", getPedTotalAmmo (source, 2)) 
              setAccountData (account, "funmodev2-weaponAmmo3", getPedTotalAmmo (source, 3)) 
              setAccountData (account, "funmodev2-weaponAmmo4", getPedTotalAmmo (source, 4)) 
              setAccountData (account, "funmodev2-weaponAmmo5", getPedTotalAmmo (source, 5)) 
              setAccountData (account, "funmodev2-weaponAmmo6", getPedTotalAmmo (source, 6)) 
              setAccountData (account, "funmodev2-weaponAmmo7", getPedTotalAmmo (source, 7)) 
              setAccountData (account, "funmodev2-weaponAmmo8", getPedTotalAmmo (source, -- s8) -->) 
              setAccountData (account, "funmodev2-weaponAmmo9", getPedTotalAmmo (source, 9)) 
              setAccountData (account, "funmodev2-weaponAmmo10", getPedTotalAmmo (source, 10)) 
              setAccountData (account, "funmodev2-weaponAmmo11", getPedTotalAmmo (source, 11)) 
              setAccountData (account, "funmodev2-weaponAmmo12", getPedTotalAmmo (source, 12)) 
            end 
          end 
        end 
        addEventHandler ("onPlayerQuit", getRootElement(), onQuit) 
  
  
  
  
  
  
  
  
  
  
local spawnLocations = { 
{2171.90625, 1392.59765625, 10.8203125}, 
{2265.3674316406, 2398.3068847656, 10.8203125}, 
{2361.689453125, 2070.2077636719, 10.671875}, 
{2087.9260253906, 1448.8768310547, 10.8203125}, 
{2000.55, 1526.25, 14.6171875}, 
{1607.35, 1816.54, 10.82} 
} 
  
  
  
StartMoney = 2500 
CashForKill = 2500 
PayNSprayCost = 100 
  
playerSkin = {} 
Garages = {0,1,2,3,4,5,6,7,8,9,10, 
11,12,13,14,15,16,17,18,19,20, 
21,22,23,24,25,26,27,28,29,30, 
31,32,33,34,35,36,37,38,39,40, 
41,42,43,44,45,46,47,48,49,50, 
51,52,53,54,55,56,57,58,59,60} 
  
  
  
function SpawnPlayer(thePlayer,skin,r,g,b) 
     
    local theCurrentAccount = getPlayerAccount(thePlayer) 
local accountData = getAccountData (theCurrentAccount, "funmodev2-money") 
            if (accountData) then 
              local playerMoney = getAccountData (theCurrentAccount, "funmodev2-money") 
              local playerSkin = getAccountData (theCurrentAccount, "funmodev2-skin") 
              local playerHealth = getAccountData (theCurrentAccount, "funmodev2-health") 
              local playerArmor = getAccountData (theCurrentAccount, "funmodev2-armor") 
              local playerX = getAccountData (theCurrentAccount, "funmodev2-x") 
              local playerY = getAccountData (theCurrentAccount, "funmodev2-y") 
              local playerZ = getAccountData (theCurrentAccount, "funmodev2-z") 
              local playerInt = getAccountData (theCurrentAccount, "funmodev2-int") 
              local playerDim = getAccountData (theCurrentAccount, "funmodev2-dim") 
              local playerWanted = getAccountData (theCurrentAccount, "funmodev2-wantedlevel") 
             local playerTeam = getAccountData (theCurrentAccount, "funmodev2-Team") 
              local playerWeaponID0 = getAccountData (theCurrentAccount, "funmodev2-weaponID0") 
              local playerWeaponID1 = getAccountData (theCurrentAccount, "funmodev2-weaponID1") 
              local playerWeaponID2 = getAccountData (theCurrentAccount, "funmodev2-weaponID2") 
              local playerWeaponID3 = getAccountData (theCurrentAccount, "funmodev2-weaponID3") 
              local playerWeaponID4 = getAccountData (theCurrentAccount, "funmodev2-weaponID4") 
              local playerWeaponID5 = getAccountData (theCurrentAccount, "funmodev2-weaponID5") 
              local playerWeaponID6 = getAccountData (theCurrentAccount, "funmodev2-weaponID6") 
              local playerWeaponID7 = getAccountData (theCurrentAccount, "funmodev2-weaponID7") 
              local playerWeaponID8 = getAccountData (theCurrentAccount, "funmodev2-weaponID8") 
              local playerWeaponID9 = getAccountData (theCurrentAccount, "funmodev2-weaponID9") 
              local playerWeaponID10 = getAccountData (theCurrentAccount, "funmodev2-weaponID10") 
              local playerWeaponID11 = getAccountData (theCurrentAccount, "funmodev2-weaponID11") 
              local playerWeaponID12 = getAccountData (theCurrentAccount, "funmodev2-weaponID12") 
              local playerWeaponAmmo0 = getAccountData (theCurrentAccount, "funmodev2-weaponAmmo0") 
              local playerWeaponAmmo1 = getAccountData (theCurrentAccount, "funmodev2-weaponAmmo1") 
              local playerWeaponAmmo2 = getAccountData (theCurrentAccount, "funmodev2-weaponAmmo2") 
              local playerWeaponAmmo3 = getAccountData (theCurrentAccount, "funmodev2-weaponAmmo3") 
              local playerWeaponAmmo4 = getAccountData (theCurrentAccount, "funmodev2-weaponAmmo4") 
              local playerWeaponAmmo5 = getAccountData (theCurrentAccount, "funmodev2-weaponAmmo5") 
              local playerWeaponAmmo6 = getAccountData (theCurrentAccount, "funmodev2-weaponAmmo6") 
              local playerWeaponAmmo7 = getAccountData (theCurrentAccount, "funmodev2-weaponAmmo7") 
              local playerWeaponAmmo8 = getAccountData (theCurrentAccount, "funmodev2-weaponAmmo8") 
              local playerWeaponAmmo9 = getAccountData (theCurrentAccount, "funmodev2-weaponAmmo9") 
              local playerWeaponAmmo10 = getAccountData (theCurrentAccount, "funmodev2-weaponAmmo10") 
              local playerWeaponAmmo11 = getAccountData (theCurrentAccount, "funmodev2-weaponAmmo11") 
              local playerWeaponAmmo12 = getAccountData (theCurrentAccount, "funmodev2-weaponAmmo12") 
              spawnPlayer (source, playerX, playerY, playerZ +1, 0, playerSkin, playerInt, playerDim) 
    spawnPlayer ( thePlayer, playerX, playerY, playerZ +1, 90.0, skin ,playerInt, playerDim  ) 
              giveWeapon(source, playerWeaponID0, playerWeaponAmmo0, true) 
              giveWeapon(source, playerWeaponID1, playerWeaponAmmo1, false) 
              giveWeapon(source, playerWeaponID2, playerWeaponAmmo2, false) 
              giveWeapon(source, playerWeaponID3, playerWeaponAmmo3, false) 
              giveWeapon(source, playerWeaponID4, playerWeaponAmmo4, false) 
              giveWeapon(source, playerWeaponID5, playerWeaponAmmo5, false) 
              giveWeapon(source, playerWeaponID6, playerWeaponAmmo6, false) 
              giveWeapon(source, playerWeaponID7, playerWeaponAmmo7, false) 
              giveWeapon(source, playerWeaponID8, playerWeaponAmmo8, false) 
              giveWeapon(source, playerWeaponID9, playerWeaponAmmo9, false) 
              giveWeapon(source, playerWeaponID10, playerWeaponAmmo10, false) 
              giveWeapon(source, playerWeaponID11, playerWeaponAmmo11, false) 
              giveWeapon(source, playerWeaponID12, playerWeaponAmmo12, false) 
        end 
    setCameraTarget (source, source) 
    createBlipAttachedTo(source,0,2,r,g,b) 
    setPlayerMoney(thePlayer,playerMoney) 
    playerSkin[thePlayer] = {skin,r,g,b} 
    setElementData(thePlayer,"Score",0) 
    setPlayerNametagShowing ( thePlayer, false) 
end 
addEvent( "onClientWantsToSpawn", true ) 
addEventHandler( "onClientWantsToSpawn", getRootElement(), SpawnPlayer ) 
  
addEventHandler ( "onPlayerQuit", getRootElement(), 
function() 
    local attachedElements = getAttachedElements ( source ) 
        if ( attachedElements ) then 
            for k,v in ipairs ( attachedElements ) do 
                if ( getElementType ( v ) == "blip" ) then 
                    destroyElement(v) 
                else 
            end 
        end 
    end 
end) 
  
function PlayerDied(ammo,killer) 
    if killer and getElementType ( killer ) == "player" then 
        setPlayerMoney(killer,getPlayerMoney(killer)+CashForKill) 
        local Score = getElementData(killer,"Score") 
        setElementData(killer,"Score",Score+1) 
    end 
setTimer(PlayerRespawn,1000,1,source) 
end 
addEventHandler("onPlayerWasted",getRootElement(),PlayerDied) 
  
function PlayerRespawn(diedPlayer) 
if not diedPlayer then else 
    toggleAllControls(diedPlayer,true) 
    setPlayerMoney(diedPlayer,StartMoney) 
    local chosenSpawnLocation = math.random(1,#spawnLocations) 
   spawnPlayer(diedPlayer,spawnLocations[chosenSpawnLocation][1],spawnLocations[chosenSpawnLocation][2],spawnLocations[chosenSpawnLocation][3],90,playerSkin[diedPlayer][1]) 
    setCameraTarget (diedPlayer, diedPlayer) 
end 
end 
  
function FixPlayerVehicle(hitElement,number) 
    local money = getPlayerMoney(hitElement) 
        if money < PayNSprayCost then 
            outputChatBox("*PM: You don't have enought cash.",hitElement,170,0,0,true) 
        else 
            if getPedOccupiedVehicle(hitElement) then 
            local vehicle = getPedOccupiedVehicle(hitElement) 
            fixVehicle(vehicle) 
            playSoundFrontEnd(hitElement,16) 
            toggleAllControls(hitElement,false) 
            setPlayerMoney(hitElement,money-PayNSprayCost) 
        local vehicle = getPedOccupiedVehicle(hitElement) 
            setElementFrozen(vehicle,true) 
            setTimer(function() 
            toggleAllControls(hitElement,true) 
            setCameraTarget (hitElement, hitElement) 
            setElementFrozen(vehicle,false) 
            end,2500,1) 
                if number == 1 then 
                    setCameraMatrix(hitElement,1032.7685546875,-1039.337890625,45.220012664795,1030.095703125,-1027.6357421875,40.220008850098) 
                elseif number == 2 then 
                    setCameraMatrix(hitElement,489.150390625,-1728.8310546875,31.169326782227,488.6884765625,-1734.04296875,21.179261207581) 
                elseif number == 3 then 
                    setCameraMatrix(hitElement,2076.5859375,-1831.4208984375,18.546875,2072.626953125,-1831.361328125,18.546875) 
                else 
            end 
        end 
    end 
 end 
  
addEvent( "onBoughtWeapon", true ) 
addEventHandler( "onBoughtWeapon", getRootElement(), 
function(thePlayer,id,cash) 
    setPlayerMoney(thePlayer,getPlayerMoney(thePlayer)-cash) 
        if id == 500 then 
            setPedArmor ( thePlayer, 100 ) 
        else 
        giveWeapon ( thePlayer, id, 120 ) 
    end 
end) 
  
addEvent( "onBoughtBurger", true ) 
addEventHandler( "onBoughtBurger", getRootElement(), 
function(thePlayer,cash) 
    setPlayerMoney(thePlayer,getPlayerMoney(thePlayer)-cash) 
    setElementHealth(thePlayer,getElementHealth(thePlayer)+cash) 
        if getElementHealth > 100 then 
        setElementHealth(thePlayer,100) 
    end 
end) 
--server 
addEventHandler ( "onPlayerLogin",root ) 
    function a () 
        triggerClientEvent(source,"TriggerClient",root) 
        end 
  
    
  

Client:

local x, y = guiGetScreenSize() 
  
SkinMusic = "data/music/SkinSelectMusic.mp3" 
SkinAnims = {"dnce_M_b","DAN_Left_A","DAN_Down_A","DAN_Loop_A"} 
StartSkin = 0 
NewSkin = false 
  
--client 
addEvent("TriggerClient",true) 
function SelectSkin () 
    setElementInterior ( getLocalPlayer(), 0, 0,0,0 ) 
    setCameraMatrix( 2745.8266601563,-2231.1694335938,62.25520324707, 3999.9999499991,-2607.4000244141,16.1) 
    skin = createPed ( StartSkin, 2749.7502441406,-2232.7170410156,61.727611541748,60 ) 
    setPedAnimation( skin, "DANCING", SkinAnims[math.random(1,4)]) 
    fadeCamera( true, 10) 
    setTime(0,0) 
    SkinSelectMusic = playSound(SkinMusic,true) 
    bindKey("arrow_r","down",NextSkin) 
    bindKey("arrow_l","down",LastSkin) 
    bindKey(".","down",SpawnPlayer) 
    addEventHandler("onClientRender",getRootElement(),AnnounceSkinJob) 
    guiSetVisible(lnextskin,true) 
    guiSetVisible(rnextskin,true) 
    guiSetVisible(spawnskin,true) 
    showCursor(true) 
    showChat(false) 
    showPlayerHudComponent ( "radar", false ) 
end 
addEventHandler("TriggerClient",root,SelectSkin) 
function SpawnPlayer() 
    local r,g,b = math.random(0,255),math.random(0,255),math.random(0,255) 
    triggerServerEvent ( "onClientWantsToSpawn", getLocalPlayer(), getLocalPlayer(),StartSkin,r,g,b) 
    unbindKey("arrow_r","down",NextSkin) 
    unbindKey("arrow_l","down",LastSkin) 
    unbindKey("lshift","down",SpawnPlayer) 
    setTime(12,0) 
    stopSound(SkinSelectMusic) 
    removeEventHandler("onClientRender",getRootElement(),AnnounceSkinJob) 
    showCursor(false) 
    showChat(true) 
    showPlayerHudComponent ( "radar", true ) 
    guiSetVisible(lnextskin,false) 
    guiSetVisible(rnextskin,false) 
    guiSetVisible(spawnskin,false) 
    setElementData(getLocalPlayer(),"red",r) 
    setElementData(getLocalPlayer(),"green",g) 
    setElementData(getLocalPlayer(),"blue",b) 
end 
function NextSkin() 
    if StartSkin == 312 then 
        StartSkin = -1 
    elseif StartSkin == 2 then 
        StartSkin = 8 
    end 
        StartSkin = StartSkin + 1 
        setElementModel(skin,StartSkin) 
        setPedAnimation( skin, "DANCING", SkinAnims[math.random(1,4)]) 
        SkinJobTextColor() 
end 
function LastSkin() 
    if StartSkin == 0 then 
        StartSkin = 313 
    elseif StartSkin == 9 then 
        StartSkin = 3 
    end 
        StartSkin = StartSkin - 1 
        setElementModel(skin,StartSkin) 
        setPedAnimation( skin, "DANCING", SkinAnims[math.random(1,4)]) 
        SkinJobTextColor() 
end 
  
lnextskin = guiCreateButton(x-x/1.30,y/1.22,x/5,y/20,"<<<",false) 
guiSetProperty(lnextskin,"PushedTextColour","FFFFFF00") 
guiSetFont(lnextskin,"sa-header") 
rnextskin = guiCreateButton(x-x/2.90,y/1.22,x/5,y/20,">>>",false) 
guiSetProperty(rnextskin,"PushedTextColour","FFFFFF00") 
guiSetFont(rnextskin,"sa-header") 
spawnskin = guiCreateButton(x-x/1.80,y/1.22,x/5,y/20,"Play",false) 
guiSetProperty(spawnskin,"PushedTextColour","FFFFFF00") 
guiSetFont(spawnskin,"sa-header") 
guiSetVisible(lnextskin,false) 
guiSetVisible(rnextskin,false) 
guiSetVisible(spawnskin,false) 
  
addEventHandler( "onClientGUIClick", getRootElement(), function() 
    if source == lnextskin then 
        LastSkin() 
    elseif source == rnextskin then 
        NextSkin() 
    elseif source == spawnskin then 
        SpawnPlayer() 
    end 
end) 
  
------PEDS 
  
function FreezeBots() 
    local Bots = getElementsByType("ped") 
        for k,v in ipairs(Bots) do 
        setElementFrozen(v,true) 
    end 
end 
  
function loadMansion () 
  
        outputChatBox("[bem-Vindo Ao Server]", getRootElement(), 255, 0, 0,true ) 
end 
addEventHandler("onClientResourceStart", getResourceRootElement(), loadMansion) 

Link to comment
Skins cant be saved when gamemode is play i gueds..

They can be as long as the last skin ID is saved in the database, and loaded up when player logs in, then set via setElementModel. His problem was that he forgot to end and if conditional, and then when script said that it is expecting end at the bottom, so then he added it.

Link to comment
I know about all this and you are right.. but play sets play skin to random skin on his login..

I've never 'reverse-engineered' it, but I'm pretty sure that it spawns the player when he joins, not when he logins. And the skin is set via the spawn function and not changed unless the player requests so with the F1 menu. So anyway he should be fine.

Link to comment

Server:

function onQuit () 
        local account = getPlayerAccount (source) 
          if ( account ) then 
              local x,y,z = getElementPosition (source) 
              setAccountData (account, "funmodev2-money", getPlayerMoney (source)) 
              setAccountData (account, "funmodev2-skin", getElementModel (source)) 
              setAccountData (account, "funmodev2-health", getElementHealth (source)) 
              setAccountData (account, "funmodev2-armor", getPedArmor (source)) 
              setAccountData (account, "funmodev2-R", r) 
              setAccountData (account, "funmodev2-G", g) 
              setAccountData (account, "funmodev2-B", b) 
              setAccountData (account, "funmodev2-x", x) 
              setAccountData (account, "funmodev2-y", y) 
              setAccountData (account, "funmodev2-z", z) 
              setAccountData (account, "funmodev2-int", getElementInterior (source)) 
              setAccountData (account, "funmodev2-dim", getElementDimension (source)) 
              setAccountData (account, "funmodev2-wantedlevel", getPlayerWantedLevel (source)) 
              setAccountData (account, "funmodev2-weaponID0", getPedWeapon (source, 0)) 
              setAccountData (account, "funmodev2-weaponID1", getPedWeapon (source, 1)) 
              setAccountData (account, "funmodev2-weaponID2", getPedWeapon (source, 2)) 
              setAccountData (account, "funmodev2-weaponID3", getPedWeapon (source, 3)) 
              setAccountData (account, "funmodev2-weaponID4", getPedWeapon (source, 4)) 
              setAccountData (account, "funmodev2-weaponID5", getPedWeapon (source, 5)) 
              setAccountData (account, "funmodev2-weaponID6", getPedWeapon (source, 6)) 
              setAccountData (account, "funmodev2-weaponID7", getPedWeapon (source, 7)) 
              setAccountData (account, "funmodev2-weaponID8", getPedWeapon (source, -- s8) -->) 
              setAccountData (account, "funmodev2-weaponID9", getPedWeapon (source, 9)) 
              setAccountData (account, "funmodev2-weaponID10", getPedWeapon (source, 10)) 
              setAccountData (account, "funmodev2-weaponID11", getPedWeapon (source, 11)) 
              setAccountData (account, "funmodev2-weaponID12", getPedWeapon (source, 12)) 
              setAccountData (account, "funmodev2-weaponAmmo0", getPedTotalAmmo (source, 0)) 
              setAccountData (account, "funmodev2-weaponAmmo1", getPedTotalAmmo (source, 1)) 
              setAccountData (account, "funmodev2-weaponAmmo2", getPedTotalAmmo (source, 2)) 
              setAccountData (account, "funmodev2-weaponAmmo3", getPedTotalAmmo (source, 3)) 
              setAccountData (account, "funmodev2-weaponAmmo4", getPedTotalAmmo (source, 4)) 
              setAccountData (account, "funmodev2-weaponAmmo5", getPedTotalAmmo (source, 5)) 
              setAccountData (account, "funmodev2-weaponAmmo6", getPedTotalAmmo (source, 6)) 
              setAccountData (account, "funmodev2-weaponAmmo7", getPedTotalAmmo (source, 7)) 
              setAccountData (account, "funmodev2-weaponAmmo8", getPedTotalAmmo (source, -- s8) -->) 
              setAccountData (account, "funmodev2-weaponAmmo9", getPedTotalAmmo (source, 9)) 
              setAccountData (account, "funmodev2-weaponAmmo10", getPedTotalAmmo (source, 10)) 
              setAccountData (account, "funmodev2-weaponAmmo11", getPedTotalAmmo (source, 11)) 
              setAccountData (account, "funmodev2-weaponAmmo12", getPedTotalAmmo (source, 12)) 
          end 
          Removeblip(source) 
        end 
        addEventHandler ("onPlayerQuit", getRootElement(), onQuit) 
  
  
  
  
  
  
  
  
  
  
local spawnLocations = { 
{2171.90625, 1392.59765625, 10.8203125}, 
{2265.3674316406, 2398.3068847656, 10.8203125}, 
{2361.689453125, 2070.2077636719, 10.671875}, 
{2087.9260253906, 1448.8768310547, 10.8203125}, 
{2000.55, 1526.25, 14.6171875}, 
{1607.35, 1816.54, 10.82} 
} 
  
  
  
StartMoney = 2500 
CashForKill = 2500 
PayNSprayCost = 100 
  
playerSkin = {} 
Garages = {0,1,2,3,4,5,6,7,8,9,10, 
11,12,13,14,15,16,17,18,19,20, 
21,22,23,24,25,26,27,28,29,30, 
31,32,33,34,35,36,37,38,39,40, 
41,42,43,44,45,46,47,48,49,50, 
51,52,53,54,55,56,57,58,59,60} 
  
  
  
function SpawnPlayer(thePlayer,skin,r,g,b) 
   playerblip = {} 
    local theCurrentAccount = getPlayerAccount(thePlayer) 
    local accountData = getAccountData (theCurrentAccount, "funmodev2-money") 
            if (accountData) then 
              local playerSkin = getAccountData (theCurrentAccount, "funmodev2-skin") 
              local playerHealth = getAccountData (theCurrentAccount, "funmodev2-health") 
              local playerArmor = getAccountData (theCurrentAccount, "funmodev2-armor") 
              local playerR = getAccountData (theCurrentAccount, "funmodev2-R") 
              local playerG = getAccountData (theCurrentAccount, "funmodev2-G") 
              local playerB = getAccountData (theCurrentAccount, "funmodev2-B") 
              local playerB = getAccountData (theCurrentAccount, "funmodev2-B") 
              local playerX = getAccountData (theCurrentAccount, "funmodev2-x") 
              local playerY = getAccountData (theCurrentAccount, "funmodev2-y") 
              local playerZ = getAccountData (theCurrentAccount, "funmodev2-z") 
              local playerInt = getAccountData (theCurrentAccount, "funmodev2-int") 
              local playerDim = getAccountData (theCurrentAccount, "funmodev2-dim") 
              local playerWanted = getAccountData (theCurrentAccount, "funmodev2-wantedlevel") 
              local playerWeaponID0 = getAccountData (theCurrentAccount, "funmodev2-weaponID0") 
              local playerWeaponID1 = getAccountData (theCurrentAccount, "funmodev2-weaponID1") 
              local playerWeaponID2 = getAccountData (theCurrentAccount, "funmodev2-weaponID2") 
              local playerWeaponID3 = getAccountData (theCurrentAccount, "funmodev2-weaponID3") 
              local playerWeaponID4 = getAccountData (theCurrentAccount, "funmodev2-weaponID4") 
              local playerWeaponID5 = getAccountData (theCurrentAccount, "funmodev2-weaponID5") 
              local playerWeaponID6 = getAccountData (theCurrentAccount, "funmodev2-weaponID6") 
              local playerWeaponID7 = getAccountData (theCurrentAccount, "funmodev2-weaponID7") 
              local playerWeaponID8 = getAccountData (theCurrentAccount, "funmodev2-weaponID8") 
              local playerWeaponID9 = getAccountData (theCurrentAccount, "funmodev2-weaponID9") 
              local playerWeaponID10 = getAccountData (theCurrentAccount, "funmodev2-weaponID10") 
              local playerWeaponID11 = getAccountData (theCurrentAccount, "funmodev2-weaponID11") 
              local playerWeaponID12 = getAccountData (theCurrentAccount, "funmodev2-weaponID12") 
              local playerWeaponAmmo0 = getAccountData (theCurrentAccount, "funmodev2-weaponAmmo0") 
              local playerWeaponAmmo1 = getAccountData (theCurrentAccount, "funmodev2-weaponAmmo1") 
              local playerWeaponAmmo2 = getAccountData (theCurrentAccount, "funmodev2-weaponAmmo2") 
              local playerWeaponAmmo3 = getAccountData (theCurrentAccount, "funmodev2-weaponAmmo3") 
              local playerWeaponAmmo4 = getAccountData (theCurrentAccount, "funmodev2-weaponAmmo4") 
              local playerWeaponAmmo5 = getAccountData (theCurrentAccount, "funmodev2-weaponAmmo5") 
              local playerWeaponAmmo6 = getAccountData (theCurrentAccount, "funmodev2-weaponAmmo6") 
              local playerWeaponAmmo7 = getAccountData (theCurrentAccount, "funmodev2-weaponAmmo7") 
              local playerWeaponAmmo8 = getAccountData (theCurrentAccount, "funmodev2-weaponAmmo8") 
              local playerWeaponAmmo9 = getAccountData (theCurrentAccount, "funmodev2-weaponAmmo9") 
              local playerWeaponAmmo10 = getAccountData (theCurrentAccount, "funmodev2-weaponAmmo10") 
              local playerWeaponAmmo11 = getAccountData (theCurrentAccount, "funmodev2-weaponAmmo11") 
              local playerWeaponAmmo12 = getAccountData (theCurrentAccount, "funmodev2-weaponAmmo12") 
              spawnPlayer ( thePlayer, playerX, playerY, playerZ + 2, 90.0, skin ,playerInt, playerDim  ) 
              giveWeapon(source, playerWeaponID0, playerWeaponAmmo0, true) 
              giveWeapon(source, playerWeaponID1, playerWeaponAmmo1, false) 
              giveWeapon(source, playerWeaponID2, playerWeaponAmmo2, false) 
              giveWeapon(source, playerWeaponID3, playerWeaponAmmo3, false) 
              giveWeapon(source, playerWeaponID4, playerWeaponAmmo4, false) 
              giveWeapon(source, playerWeaponID5, playerWeaponAmmo5, false) 
              giveWeapon(source, playerWeaponID6, playerWeaponAmmo6, false) 
              giveWeapon(source, playerWeaponID7, playerWeaponAmmo7, false) 
              giveWeapon(source, playerWeaponID8, playerWeaponAmmo8, false) 
              giveWeapon(source, playerWeaponID9, playerWeaponAmmo9, false) 
              giveWeapon(source, playerWeaponID10, playerWeaponAmmo10, false) 
              giveWeapon(source, playerWeaponID11, playerWeaponAmmo11, false) 
              giveWeapon(source, playerWeaponID12, playerWeaponAmmo12, false) 
        end 
    setCameraTarget (source, source) 
    playerblip[source] = createBlipAttachedTo(source,0,2,r,g,b) 
    setPlayerMoney(source,accountData) 
    playerSkin[source] = {skin,r,g,b} 
    setElementData(source,"Score",0) 
    setPlayerNametagShowing ( source, false) 
end 
addEvent( "onClientWantsToSpawn", true ) 
addEventHandler( "onClientWantsToSpawn", getRootElement(), SpawnPlayer ) 
  
function Removeblip(player) 
    destroyElement(playerblip[player]) 
end 
  
function PlayerDied(ammo,killer) 
    if killer and getElementType ( killer ) == "player" then 
        setPlayerMoney(killer,getPlayerMoney(killer)+CashForKill) 
        local Score = getElementData(killer,"Score") 
        setElementData(killer,"Score",Score+1) 
    end 
setTimer(PlayerRespawn,1000,1,source) 
end 
addEventHandler("onPlayerWasted",getRootElement(),PlayerDied) 
  
function PlayerRespawn(diedPlayer) 
if not diedPlayer then else 
    toggleAllControls(diedPlayer,true) 
    setPlayerMoney(diedPlayer,StartMoney) 
    local chosenSpawnLocation = math.random(1,#spawnLocations) 
   spawnPlayer(diedPlayer,spawnLocations[chosenSpawnLocation][1],spawnLocations[chosenSpawnLocation][2],spawnLocations[chosenSpawnLocation][3],90,playerSkin[diedPlayer][1]) 
    setCameraTarget (diedPlayer, diedPlayer) 
end 
end 
  
function FixPlayerVehicle(hitElement,number) 
    local money = getPlayerMoney(hitElement) 
        if money < PayNSprayCost then 
            outputChatBox("*PM: You don't have enought cash.",hitElement,170,0,0,true) 
        else 
            if getPedOccupiedVehicle(hitElement) then 
            local vehicle = getPedOccupiedVehicle(hitElement) 
            fixVehicle(vehicle) 
            playSoundFrontEnd(hitElement,16) 
            toggleAllControls(hitElement,false) 
            setPlayerMoney(hitElement,money-PayNSprayCost) 
        local vehicle = getPedOccupiedVehicle(hitElement) 
            setElementFrozen(vehicle,true) 
            setTimer(function() 
            toggleAllControls(hitElement,true) 
            setCameraTarget (hitElement, hitElement) 
            setElementFrozen(vehicle,false) 
            end,2500,1) 
                if number == 1 then 
                    setCameraMatrix(hitElement,1032.7685546875,-1039.337890625,45.220012664795,1030.095703125,-1027.6357421875,40.220008850098) 
                elseif number == 2 then 
                    setCameraMatrix(hitElement,489.150390625,-1728.8310546875,31.169326782227,488.6884765625,-1734.04296875,21.179261207581) 
                elseif number == 3 then 
                    setCameraMatrix(hitElement,2076.5859375,-1831.4208984375,18.546875,2072.626953125,-1831.361328125,18.546875) 
                else 
            end 
        end 
    end 
 end 
  
addEvent( "onBoughtWeapon", true ) 
addEventHandler( "onBoughtWeapon", getRootElement(), 
function(thePlayer,id,cash) 
    setPlayerMoney(thePlayer,getPlayerMoney(thePlayer)-cash) 
        if id == 500 then 
            setPedArmor ( thePlayer, 100 ) 
        else 
        giveWeapon ( thePlayer, id, 120 ) 
    end 
end) 
  
addEvent( "onBoughtBurger", true ) 
addEventHandler( "onBoughtBurger", getRootElement(), 
function(thePlayer,cash) 
    setPlayerMoney(thePlayer,getPlayerMoney(thePlayer)-cash) 
    setElementHealth(thePlayer,getElementHealth(thePlayer)+cash) 
        if getElementHealth > 100 then 
        setElementHealth(thePlayer,100) 
    end 
end) 
--server 
    function a () 
        triggerClientEvent(source,"TriggerClient",getRootElement()) 
 end 
 addEventHandler ( "onPlayerLogin",getRootElement(),a ) 
    
  

Client:

local x, y = guiGetScreenSize() 
  
SkinMusic = "data/music/SkinSelectMusic.mp3" 
SkinAnims = {"dnce_M_b","DAN_Left_A","DAN_Down_A","DAN_Loop_A"} 
StartSkin = 0 
NewSkin = false 
  
--client 
addEvent("TriggerClient",true) 
function SelectSkin () 
    setElementInterior ( getLocalPlayer(), 0, 0,0,0 ) 
    setCameraMatrix( 2745.8266601563,-2231.1694335938,62.25520324707, 3999.9999499991,-2607.4000244141,16.1) 
    skin = createPed ( StartSkin, 2749.7502441406,-2232.7170410156,61.727611541748,60 ) 
    setPedAnimation( skin, "DANCING", SkinAnims[math.random(1,4)]) 
    fadeCamera( true, 10) 
    setTime(0,0) 
    SkinSelectMusic = playSound(SkinMusic,true) 
    bindKey("arrow_r","down",NextSkin) 
    bindKey("arrow_l","down",LastSkin) 
    bindKey(".","down",SpawnPlayer) 
    addEventHandler("onClientRender",getRootElement(),AnnounceSkinJob) 
    guiSetVisible(lnextskin,true) 
    guiSetVisible(rnextskin,true) 
    guiSetVisible(spawnskin,true) 
    showCursor(true) 
    showChat(false) 
    showPlayerHudComponent ( "radar", false ) 
end 
addEventHandler("TriggerClient",root,SelectSkin) 
function SpawnPlayer() 
    local r,g,b = math.random(0,255),math.random(0,255),math.random(0,255) 
    triggerServerEvent ( "onClientWantsToSpawn", getLocalPlayer(), getLocalPlayer(),StartSkin,r,g,b) 
    unbindKey("arrow_r","down",NextSkin) 
    unbindKey("arrow_l","down",LastSkin) 
    unbindKey("lshift","down",SpawnPlayer) 
    setTime(12,0) 
    stopSound(SkinSelectMusic) 
    removeEventHandler("onClientRender",getRootElement(),AnnounceSkinJob) 
    showCursor(false) 
    showChat(true) 
    showPlayerHudComponent ( "radar", true ) 
    guiSetVisible(lnextskin,false) 
    guiSetVisible(rnextskin,false) 
    guiSetVisible(spawnskin,false) 
    setElementData(getLocalPlayer(),"red",r) 
    setElementData(getLocalPlayer(),"green",g) 
    setElementData(getLocalPlayer(),"blue",b) 
end 
function NextSkin() 
    if StartSkin == 312 then 
        StartSkin = -1 
    elseif StartSkin == 2 then 
        StartSkin = 8 
    end 
        StartSkin = StartSkin + 1 
        setElementModel(skin,StartSkin) 
        setPedAnimation( skin, "DANCING", SkinAnims[math.random(1,4)]) 
        SkinJobTextColor() 
end 
function LastSkin() 
    if StartSkin == 0 then 
        StartSkin = 313 
    elseif StartSkin == 9 then 
        StartSkin = 3 
    end 
        StartSkin = StartSkin - 1 
        setElementModel(skin,StartSkin) 
        setPedAnimation( skin, "DANCING", SkinAnims[math.random(1,4)]) 
        SkinJobTextColor() 
end 
  
lnextskin = guiCreateButton(x-x/1.30,y/1.22,x/5,y/20,"<<<",false) 
guiSetProperty(lnextskin,"PushedTextColour","FFFFFF00") 
guiSetFont(lnextskin,"sa-header") 
rnextskin = guiCreateButton(x-x/2.90,y/1.22,x/5,y/20,">>>",false) 
guiSetProperty(rnextskin,"PushedTextColour","FFFFFF00") 
guiSetFont(rnextskin,"sa-header") 
spawnskin = guiCreateButton(x-x/1.80,y/1.22,x/5,y/20,"Play",false) 
guiSetProperty(spawnskin,"PushedTextColour","FFFFFF00") 
guiSetFont(spawnskin,"sa-header") 
guiSetVisible(lnextskin,false) 
guiSetVisible(rnextskin,false) 
guiSetVisible(spawnskin,false) 
  
addEventHandler( "onClientGUIClick", getRootElement(), function() 
    if source == lnextskin then 
        LastSkin() 
    elseif source == rnextskin then 
        NextSkin() 
    elseif source == spawnskin then 
        SpawnPlayer() 
    end 
end) 
  
------PEDS 
  
function FreezeBots() 
    local Bots = getElementsByType("ped") 
        for k,v in ipairs(Bots) do 
        setElementFrozen(v,true) 
    end 
end 
  
function loadMansion () 
  
        outputChatBox("[bem-Vindo Ao Server]", getRootElement(), 255, 0, 0,true ) 
end 
addEventHandler("onClientResourceStart", getResourceRootElement(), loadMansion) 

There, it should work perfectly now. There are still some variables and elements that are missing in the client, like SkinSelectMusic and AnnounceSkinJob, but I assume those are in the other portion of the code.

Link to comment

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

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