Jump to content

Blips do not get removed


Freddy123

Recommended Posts

Hi, I'm having problems with my spawn script, whenever a player gets timed out his blip doesn't get removed.

This is my actual code:

function createTeamOnStart () 
    Owner = createTeam ( "Owner", 150, 150, 150 ) 
    Admins = createTeam ( "Admins", 200, 0, 0 ) 
    Moderators = createTeam ( "Moderators", 190, 190, 0 ) 
    Players = createTeam ( "Players", 30, 180, 0 ) 
end 
addEventHandler("onResourceStart", resourceRoot, createTeamOnStart) 
  
function teamset () 
   if isObjectInACLGroup("user."..getAccountName(getPlayerAccount(source)), aclGetGroup("Console")) then 
   setPlayerTeam(source, Owner or getTeamFromName("Owner")) 
   spawnPlayer (source, -551, 2594, 54, 270,285, 0, 0) 
   setElementPosition ( source, -551, 2594, 54) 
   setCameraTarget(source, source) 
   showChat(source, true) 
   createBlipAttachedTo ( source, 0 ) 
   elseif isObjectInACLGroup("user."..getAccountName(getPlayerAccount(source)), aclGetGroup("Moderator")) then 
   setPlayerTeam(source, Moderators or getTeamFromName("Moderators")) 
   spawnPlayer (source, -551, 2594, 54, 270,285, 0, 0) 
   setElementPosition ( source, -551, 2594, 54) 
   setCameraTarget(source, source) 
   showChat(source, true) 
   createBlipAttachedTo ( source, 0 ) 
   elseif isObjectInACLGroup("user."..getAccountName(getPlayerAccount(source)), aclGetGroup("Admin")) then 
   setPlayerTeam(source, Admins or getTeamFromName("Admins")) 
   spawnPlayer (source, -551, 2594, 54, 270,285, 0, 0) 
   setElementPosition ( source, -551, 2594, 54) 
   setCameraTarget(source, source) 
   showChat(source, true) 
   createBlipAttachedTo ( source, 0 ) 
   elseif isObjectInACLGroup("user."..getAccountName(getPlayerAccount(source)), aclGetGroup("Everyone")) then 
   setPlayerTeam(source, Players or getTeamFromName("Players")) 
   spawnPlayer (source, -551, 2594, 54, 270,285, 0, 0) 
   setElementPosition ( source, -551, 2594, 54) 
   setCameraTarget(source, source) 
   showChat(source, true) 
   createBlipAttachedTo ( source, 0 ) 
   elseif not isObjectInACLGroup("user."..getAccountName(getPlayerAccount(source)), aclGetGroup("Everyone")) then 
   setPlayerTeam(source, Players or getTeamFromName("Players")) 
   spawnPlayer (source, -551, 2594, 54, 270,285, 0, 0) 
   setElementPosition ( source, -551, 2594, 54) 
   setCameraTarget(source, source) 
   showChat(source, true) 
   createBlipAttachedTo ( source, 0 ) 
   end 
end 
addEventHandler("onPlayerLogin",root, teamset ) 
addEventHandler("onPlayerLogout",root, teamset ) 
  
addEventHandler( "onPlayerWasted", getRootElement( ), 
    function() 
     setTimer ( fadeCamera, 500, 1, source, true, 1 ) 
     setTimer( spawnPlayer, 2000, 1, source, -551, 2594, 54 ) 
    end 
) 
function destroyBlipsAttachedTo(player) 
    local attached = getAttachedElements ( player ) 
    if ( attached ) then 
        for k,element in ipairs(attached) do 
            if getElementType ( element ) == "blip" then 
                destroyElement ( element ) 
            end 
        end 
    end 
end 
addEventHandler("onPlayerQuit",getRootElement(),destroyBlipsAttachedTo) 
addEventHandler("onResourceStop",getRootElement(),destroyBlipsAttachedTo) 

Debugscript says:

[21:08:15] WARNING: [gamemodes]/[play]/play/teams.lua:57: Bad argument @ 'getAtt 
achedElements' [Expected element at argument 1, got string 'Timed out'] 

Thanks for helping.

Link to comment

At the end of the code :

function destroyBlipsAttachedToSource() 
    local attached = getAttachedElements ( source ) 
    if ( attached ) then 
        for k,element in ipairs(attached) do 
            if getElementType ( element ) == "blip" then 
                destroyElement ( element ) 
            end 
        end 
    end 
end 
addEventHandler("onPlayerQuit",getRootElement(),destroyBlipsAttachedToSource) 
  
function destroyBlipsAttachedTo() 
    local attached = getAttachedElements ( source ) 
    if ( attached ) then 
        for k,element in ipairs(attached) do 
            if getElementType ( element ) == "blip" then 
                destroyElement ( element ) 
            end 
        end 
    end 
end 
  
addEventHandler("onResourceStop",getRootElement(),destroyBlipsAttachedTo) 

+ I don't see that 'Timed out' string on the debug !

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