Jump to content

getPlayerTeam not working for me


bradio10

Recommended Posts

Posted

Try this :

  
  
locations = { 
    {459.93146, 888.78650, -27.64281}, 
    {507.28488, 971.90436, -24.47141}, 
    {664.53302, 721.46564, -4.02670}, 
} 
  
  
function create() 
    local x, y, z = unpack ( locations [ math.random ( #locations ) ] )  
    marker = createMarker (x, y, z, "cylinder", 2, 255, 255, 0, 255) 
    blip = createBlipAttachedTo( marker, 0, 2, 0, 250, 0, 170 ) 
    setElementVisibleTo ( marker, getRootElement ( ), false ) 
    setElementVisibleTo ( blip, getRootElement ( ), false ) 
        local players = getPlayersInTeam ( getTeamFromName ( "Miners" ) ) 
        for k, v in ipairs ( players ) do 
            setElementVisibleTo ( marker, v, true ) 
            setElementVisibleTo ( blip, v, true )        
        end 
end 
setTimer(create,1000,0) 
  
create() 
  
function onHit(hitElement) 
   if getElementType(hitElement) =="player" and getPlayerTeam(hitElement) and getTeamName (getPlayerTeam(hitElement)) == "Miners" then 
        cash = math.random (500, 1000) 
        givePlayerMoney (hitElement, cash) 
        outputChatBox ( "You have just received $ " ..cash , hitElement, 0, 255, 0, true) 
        fadeCamera (hitElement, false, 0.8, 0, 0, 0) 
        setTimer ( fadeCamera, 3000, 1, hitElement, true, 1 ) 
        if isElement(bilp) then destroyElement (blip) end 
        removeEventHandler ("onMarkerHit", marker, onHit) 
        destroyElement(source) 
        setTimer( function( player )         
        local x, y, z = unpack ( locations [ math.random ( #locations ) ] )  
        marker = createMarker (x, y, z, "cylinder", 2, 255, 255, 0, 255) 
        blip = createBlipAttachedTo( marker, 0, 2, 0, 250, 0, 170 )  
        setElementVisibleTo ( marker, getRootElement ( ), false ) 
        setElementVisibleTo ( blip, getRootElement ( ), false ) 
        local players = getPlayersInTeam ( getTeamFromName ( "Miners" ) ) 
        for k, v in ipairs ( players ) do 
            setElementVisibleTo ( marker, v, true ) 
            setElementVisibleTo ( blip, v, true )                
        end 
        addEventHandler ("onMarkerHit", marker, onHit) 
        end, 1200, 1, hitElement);       
   end 
end 
addEventHandler ("onMarkerHit", marker, onHit) 
  

  

Posted
Try this :

  
  
locations = { 
    {459.93146, 888.78650, -27.64281}, 
    {507.28488, 971.90436, -24.47141}, 
    {664.53302, 721.46564, -4.02670}, 
} 
  
  
function create() 
    local x, y, z = unpack ( locations [ math.random ( #locations ) ] )  
    marker = createMarker (x, y, z, "cylinder", 2, 255, 255, 0, 255) 
    blip = createBlipAttachedTo( marker, 0, 2, 0, 250, 0, 170 ) 
    setElementVisibleTo ( marker, getRootElement ( ), false ) 
    setElementVisibleTo ( blip, getRootElement ( ), false ) 
        local players = getPlayersInTeam ( getTeamFromName ( "Miners" ) ) 
        for k, v in ipairs ( players ) do 
            setElementVisibleTo ( marker, v, true ) 
            setElementVisibleTo ( blip, v, true )        
        end 
end 
setTimer(create,1000,0) 
  
create() 
  
function onHit(hitElement) 
   if getElementType(hitElement) =="player" and getPlayerTeam(hitElement) and getTeamName (getPlayerTeam(hitElement)) == "Miners" then 
        cash = math.random (500, 1000) 
        givePlayerMoney (hitElement, cash) 
        outputChatBox ( "You have just received $ " ..cash , hitElement, 0, 255, 0, true) 
        fadeCamera (hitElement, false, 0.8, 0, 0, 0) 
        setTimer ( fadeCamera, 3000, 1, hitElement, true, 1 ) 
        if isElement(bilp) then destroyElement (blip) end 
        removeEventHandler ("onMarkerHit", marker, onHit) 
        destroyElement(source) 
        setTimer( function( player )         
        local x, y, z = unpack ( locations [ math.random ( #locations ) ] )  
        marker = createMarker (x, y, z, "cylinder", 2, 255, 255, 0, 255) 
        blip = createBlipAttachedTo( marker, 0, 2, 0, 250, 0, 170 )  
        setElementVisibleTo ( marker, getRootElement ( ), false ) 
        setElementVisibleTo ( blip, getRootElement ( ), false ) 
        local players = getPlayersInTeam ( getTeamFromName ( "Miners" ) ) 
        for k, v in ipairs ( players ) do 
            setElementVisibleTo ( marker, v, true ) 
            setElementVisibleTo ( blip, v, true )                
        end 
        addEventHandler ("onMarkerHit", marker, onHit) 
        end, 1200, 1, hitElement);       
   end 
end 
addEventHandler ("onMarkerHit", marker, onHit) 
  

It doesn't need to be set by the admin panel now, which is good, but it creates all of them after about 2 seconds.

Posted

local Miners = {} 
local blip = {} 
  
locations = { 
    {459.93146, 888.78650, -27.64281}, 
    {507.28488, 971.90436, -24.47141}, 
    {664.53302, 721.46564, -4.02670}, 
} 
  
function create() 
    local x, y, z = unpack ( locations [ math.random ( #locations ) ] ) 
    marker = createMarker (x, y, z, "cylinder", 2, 255, 255, 0, 255) 
    blip[marker] = createBlipAttachedTo( marker, 0, 2, 0, 250, 0, 170 ) 
    setElementVisibleTo ( marker, getRootElement ( ), false ) 
    setElementVisibleTo ( blip[marker], getRootElement ( ), false ) 
end 
  
create() 
  
setTimer( 
    function( ) 
        if not getTeamFromName ( "Miners" ) then return end 
        local players = getPlayersInTeam (getTeamFromName ( "Miners" )) 
        for k, v in ipairs ( players ) do 
            if (not Miners[ v ]) then 
                Miners[v] = true 
                if isElement(marker) and blip[marker] and isElement(blip[marker]) then 
                    setElementVisibleTo ( marker, v, true ) 
                    setElementVisibleTo ( blip[marker], v, true )  
                end 
            end      
        end  
    end, 
    1000, 0 
) 
  
function onHit(hitElement) 
   if getElementType(hitElement) =="player" and Miners[ hitElement ] and getPlayerTeam(hitElement) and getTeamName (getPlayerTeam(hitElement)) == "Miners" then 
        cash = math.random (500, 1000) 
        givePlayerMoney (hitElement, cash) 
        outputChatBox ( "You have just received $ " ..cash , hitElement, 0, 255, 0, true) 
        fadeCamera (hitElement, false, 0.8, 0, 0, 0) 
        setTimer ( fadeCamera, 3000, 1, hitElement, true, 1 ) 
        removeEventHandler ("onMarkerHit", marker, onHit) 
        destroyElement(source) 
        if blip[marker] and isElement(blip[marker]) then destroyElement(blip[marker]) blip[marker] = nil end         
        setTimer( function( player )         
        local x, y, z = unpack ( locations [ math.random ( #locations ) ] ) 
        marker = createMarker (x, y, z, "cylinder", 2, 255, 255, 0, 255) 
        blip[marker] = createBlipAttachedTo( marker, 0, 2, 0, 250, 0, 170 ) 
        setElementVisibleTo ( marker, getRootElement ( ), false ) 
        setElementVisibleTo ( blip[marker], getRootElement ( ), false ) 
        if not getTeamFromName ( "Miners" ) then return end      
        local players = getPlayersInTeam ( getTeamFromName ( "Miners" ) ) 
        for k, v in ipairs ( players ) do 
            if (Miners[ v ]) then 
                Miners[ v ] = nil 
            end  
        end 
        addEventHandler ("onMarkerHit", marker, onHit) 
        end, 1200, 1, hitElement); 
   end 
end 
addEventHandler ("onMarkerHit", marker, onHit) 

  

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