Jump to content

Ajuda


Recommended Posts

Bom O dnl Me Ajudou Neste Script Mas Mesmo Assim Ocorre Problemas Na Hora do Spawn Alguem Poderia Mi Ajudar acho que tem algo errado com client

SERVER---

g_root = getRootElement( ); 
classGroups = { }; 
local teams = 
{ 
    ["Time1"] = 
    { 
        baseLoc = {"2796.69702", "-1549.16663"," 10.92188"} 
    }, 
    ["Time2"] = 
    { 
        baseLoc = {"1770.94006", "-1918.32092","13.55579"} 
    }, 
   
} 
  
  
  
            local skin = class.skinMngr.skins[ skinIndex ]; 
            local spawn = true; 
            local spawned; 
            --[[if not classGroups[ cetegoryIndex ].owner then -- if there is NO owner of the clan/gang spawn player 
                spawn = true; 
            else -- if there IS owner of the clan/gang then check if he's member of the clan/gang 
                 
            end]] 
             
            if spawn then 
                if not class.team then 
                    class.team = createTeam( class.name, class.color.red, class.color.green, class.color.blue ); 
                end 
                 
                local plrTeam = getPlayerTeam( client ); 
                if ( ( plrTeam ) and ( plrTeam ~= class.team ) and ( countPlayersInTeam( plrTeam ) == 1 ) ) then 
                    destroyElement( plrTeam ); 
                end 
                 
                ); 
            end 
             
            if spawned then 
                setElementData( client, "team", class.name ) 
                setElementData( client, "skin", skin.name ) 
                fadeCamera( client, true ); 
                setCameraTarget( client, client ); 
                setTimer( setCameraTarget, 200, 1, client, client ); 
                 
                triggerClientEvent( client, "spawn_SpawnedSuccessfully", client ); 
                 
                --setPlayerMoney( client, 500 ); 
                for _, weapon in ipairs( class.weaponMngr.weapons ) do 
                    giveWeapon( client, weapon.id, weapon.ammo, false ); 
                end 
                createBlipAttachedTo( client, 0, 2, class.color.red, class.color.green, class.color.blue ) 
            else 
                triggerClientEvent( client, "spawn_FailedToSpawn", client ); 
                if countPlayersInTeam( class.team ) == 0 then 
                    destroyElement( class.team ); 
                    class.team = nil; 
                end 
            end 
        end 
    end 
); 
  
addEvent( "spawn_receivePassword", true ); 
addEventHandler( "spawn_receivePassword", g_root, 
    function( ) 
     
    end 
); 
  
  
addEventHandler( "onPlayerSpawn", g_root, 
    function ( ) 
     
    end 
); 
  
addEventHandler( "onPlayerWasted", getRootElement(), 
     
    function baseLoc  (thePlayer) 
    local team getPlayerTeam(thePlayer) 
    if isElement(thePlayer) and team then 
        local spawnX,spawnY,spawnZ = unpack( teams[getTeamName(team)].baseLoc ) 
        spawnPlayer(thePlayer, spawnX,spawnY,spawnZ, 0, getElementModel(thePlayer)) 
    end 
end 
    end 
); 
  
  
  
addCommandHandler( "kill", 
    function( plr ) 
        killPed( plr ); 
    end 
) 
  
  
  
function preloadClassesInfo( ) 
    local groups = getElementsByType( "category" ); 
    for _, group in ipairs( groups ) do 
        table.insert( classGroups, Group:New( group ) ); 
    end 
end 
addEventHandler( "onResourceStart", getResourceRootElement(), preloadClassesInfo ) 
  
  
function deleteAllPlayerBlips(player) 
    local elements = getAttachedElements(player) 
    if (elements) then 
        for i, element in ipairs(elements) do 
            if (getElementType(element) == "blip") then 
                destroyElement(element) 
            end 
        end 
    end 
    print( "number of players in team: " .. tostring( countPlayersInTeam( getPlayerTeam( player ) ) ) ); 
end 
  
addEventHandler( "onPlayerQuit", g_root, function() deleteAllPlayerBlips(source) end ); 
  
  
------------------------------------------------------------------------------------------ 
------------------------------------------------------------------------------------------ 
function callClientFunc( player, funcName, ... ) 
    if #{ ... } ~= 0 then 
        triggerClientEvent( player, "_clientCallFunction", root, funcName, ... ) 
    else 
        triggerClientEvent( player, "_clientCallFunction", root, funcName ) 
    end 
