Jump to content

Ajuda


Recommended Posts

Posted

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 =
Posted

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.

Please do not PM me with scripting related question nor support, use the forums instead.

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