end 
  
addEvent( "_serverCallFunction", true ) 
addEventHandler( "_serverCallFunction", root,  
    function( funcName, ... ) 
        _G[ funcName ](...) 
    end 
) 

client---

g_Me = getLocalPlayer( ); 
g_root = getRootElement( );
g_ResRoot = getResourceRootElement( );
 
screenSize = { guiGetScreenSize( ) };
 
--local stripHeight = .15 * (screenSize[ 2 ]*2);
 
 
 
letterBox = {
    stripHeight = screenSize[ 2 ] * .15,
    stripAlpha = .93, -- 0-1
    animLength = 01, -- seconds
    animStartTick = 0,
    animFinishTick = 0,
    keepAnimating = true,
   
    flyIn = function ( )
        letterBox.animStartTick = 0;
        addEventHandler( "onClientRender", g_root, animateLetterBox_flyIn );
        setTempPedRotating( true );
    end,
   
    flyOut = function ( )
        letterBox.animStartTick = 0;
        setTempPedRotating( false );
        removeEventHandler( "onClientRender", g_root, animateLetterBox_flyIn )
        addEventHandler( "onClientRender", g_root, animateLetterBox_flyOut );
    end,
}
 
local pedRot = 0;
 
 
allHUDElements = {
    "ammo",
    "area_name",
    "armour",
    "breath",
    "clock",
    "health",
    "money",
    "radar",
    "vehicle_name",
    "weapon",
}
 
iconWidths = {
[0] = 21,
[1] = 15,
[2] = 97,
[3] = 55,
[4] = 83,
[5] = 72,
[6] = 55,
[7] = 138,
[8] = 104,
[9] = 59,
[10] =40 ,
[11] =31 ,
[12] =41 ,
[14] =10 ,
[15] =71 ,
[16] =13 ,
[17] =10 ,
[18] =4 ,
[19] =17,
[22] =35 ,
[23] =50 ,
[24] =37 ,
[25] =75 ,
[26] =67 ,
[27] =66 ,
[28] =17 ,
[29] =35 ,
[30] =70 ,
[31] =71 ,
[32] =22 ,
[33] =75 ,
[34] =86 ,
[35] =74 ,
[36] =75 ,
[37] =19 ,
[38] =54 ,
[39] =8,
[42] = 14,
}
 
icons = {
[0] =  ":killmessages/icons/fist.png",
[1] =  ":killmessages/icons/brassknuckle.png",
[2] =  ":killmessages/icons/golfclub.png",
[3] =  ":killmessages/icons/nitestick.png",
[4] =  ":killmessages/icons/knifecur.png",
[5] =  ":killmessages/icons/bat.png",
[6] =  ":killmessages/icons/shovel.png",
[7] = ":killmessages/icons/poolcue.png",
[8] = ":killmessages/icons/katana.png",
[9] =  ":killmessages/icons/chnsaw.png",
[10] =  ":killmessages/icons/gun_dildo1.png",
[11] =  ":killmessages/icons/gun_dildo2.png",
[12] =  ":killmessages/icons/gun_vibe1.png",
[14] =  ":killmessages/icons/flowera.png",
[15] =  ":killmessages/icons/gun_cane.png",
[16] =  ":killmessages/icons/grenade.png",
[17] =  ":killmessages/icons/teargas.png",
[18] =  ":killmessages/icons/molotov.png",
[19] =  ":killmessages/icons/explosion.png",
[22] =  ":killmessages/icons/colt45.png",
[23] =  ":killmessages/icons/Silenced.png",
[24] =  ":killmessages/icons/desert_eagle.png",
[25] =  ":killmessages/icons/chromegun.png",
[26] =  ":killmessages/icons/sawnoff.png",
[27] =  ":killmessages/icons/shotgspa.png",
[28] =  ":killmessages/icons/micro_uzi.png",
[29] =  ":killmessages/icons/mp5lng.png",
[30] =  ":killmessages/icons/ak47.png",
[31] =  ":killmessages/icons/m4.png",
[32] =  ":killmessages/icons/tec9.png",
[33] =  ":killmessages/icons/cuntgun.png",
[34] =  ":killmessages/icons/sniper.png",
[35] =  ":killmessages/icons/rocketla.png",
[36] =  ":killmessages/icons/heatseek.png",
[37] =  ":killmessages/icons/flame.png",
[38] =  ":killmessages/icons/minigun.png",
[39] =  ":killmessages/icons/satchel.png",
[42] =  ":killmessages/icons/fireextinguisher.png",
};
 
 
classGroups = { };
 
classesInfo = { };
classesWeapons = { };
classesSkins = { };
 
 
addEventHandler( "onClientResourceStart", getResourceRootElement(),
    function ( )
        fadeCamera( true );
        setTimer( setCameraMatrix, 50, 1,
            1967.71, 1342.9, 26.63,
            2034.47, 1343.02, 20.01 );
           
        --letterBox.flyIn( );
       
        preloadClassesInfo( );
       
        createClassSelectionWnd( );
        createGroupSelectionWnd( );
        createClassDescriptionWnd( );
        createClassWeaponWnd( );
        createPasswordWnd( );
               
        --setTimer( createTempPed, 100, 1 );
       
        showCursor( true );
        showSpawnMenu( false, true );
        --showHUDComponents( allHUDElements );
    end
);
 
function createTempPed( model )
    -- 7474 - object id
    -- 8661
    local x, y, z = getWorldFromScreenPosition( screenSize[ 1 ] - gridList:Size(false) / 2 - 70, ( screenSize[ 2 ]/2) --[[/ 1.6 ) * .8]], 10 );
    local cX, cY, cZ = getCameraMatrix( );
    x, y, z = getWorldFromScreenPosition( screenSize[ 1 ] - gridList:Size(false) / 2 - 70, ( screenSize[ 2 ]/2 )--[[ / 1.6 ) * .8]], 10 )
    g_ground = createObject( 7474, x, y, z - 1.02, 0, 0, 90 );
    tempPed = createPed( 0 and model or 0, x, y, z );
    setPedRotation( tempPed, pedRot );
    setElementFrozen( tempPed, true );
    setPedAnimation( tempPed, "dancing", "dnce_m_b", -1, true, true, false )
    --setPedAnimation( tempPed, "cop_ambient", "Coplook_nod", -1, true, true, false )
   
    --setPedRotation( tempPed, 90 );
    setElementAlpha( g_ground, 0 );
    setTempPedRotating( true );
end
 
function destroyTempPed( )
    if tempPed then
        destroyElement( g_ground );
        destroyElement( tempPed );
        g_ground = nil;
        tempPed = nil;
    end
end
 
function setTempPedRotating( rotate )
    if ( ( rotate ) and ( not pedRotating ) ) then
        addEventHandler( "onClientRender", g_root, rotatePed );
        pedRotating = true;
    elseif ( not rotate ) then
        removeEventHandler( "onClientRender", g_root, rotatePed );
        pedRotating = nil;
    end
end
 
function rotatePed( )
    if tempPed then
        pedRot = pedRot + 1;
        setPedRotation( tempPed, pedRot );
    end
end
 
function preloadClassesInfo( )
    local groups = getElementsByType( "category" );
    for _, group in ipairs( groups ) do
        table.insert( classGroups, Group:New( group ) );
    end
end
 
 
function hideHUDComponents( components )
    for i, comp in pairs( components ) do
        showPlayerHudComponent( comp, false );
    end
    --showChat( false );
end
 
 
function showHUDComponents( components )
    for i, comp in pairs( components ) do
        showPlayerHudComponent( comp, true );
    end
    --showChat( true );
end
 
 
--addEventHandler( "onClientRender", getRootElement(),
    function animateLetterBox_flyIn ( )
       
        if letterBox.animStartTick == 0 then
            letterBox.animStartTick = getTickCount();
            letterBox.animFinishTick = letterBox.animStartTick + letterBox.animLength * 1000;
            letterBox.keepAnimating = true;
        end
       
        local stripH;
        local currentStripHeight = letterBox.stripHeight;
        if letterBox.keepAnimating then
            local currentTick = getTickCount();
           
            local percentage = ( ( letterBox.animLength * 1000 ) - ( letterBox.animFinishTick - currentTick ) ) / ( letterBox.animLength * 1000 );
                       
            currentStripHeight =  letterBox.stripHeight * percentage;
           
            if currentStripHeight > letterBox.stripHeight then
                currentStripHeight = letterBox.stripHeight;
                letterBox.keepAnimating =
Link to comment
  • Moderators

Você está deixando as coordenadas como string e não tá chamando a função baseLoc. Dessa forma está errado, deixe ela fora do evento e chame-a dessa forma: baseLoc(source).

Edite também as chaves da tabela com o nome dos times, como eu já disse.

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...