Jump to content

Me ayudan con esto?


Flipi

Recommended Posts

Posted

Hola quisiera saber como ocultar los codigos de color en los nombres en esta parte....

Imagen: http://img827.imageshack.us/img827/4316/wsfn.png

modelX, modelY, modelZ = 219.9765, 1822.8145, 6.533 -- minimap location 
  
showLegend = createColSphere ( modelX, modelY, modelZ, 13 ) --colshape for activating nametags 
  
function makeMapMarker (player) 
    local r, g, b = getPlayerNametagColor ( player ) 
    local themarker = createMarker ( modelX, modelY, modelZ, "cylinder", .05, r, g, b, 255 ) 
    setElementData ( player, "Radar_marker", themarker, false ) 
end 
  
function ResourceStart(startedresource) 
    if startedresource == getThisResource() then 
        Radar_items = getElementsByType( "player" ) 
        for k,v in ipairs(Radar_items) do 
            makeMapMarker (v) 
        end 
        setTimer(Radar_check, 250, 0) 
    end 
end 
addEventHandler( "onClientResourceStart", getRootElement(), ResourceStart ) 
  
function PlayerJoin ( ) 
    makeMapMarker (source) 
end 
addEventHandler( "onClientPlayerJoin", getRootElement(), PlayerJoin) 
  
function PlayerQuit ( ) 
    destroyElement( getElementData ( source, "Radar_marker" ) ) 
end 
addEventHandler( "onClientPlayerQuit", getRootElement(), PlayerQuit) 
  
function Radar_check() 
    Radar_items = getElementsByType( "player" ) 
    for k,v in ipairs(Radar_items) do 
        if isElement(v) then 
            x,y,z = getElementPosition ( v ) 
            x = x / 1642.935378 
            y = y / 1642.935378 
            z = z / 1642.935378 
            local themarker = getElementData ( v, "Radar_marker" ) 
            setElementPosition ( themarker, modelX-y, modelY+x, modelZ+z ) --Whack math is because west is north on 3d model 
        end 
    end 
end 
  
function ColShapeHit ( theElement, matchingDimension ) 
    if theElement == getLocalPlayer() then 
        if not mapNamesHandler then 
            mapNamesHandler = addEventHandler ( "onClientRender", root, ClientRender ) 
        end 
    end 
end 
addEventHandler("onClientColShapeHit",showLegend,ColShapeHit) 
  
function ColShapeLeave ( theElement, matchingDimension ) 
    if theElement == getLocalPlayer() then 
        if mapNamesHandler then 
            removeEventHandler ( "onClientRender", root, ClientRender ) 
            mapNamesHandler = nil 
        end 
    end 
end 
addEventHandler("onClientColShapeLeave", showLegend, ColShapeLeave ) 
  
function ClientRender () 
    if trackmode == 1 then 
        local Radar_items = getElementsByType( "player" ) 
        for k,v in pairs(Radar_items) do 
            local r, g, b, a = getMarkerColor ( getElementData ( v, "Radar_marker" ) ) 
            local x, y, z = getElementPosition ( getElementData ( v, "Radar_marker" ) ) 
            local zOffset = (k/20)+.3 
            
            local screenX, screenY = getScreenFromWorldPosition ( x, y, z + zOffset ) 
            local screenXX, screenYY = getScreenFromWorldPosition ( x, y, z ) --For the marker 
            
            if screenX ~= false and screenXX ~= false then 
                local name = getPlayerName ( v ) 
                dxDrawText ( name, screenX, screenY, screenX, screenY, tocolor(r, g, b), 1, "default", "left", "top", false, false, false, true) 
                dxDrawLine ( screenX, screenY+13, screenXX, screenYY, tocolor(r,g,b), 1 ) 
            end 
        end 
    elseif trackmode == 2 then 
        local randomalpha = math.random( 70, 200 ) 
        setElementAlpha(holoped, randomalpha) 
        local r, g, b, a = getMarkerColor ( getElementData ( trackedplayer, "Radar_marker" ) ) 
        local x, y, z = getElementPosition ( getElementData ( trackedplayer, "Radar_marker" ) ) 
        local zOffset = .3 
        local screenX, screenY = getScreenFromWorldPosition ( modelX, modelY, modelZ+.4 ) 
        local screenXX, screenYY = getScreenFromWorldPosition ( x, y, z ) --For the marker     
        if screenX ~= false and screenXX ~= false then 
            local screenXXX, screenYYY = getScreenFromWorldPosition ( modelX, modelY, modelZ+1.5 ) 
            if screenXXX ~= false then 
                local name = getPlayerName (trackedplayer) 
                dxDrawText ( name, screenXXX+40, screenYYY-15, screenX, screenY, tocolor(r, g, b), 1, "default", "left", "top", false, false, false, true)     
                local hp = getElementHealth ( trackedplayer) 
                roundedhp = math.round(hp) 
                if trackedarmor ~= nil then 
                    dxDrawText ( "Vida: "..roundedhp, screenXXX+40, screenYYY, screenX, screenY, tocolor(r, g, b) ) 
                    dxDrawText ( "Armadura: "..trackedarmor, screenXXX+40, screenYYY+15, screenX, screenY, tocolor(r, g, b) ) 
                    dxDrawText ( "Ubicacion: "..trackedlocation..", "..trackedcity, screenXXX+40, screenYYY+30, screenX, screenY, tocolor(r, g, b) ) 
                    dxDrawText ( "Arma: "..trackedweapon, screenXXX+40, screenYYY+45, screenX, screenY, tocolor(r, g, b) ) 
                    dxDrawText ( "Vehiculo: "..trackedvehicle, screenXXX+40, screenYYY+60, screenX, screenY, tocolor(r, g, b) ) 
                else 
                    dxDrawText ( "Escaneando...", screenXXX+40, screenYYY, screenX, screenY, tocolor(r, g, b) ) 
                end 
            end 
            dxDrawLine ( screenX, screenY, screenXX, screenYY, tocolor(r,g,b), 1 ) 
        end 
    end 
end 
  
  
trackedvehicle = nil 
  
  
  
  
trackerMarker = createMarker (modelX-7.5596, modelY+.022, modelZ-1.019, "cylinder", 1.5, 255, 255, 0, 40 ) 
tracker_Window = {} 
tracker_Button = {} 
tracker_Grid = {} 
tracker_Window[1] = guiCreateWindow(123,142,223,228,"Contro de Seguimiento",false) 
guiWindowSetSizable(tracker_Window[1],false) 
tracker_Player = guiCreateButton(0.0942,0.8114,0.3901,0.136,"Mirar Jugador",true,tracker_Window[1]) 
tracker_All = guiCreateButton(0.5022,0.8158,0.3901,0.1316,"Mirar Todos",true,tracker_Window[1]) 
tracker_Grid = guiCreateGridList(0.0852,0.136,0.8072,0.6491,true,tracker_Window[1]) 
guiGridListSetSelectionMode(tracker_Grid,2) 
column = guiGridListAddColumn( tracker_Grid, "Nombre del jugador", 0.85 ) 
guiSetVisible ( tracker_Window[1], false ) 
trackmode = 1 
trackedplayer = nil 
trackedarmor = nil 
trackedlocation = nil 
trackedcity = nil 
trackedweapon = nil 
trackedvehicle = nil 
  
function showPlayerButton() 
    guiSetVisible ( tracker_Player, true ) 
end 
addEventHandler ( "onClientGUIClick", tracker_Grid, showPlayerButton) 
  
holoped = createPed ( 0, modelX, modelY, modelZ+1.4 ) 
setElementAlpha(holoped, 0) 
setPedFrozen(holoped, true) 
setElementCollisionsEnabled(holoped, false) 
setPedVoice(holoped, "PED_TYPE_DISABLED") 
  
function showTrackerGui ( hitPlayer, matchingDimension ) 
    if (hitPlayer == getLocalPlayer()) and (isPedOnGround ( getLocalPlayer())) then 
        guiGridListClear(tracker_Grid) 
        guiSetVisible ( tracker_Window[1], true ) 
        guiBringToFront ( tracker_Window[1] ) 
        guiSetVisible ( tracker_Player, false ) 
        showCursor ( true ) 
        for id, playeritem in ipairs(getElementsByType("player")) do 
            local row = guiGridListAddRow ( tracker_Grid ) 
            guiGridListSetItemText ( tracker_Grid, row, column, getPlayerName(playeritem), false, false ) 
        end 
    end 
end 
addEventHandler ( "onClientMarkerHit", trackerMarker, showTrackerGui ) 
  
function trackerMarkerLeave ( hitPlayer, matchingDimension ) 
    if (hitPlayer == getLocalPlayer()) then 
        guiSetVisible ( tracker_Window[1], false ) 
        showCursor ( false ) 
    end 
end 
addEventHandler ( "onClientMarkerLeave", trackerMarker, trackerMarkerLeave ) 
  
function trackplayer() 
    local itemrow,itemcolumn = guiGridListGetSelectedItem(tracker_Grid ) 
    if itemrow ~= -1 then 
        local playerName = guiGridListGetItemText (tracker_Grid, guiGridListGetSelectedItem(tracker_Grid ), 1 ) 
        trackedplayer = getPlayerFromName(playerName) 
        if trackedplayer ~= false then 
            setElementModel(holoped,getElementModel(trackedplayer)) 
            trackmode = 2 
            triggerServerEvent ("onTrackModeChange", getLocalPlayer(), trackmode, trackedplayer ) 
        end 
    else 
        trackmode = 1 
        triggerServerEvent ("onTrackModeChange", getLocalPlayer(), trackmode ) 
    end 
    guiSetVisible ( tracker_Window[1], false ) 
    showCursor ( false ) 
end 
addEventHandler ( "onClientGUIClick", tracker_Player, trackplayer) 
  
function trackall() 
    guiSetVisible ( tracker_Window[1], false ) 
    showCursor ( false ) 
    trackmode = 1 
    triggerServerEvent ("onTrackModeChange", getLocalPlayer(), trackmode ) 
    setElementAlpha(holoped, 0) 
end 
addEventHandler ( "onClientGUIClick", tracker_All, trackall) 
  
addEvent( "onTrackerUpdated", true ) 
function syncTrackMode ( newtrackmode, newtrackedplayer ) 
    if newtrackmode == 1 then 
        trackmode = 1 
        setElementAlpha(holoped, 0) 
        trackedarmor = nil 
    elseif newtrackmode == 2 then 
        trackmode = 2 
        trackedplayer = newtrackedplayer 
        setElementModel(holoped,getElementModel(trackedplayer)) 
        trackedarmor = nil 
    end 
end 
addEventHandler( "onTrackerUpdated", getRootElement(), syncTrackMode ) 
  
function didTrackedplayerQuit() 
    if source == trackedplayer then 
        trackmode = 1 
        setElementAlpha(holoped, 0) 
        trackedarmor = nil 
    end 
end 
addEventHandler( "onClientPlayerQuit", getRootElement(), didTrackedplayerQuit ) 
  
function math.round(number, decimals, method) 
    decimals = decimals or 0 
    local factor = 10 ^ decimals 
    if (method == "ceil" or method == "floor") then return math[method](number * factor) / factor 
    else return tonumber(("%."..decimals.."f"):format(number)) end 
end 
  
addEvent( "onTrackerInfoUpdate", true ) 
function syncTrackMode(vehicle, location, city, weapon, armor) 
    if vehicle then trackedvehicle = vehicle end 
    if location then trackedlocation = location end 
    if city then trackedcity = city end 
    if weapon then trackedweapon = weapon end 
    if armor then trackedarmor = armor end 
end 
addEventHandler( "onTrackerInfoUpdate", getRootElement(), syncTrackMode ) 
  

Posted

Usa lo siguiente:

:gsub("#%x%x%x%x%x%x","") ) 

Pero si no entiendes donde ponerlo proba de esta forma:

modelX, modelY, modelZ = 219.9765, 1822.8145, 6.533 -- minimap location 
  
showLegend = createColSphere ( modelX, modelY, modelZ, 13 ) --colshape for activating nametags 
  
function makeMapMarker (player) 
    local r, g, b = getPlayerNametagColor ( player ) 
    local themarker = createMarker ( modelX, modelY, modelZ, "cylinder", .05, r, g, b, 255 ) 
    setElementData ( player, "Radar_marker", themarker, false ) 
end 
  
function ResourceStart(startedresource) 
    if startedresource == getThisResource() then 
        Radar_items = getElementsByType( "player" ) 
        for k,v in ipairs(Radar_items) do 
            makeMapMarker (v) 
        end 
        setTimer(Radar_check, 250, 0) 
    end 
end 
addEventHandler( "onClientResourceStart", getRootElement(), ResourceStart ) 
  
function PlayerJoin ( ) 
    makeMapMarker (source) 
end 
addEventHandler( "onClientPlayerJoin", getRootElement(), PlayerJoin) 
  
function PlayerQuit ( ) 
    destroyElement( getElementData ( source, "Radar_marker" ) ) 
end 
addEventHandler( "onClientPlayerQuit", getRootElement(), PlayerQuit) 
  
function Radar_check() 
    Radar_items = getElementsByType( "player" ) 
    for k,v in ipairs(Radar_items) do 
        if isElement(v) then 
            x,y,z = getElementPosition ( v ) 
            x = x / 1642.935378 
            y = y / 1642.935378 
            z = z / 1642.935378 
            local themarker = getElementData ( v, "Radar_marker" ) 
            setElementPosition ( themarker, modelX-y, modelY+x, modelZ+z ) --Whack math is because west is north on 3d model 
        end 
    end 
end 
  
function ColShapeHit ( theElement, matchingDimension ) 
    if theElement == getLocalPlayer() then 
        if not mapNamesHandler then 
            mapNamesHandler = addEventHandler ( "onClientRender", root, ClientRender ) 
        end 
    end 
end 
addEventHandler("onClientColShapeHit",showLegend,ColShapeHit) 
  
function ColShapeLeave ( theElement, matchingDimension ) 
    if theElement == getLocalPlayer() then 
        if mapNamesHandler then 
            removeEventHandler ( "onClientRender", root, ClientRender ) 
            mapNamesHandler = nil 
        end 
    end 
end 
addEventHandler("onClientColShapeLeave", showLegend, ColShapeLeave ) 
  
function ClientRender () 
    if trackmode == 1 then 
        local Radar_items = getElementsByType( "player" ) 
        for k,v in pairs(Radar_items) do 
            local r, g, b, a = getMarkerColor ( getElementData ( v, "Radar_marker" ) ) 
            local x, y, z = getElementPosition ( getElementData ( v, "Radar_marker" ) ) 
            local zOffset = (k/20)+.3 
            
            local screenX, screenY = getScreenFromWorldPosition ( x, y, z + zOffset ) 
            local screenXX, screenYY = getScreenFromWorldPosition ( x, y, z ) --For the marker 
            
            if screenX ~= false and screenXX ~= false then 
                local name = getPlayerName ( v ) 
                dxDrawText ( name, screenX, screenY, screenX, screenY, tocolor(r, g, b), 1, "default", "left", "top", false, false, false, true) 
                dxDrawLine ( screenX, screenY+13, screenXX, screenYY, tocolor(r,g,b), 1 ) 
            end 
        end 
    elseif trackmode == 2 then 
        local randomalpha = math.random( 70, 200 ) 
        setElementAlpha(holoped, randomalpha) 
        local r, g, b, a = getMarkerColor ( getElementData ( trackedplayer, "Radar_marker" ) ) 
        local x, y, z = getElementPosition ( getElementData ( trackedplayer, "Radar_marker" ) ) 
        local zOffset = .3 
        local screenX, screenY = getScreenFromWorldPosition ( modelX, modelY, modelZ+.4 ) 
        local screenXX, screenYY = getScreenFromWorldPosition ( x, y, z ) --For the marker     
        if screenX ~= false and screenXX ~= false then 
            local screenXXX, screenYYY = getScreenFromWorldPosition ( modelX, modelY, modelZ+1.5 ) 
            if screenXXX ~= false then 
                local name = getPlayerName (trackedplayer) 
                dxDrawText ( name, screenXXX+40, screenYYY-15, screenX, screenY, tocolor(r, g, b), 1, "default", "left", "top", false, false, false, true)     
                local hp = getElementHealth ( trackedplayer) 
                roundedhp = math.round(hp) 
                if trackedarmor ~= nil then 
                    dxDrawText ( "Vida: "..roundedhp, screenXXX+40, screenYYY, screenX, screenY, tocolor(r, g, b) ) 
                    dxDrawText ( "Armadura: "..trackedarmor, screenXXX+40, screenYYY+15, screenX, screenY, tocolor(r, g, b) ) 
                    dxDrawText ( "Ubicacion: "..trackedlocation..", "..trackedcity, screenXXX+40, screenYYY+30, screenX, screenY, tocolor(r, g, b) ) 
                    dxDrawText ( "Arma: "..trackedweapon, screenXXX+40, screenYYY+45, screenX, screenY, tocolor(r, g, b) ) 
                    dxDrawText ( "Vehiculo: "..trackedvehicle, screenXXX+40, screenYYY+60, screenX, screenY, tocolor(r, g, b) ) 
                else 
                    dxDrawText ( "Escaneando...", screenXXX+40, screenYYY, screenX, screenY, tocolor(r, g, b) ) 
                end 
            end 
            dxDrawLine ( screenX, screenY, screenXX, screenYY, tocolor(r,g,b), 1 ) 
        end 
    end 
end 
  
  
trackedvehicle = nil 
  
  
  
  
trackerMarker = createMarker (modelX-7.5596, modelY+.022, modelZ-1.019, "cylinder", 1.5, 255, 255, 0, 40 ) 
tracker_Window = {} 
tracker_Button = {} 
tracker_Grid = {} 
tracker_Window[1] = guiCreateWindow(123,142,223,228,"Contro de Seguimiento",false) 
guiWindowSetSizable(tracker_Window[1],false) 
tracker_Player = guiCreateButton(0.0942,0.8114,0.3901,0.136,"Mirar Jugador",true,tracker_Window[1]) 
tracker_All = guiCreateButton(0.5022,0.8158,0.3901,0.1316,"Mirar Todos",true,tracker_Window[1]) 
tracker_Grid = guiCreateGridList(0.0852,0.136,0.8072,0.6491,true,tracker_Window[1]) 
guiGridListSetSelectionMode(tracker_Grid,2) 
column = guiGridListAddColumn( tracker_Grid, "Nombre del jugador", 0.85 ) 
guiSetVisible ( tracker_Window[1], false ) 
trackmode = 1 
trackedplayer = nil 
trackedarmor = nil 
trackedlocation = nil 
trackedcity = nil 
trackedweapon = nil 
trackedvehicle = nil 
  
function showPlayerButton() 
    guiSetVisible ( tracker_Player, true ) 
end 
addEventHandler ( "onClientGUIClick", tracker_Grid, showPlayerButton) 
  
holoped = createPed ( 0, modelX, modelY, modelZ+1.4 ) 
setElementAlpha(holoped, 0) 
setPedFrozen(holoped, true) 
setElementCollisionsEnabled(holoped, false) 
setPedVoice(holoped, "PED_TYPE_DISABLED") 
  
function showTrackerGui ( hitPlayer, matchingDimension ) 
    if (hitPlayer == getLocalPlayer()) and (isPedOnGround ( getLocalPlayer())) then 
        guiGridListClear(tracker_Grid) 
        guiSetVisible ( tracker_Window[1], true ) 
        guiBringToFront ( tracker_Window[1] ) 
        guiSetVisible ( tracker_Player, false ) 
        showCursor ( true ) 
        for id, playeritem in ipairs(getElementsByType("player")) do 
            local row = guiGridListAddRow ( tracker_Grid ) 
            guiGridListSetItemText ( tracker_Grid, row, column, getPlayerName(playeritem):gsub("#%x%x%x%x%x%x",""), false, false ) 
        end 
    end 
end 
addEventHandler ( "onClientMarkerHit", trackerMarker, showTrackerGui ) 
  
function trackerMarkerLeave ( hitPlayer, matchingDimension ) 
    if (hitPlayer == getLocalPlayer()) then 
        guiSetVisible ( tracker_Window[1], false ) 
        showCursor ( false ) 
    end 
end 
addEventHandler ( "onClientMarkerLeave", trackerMarker, trackerMarkerLeave ) 
  
function trackplayer() 
    local itemrow,itemcolumn = guiGridListGetSelectedItem(tracker_Grid ) 
    if itemrow ~= -1 then 
        local playerName = guiGridListGetItemText (tracker_Grid, guiGridListGetSelectedItem(tracker_Grid ), 1 ) 
        trackedplayer = getPlayerFromName(playerName):gsub("#%x%x%x%x%x%x","") 
        if trackedplayer ~= false then 
            setElementModel(holoped,getElementModel(trackedplayer)) 
            trackmode = 2 
            triggerServerEvent ("onTrackModeChange", getLocalPlayer(), trackmode, trackedplayer ) 
        end 
    else 
        trackmode = 1 
        triggerServerEvent ("onTrackModeChange", getLocalPlayer(), trackmode ) 
    end 
    guiSetVisible ( tracker_Window[1], false ) 
    showCursor ( false ) 
end 
addEventHandler ( "onClientGUIClick", tracker_Player, trackplayer) 
  
function trackall() 
    guiSetVisible ( tracker_Window[1], false ) 
    showCursor ( false ) 
    trackmode = 1 
    triggerServerEvent ("onTrackModeChange", getLocalPlayer(), trackmode ) 
    setElementAlpha(holoped, 0) 
end 
addEventHandler ( "onClientGUIClick", tracker_All, trackall) 
  
addEvent( "onTrackerUpdated", true ) 
function syncTrackMode ( newtrackmode, newtrackedplayer ) 
    if newtrackmode == 1 then 
        trackmode = 1 
        setElementAlpha(holoped, 0) 
        trackedarmor = nil 
    elseif newtrackmode == 2 then 
        trackmode = 2 
        trackedplayer = newtrackedplayer 
        setElementModel(holoped,getElementModel(trackedplayer)) 
        trackedarmor = nil 
    end 
end 
addEventHandler( "onTrackerUpdated", getRootElement(), syncTrackMode ) 
  
function didTrackedplayerQuit() 
    if source == trackedplayer then 
        trackmode = 1 
        setElementAlpha(holoped, 0) 
        trackedarmor = nil 
    end 
end 
addEventHandler( "onClientPlayerQuit", getRootElement(), didTrackedplayerQuit ) 
  
function math.round(number, decimals, method) 
    decimals = decimals or 0 
    local factor = 10 ^ decimals 
    if (method == "ceil" or method == "floor") then return math[method](number * factor) / factor 
    else return tonumber(("%."..decimals.."f"):format(number)) end 
end 
  
addEvent( "onTrackerInfoUpdate", true ) 
function syncTrackMode(vehicle, location, city, weapon, armor) 
    if vehicle then trackedvehicle = vehicle end 
    if location then trackedlocation = location end 
    if city then trackedcity = city end 
    if weapon then trackedweapon = weapon end 
    if armor then trackedarmor = armor end 
end 
addEventHandler( "onTrackerInfoUpdate", getRootElement(), syncTrackMode ) 

Posted

Proba así:

modelX, modelY, modelZ = 219.9765, 1822.8145, 6.533 -- minimap location 
  
showLegend = createColSphere ( modelX, modelY, modelZ, 13 ) --colshape for activating nametags 
  
function makeMapMarker (player) 
    local r, g, b = getPlayerNametagColor ( player ) 
    local themarker = createMarker ( modelX, modelY, modelZ, "cylinder", .05, r, g, b, 255 ) 
    setElementData ( player, "Radar_marker", themarker, false ) 
end 
  
function ResourceStart(startedresource) 
    if startedresource == getThisResource() then 
        Radar_items = getElementsByType( "player" ) 
        for k,v in ipairs(Radar_items) do 
            makeMapMarker (v) 
        end 
        setTimer(Radar_check, 250, 0) 
    end 
end 
addEventHandler( "onClientResourceStart", getRootElement(), ResourceStart ) 
  
function PlayerJoin ( ) 
    makeMapMarker (source) 
end 
addEventHandler( "onClientPlayerJoin", getRootElement(), PlayerJoin) 
  
function PlayerQuit ( ) 
    destroyElement( getElementData ( source, "Radar_marker" ) ) 
end 
addEventHandler( "onClientPlayerQuit", getRootElement(), PlayerQuit) 
  
function Radar_check() 
    Radar_items = getElementsByType( "player" ) 
    for k,v in ipairs(Radar_items) do 
        if isElement(v) then 
            x,y,z = getElementPosition ( v ) 
            x = x / 1642.935378 
            y = y / 1642.935378 
            z = z / 1642.935378 
            local themarker = getElementData ( v, "Radar_marker" ) 
            setElementPosition ( themarker, modelX-y, modelY+x, modelZ+z ) --Whack math is because west is north on 3d model 
        end 
    end 
end 
  
function ColShapeHit ( theElement, matchingDimension ) 
    if theElement == getLocalPlayer() then 
        if not mapNamesHandler then 
            mapNamesHandler = addEventHandler ( "onClientRender", root, ClientRender ) 
        end 
    end 
end 
addEventHandler("onClientColShapeHit",showLegend,ColShapeHit) 
  
function ColShapeLeave ( theElement, matchingDimension ) 
    if theElement == getLocalPlayer() then 
        if mapNamesHandler then 
            removeEventHandler ( "onClientRender", root, ClientRender ) 
            mapNamesHandler = nil 
        end 
    end 
end 
addEventHandler("onClientColShapeLeave", showLegend, ColShapeLeave ) 
  
function ClientRender () 
    if trackmode == 1 then 
        local Radar_items = getElementsByType( "player" ) 
        for k,v in pairs(Radar_items) do 
            local r, g, b, a = getMarkerColor ( getElementData ( v, "Radar_marker" ) ) 
            local x, y, z = getElementPosition ( getElementData ( v, "Radar_marker" ) ) 
            local zOffset = (k/20)+.3 
            
            local screenX, screenY = getScreenFromWorldPosition ( x, y, z + zOffset ) 
            local screenXX, screenYY = getScreenFromWorldPosition ( x, y, z ) --For the marker 
            
            if screenX ~= false and screenXX ~= false then 
                local name = getPlayerName ( v ) 
                dxDrawText ( name, screenX, screenY, screenX, screenY, tocolor(r, g, b), 1, "default", "left", "top", false, false, false, true) 
                dxDrawLine ( screenX, screenY+13, screenXX, screenYY, tocolor(r,g,b), 1 ) 
            end 
        end 
    elseif trackmode == 2 then 
        local randomalpha = math.random( 70, 200 ) 
        setElementAlpha(holoped, randomalpha) 
        local r, g, b, a = getMarkerColor ( getElementData ( trackedplayer, "Radar_marker" ) ) 
        local x, y, z = getElementPosition ( getElementData ( trackedplayer, "Radar_marker" ) ) 
        local zOffset = .3 
        local screenX, screenY = getScreenFromWorldPosition ( modelX, modelY, modelZ+.4 ) 
        local screenXX, screenYY = getScreenFromWorldPosition ( x, y, z ) --For the marker     
        if screenX ~= false and screenXX ~= false then 
            local screenXXX, screenYYY = getScreenFromWorldPosition ( modelX, modelY, modelZ+1.5 ) 
            if screenXXX ~= false then 
                local name = getPlayerName (trackedplayer) 
                dxDrawText ( name, screenXXX+40, screenYYY-15, screenX, screenY, tocolor(r, g, b), 1, "default", "left", "top", false, false, false, true)     
                local hp = getElementHealth ( trackedplayer) 
                roundedhp = math.round(hp) 
                if trackedarmor ~= nil then 
                    dxDrawText ( "Vida: "..roundedhp, screenXXX+40, screenYYY, screenX, screenY, tocolor(r, g, b) ) 
                    dxDrawText ( "Armadura: "..trackedarmor, screenXXX+40, screenYYY+15, screenX, screenY, tocolor(r, g, b) ) 
                    dxDrawText ( "Ubicacion: "..trackedlocation..", "..trackedcity, screenXXX+40, screenYYY+30, screenX, screenY, tocolor(r, g, b) ) 
                    dxDrawText ( "Arma: "..trackedweapon, screenXXX+40, screenYYY+45, screenX, screenY, tocolor(r, g, b) ) 
                    dxDrawText ( "Vehiculo: "..trackedvehicle, screenXXX+40, screenYYY+60, screenX, screenY, tocolor(r, g, b) ) 
                else 
                    dxDrawText ( "Escaneando...", screenXXX+40, screenYYY, screenX, screenY, tocolor(r, g, b) ) 
                end 
            end 
            dxDrawLine ( screenX, screenY, screenXX, screenYY, tocolor(r,g,b), 1 ) 
        end 
    end 
end 
  
  
trackedvehicle = nil 
  
  
  
  
trackerMarker = createMarker (modelX-7.5596, modelY+.022, modelZ-1.019, "cylinder", 1.5, 255, 255, 0, 40 ) 
tracker_Window = {} 
tracker_Button = {} 
tracker_Grid = {} 
tracker_Window[1] = guiCreateWindow(123,142,223,228,"Contro de Seguimiento",false) 
guiWindowSetSizable(tracker_Window[1],false) 
tracker_Player = guiCreateButton(0.0942,0.8114,0.3901,0.136,"Mirar Jugador",true,tracker_Window[1]) 
tracker_All = guiCreateButton(0.5022,0.8158,0.3901,0.1316,"Mirar Todos",true,tracker_Window[1]) 
tracker_Grid = guiCreateGridList(0.0852,0.136,0.8072,0.6491,true,tracker_Window[1]) 
guiGridListSetSelectionMode(tracker_Grid,2) 
column = guiGridListAddColumn( tracker_Grid, "Nombre del jugador", 0.85 ) 
guiSetVisible ( tracker_Window[1], false ) 
trackmode = 1 
trackedplayer = nil 
trackedarmor = nil 
trackedlocation = nil 
trackedcity = nil 
trackedweapon = nil 
trackedvehicle = nil 
  
function showPlayerButton() 
    guiSetVisible ( tracker_Player, true ) 
end 
addEventHandler ( "onClientGUIClick", tracker_Grid, showPlayerButton) 
  
holoped = createPed ( 0, modelX, modelY, modelZ+1.4 ) 
setElementAlpha(holoped, 0) 
setPedFrozen(holoped, true) 
setElementCollisionsEnabled(holoped, false) 
setPedVoice(holoped, "PED_TYPE_DISABLED") 
  
function showTrackerGui ( hitPlayer, matchingDimension ) 
    if (hitPlayer == getLocalPlayer()) and (isPedOnGround ( getLocalPlayer())) then 
        guiGridListClear(tracker_Grid) 
        guiSetVisible ( tracker_Window[1], true ) 
        guiBringToFront ( tracker_Window[1] ) 
        guiSetVisible ( tracker_Player, false ) 
        showCursor ( true ) 
        for id, playeritem in ipairs(getElementsByType("player")) do 
            local row = guiGridListAddRow ( tracker_Grid ) 
            guiGridListSetItemText ( tracker_Grid, row, column, getPlayerName(playeritem):gsub("#%x%x%x%x%x%x",""), false, false ) 
        end 
    end 
end 
addEventHandler ( "onClientMarkerHit", trackerMarker, showTrackerGui ) 
  
function trackerMarkerLeave ( hitPlayer, matchingDimension ) 
    if (hitPlayer == getLocalPlayer()) then 
        guiSetVisible ( tracker_Window[1], false ) 
        showCursor ( false ) 
    end 
end 
addEventHandler ( "onClientMarkerLeave", trackerMarker, trackerMarkerLeave ) 
  
function trackplayer() 
    local itemrow,itemcolumn = guiGridListGetSelectedItem(tracker_Grid ) 
    if itemrow ~= -1 then 
        local playerName = guiGridListGetItemText (tracker_Grid, guiGridListGetSelectedItem(tracker_Grid ), 1 ) 
        trackedplayer = getPlayerFromName(playerName) 
        if trackedplayer ~= false then 
            setElementModel(holoped,getElementModel(trackedplayer)) 
            trackmode = 2 
            triggerServerEvent ("onTrackModeChange", getLocalPlayer(), trackmode, trackedplayer ) 
        end 
    else 
        trackmode = 1 
        triggerServerEvent ("onTrackModeChange", getLocalPlayer(), trackmode ) 
    end 
    guiSetVisible ( tracker_Window[1], false ) 
    showCursor ( false ) 
end 
addEventHandler ( "onClientGUIClick", tracker_Player, trackplayer) 
  
function trackall() 
    guiSetVisible ( tracker_Window[1], false ) 
    showCursor ( false ) 
    trackmode = 1 
    triggerServerEvent ("onTrackModeChange", getLocalPlayer(), trackmode ) 
    setElementAlpha(holoped, 0) 
end 
addEventHandler ( "onClientGUIClick", tracker_All, trackall) 
  
addEvent( "onTrackerUpdated", true ) 
function syncTrackMode ( newtrackmode, newtrackedplayer ) 
    if newtrackmode == 1 then 
        trackmode = 1 
        setElementAlpha(holoped, 0) 
        trackedarmor = nil 
    elseif newtrackmode == 2 then 
        trackmode = 2 
        trackedplayer = newtrackedplayer 
        setElementModel(holoped,getElementModel(trackedplayer)) 
        trackedarmor = nil 
    end 
end 
addEventHandler( "onTrackerUpdated", getRootElement(), syncTrackMode ) 
  
function didTrackedplayerQuit() 
    if source == trackedplayer then 
        trackmode = 1 
        setElementAlpha(holoped, 0) 
        trackedarmor = nil 
    end 
end 
addEventHandler( "onClientPlayerQuit", getRootElement(), didTrackedplayerQuit ) 
  
function math.round(number, decimals, method) 
    decimals = decimals or 0 
    local factor = 10 ^ decimals 
    if (method == "ceil" or method == "floor") then return math[method](number * factor) / factor 
    else return tonumber(("%."..decimals.."f"):format(number)) end 
end 
  
addEvent( "onTrackerInfoUpdate", true ) 
function syncTrackMode(vehicle, location, city, weapon, armor) 
    if vehicle then trackedvehicle = vehicle end 
    if location then trackedlocation = location end 
    if city then trackedcity = city end 
    if weapon then trackedweapon = weapon end 
    if armor then trackedarmor = armor end 
end 
addEventHandler( "onTrackerInfoUpdate", getRootElement(), syncTrackMode ) 

Posted
Error o algo?

Porque veo que funciona

no arroja error, si funciona al apretar el botón, pero no hace la función que realiza al apretar el botón..

esta es la funcion que se supone que deberia hacer al apretar el boton:

img: http://img153.imageshack.us/img153/3803/o7ut.png

esto es lo que no funciona (lo de la imagen)

PD: la imagen es de antes que me ayudaras al arreglar lo que pedia

Posted
Pf, yo lo veo completamente bien, te dice todo..

mira esa imagen es antes de que me ayudaras (antes de pedir ocultar los colores).

lo que pasa es que ahora no funciona eso, me entiendes?

Posted

Ah si, proba este:

modelX, modelY, modelZ = 219.9765, 1822.8145, 6.533 -- minimap location 
  
showLegend = createColSphere ( modelX, modelY, modelZ, 13 ) --colshape for activating nametags 
  
function makeMapMarker (player) 
    local r, g, b = getPlayerNametagColor ( player ) 
    local themarker = createMarker ( modelX, modelY, modelZ, "cylinder", .05, r, g, b, 255 ) 
    setElementData ( player, "Radar_marker", themarker, false ) 
end 
  
function ResourceStart(startedresource) 
    if startedresource == getThisResource() then 
        Radar_items = getElementsByType( "player" ) 
        for k,v in ipairs(Radar_items) do 
            makeMapMarker (v) 
        end 
        setTimer(Radar_check, 250, 0) 
    end 
end 
addEventHandler( "onClientResourceStart", getRootElement(), ResourceStart ) 
  
function PlayerJoin ( ) 
    makeMapMarker (source) 
end 
addEventHandler( "onClientPlayerJoin", getRootElement(), PlayerJoin) 
  
function PlayerQuit ( ) 
    destroyElement( getElementData ( source, "Radar_marker" ) ) 
end 
addEventHandler( "onClientPlayerQuit", getRootElement(), PlayerQuit) 
  
function Radar_check() 
    Radar_items = getElementsByType( "player" ) 
    for k,v in ipairs(Radar_items) do 
        if isElement(v) then 
            x,y,z = getElementPosition ( v ) 
            x = x / 1642.935378 
            y = y / 1642.935378 
            z = z / 1642.935378 
            local themarker = getElementData ( v, "Radar_marker" ) 
            setElementPosition ( themarker, modelX-y, modelY+x, modelZ+z ) --Whack math is because west is north on 3d model 
        end 
    end 
end 
  
function ColShapeHit ( theElement, matchingDimension ) 
    if theElement == getLocalPlayer() then 
        if not mapNamesHandler then 
            mapNamesHandler = addEventHandler ( "onClientRender", root, ClientRender ) 
        end 
    end 
end 
addEventHandler("onClientColShapeHit",showLegend,ColShapeHit) 
  
function ColShapeLeave ( theElement, matchingDimension ) 
    if theElement == getLocalPlayer() then 
        if mapNamesHandler then 
            removeEventHandler ( "onClientRender", root, ClientRender ) 
            mapNamesHandler = nil 
        end 
    end 
end 
addEventHandler("onClientColShapeLeave", showLegend, ColShapeLeave ) 
  
function ClientRender () 
    if trackmode == 1 then 
        local Radar_items = getElementsByType( "player" ) 
        for k,v in pairs(Radar_items) do 
            local r, g, b, a = getMarkerColor ( getElementData ( v, "Radar_marker" ) ) 
            local x, y, z = getElementPosition ( getElementData ( v, "Radar_marker" ) ) 
            local zOffset = (k/20)+.3 
            
            local screenX, screenY = getScreenFromWorldPosition ( x, y, z + zOffset ) 
            local screenXX, screenYY = getScreenFromWorldPosition ( x, y, z ) --For the marker 
            
            if screenX ~= false and screenXX ~= false then 
                local name = getPlayerName ( v ):gsub("#%x%x%x%x%x%x","") 
                dxDrawText ( name, screenX, screenY, screenX, screenY, tocolor(r, g, b), 1, "default", "left", "top", false, false, false, true) 
                dxDrawLine ( screenX, screenY+13, screenXX, screenYY, tocolor(r,g,b), 1 ) 
            end 
        end 
    elseif trackmode == 2 then 
        local randomalpha = math.random( 70, 200 ) 
        setElementAlpha(holoped, randomalpha) 
        local r, g, b, a = getMarkerColor ( getElementData ( trackedplayer, "Radar_marker" ) ) 
        local x, y, z = getElementPosition ( getElementData ( trackedplayer, "Radar_marker" ) ) 
        local zOffset = .3 
        local screenX, screenY = getScreenFromWorldPosition ( modelX, modelY, modelZ+.4 ) 
        local screenXX, screenYY = getScreenFromWorldPosition ( x, y, z ) --For the marker     
        if screenX ~= false and screenXX ~= false then 
            local screenXXX, screenYYY = getScreenFromWorldPosition ( modelX, modelY, modelZ+1.5 ) 
            if screenXXX ~= false then 
                local name = getPlayerName (trackedplayer):gsub("#%x%x%x%x%x%x","") 
                dxDrawText ( name, screenXXX+40, screenYYY-15, screenX, screenY, tocolor(r, g, b), 1, "default", "left", "top", false, false, false, true)     
                local hp = getElementHealth ( trackedplayer) 
                roundedhp = math.round(hp) 
                if trackedarmor ~= nil then 
                    dxDrawText ( "Vida: "..roundedhp, screenXXX+40, screenYYY, screenX, screenY, tocolor(r, g, b) ) 
                    dxDrawText ( "Armadura: "..trackedarmor, screenXXX+40, screenYYY+15, screenX, screenY, tocolor(r, g, b) ) 
                    dxDrawText ( "Ubicacion: "..trackedlocation..", "..trackedcity, screenXXX+40, screenYYY+30, screenX, screenY, tocolor(r, g, b) ) 
                    dxDrawText ( "Arma: "..trackedweapon, screenXXX+40, screenYYY+45, screenX, screenY, tocolor(r, g, b) ) 
                    dxDrawText ( "Vehiculo: "..trackedvehicle, screenXXX+40, screenYYY+60, screenX, screenY, tocolor(r, g, b) ) 
                else 
                    dxDrawText ( "Escaneando...", screenXXX+40, screenYYY, screenX, screenY, tocolor(r, g, b) ) 
                end 
            end 
            dxDrawLine ( screenX, screenY, screenXX, screenYY, tocolor(r,g,b), 1 ) 
        end 
    end 
end 
  
  
trackedvehicle = nil 
  
  
  
  
trackerMarker = createMarker (modelX-7.5596, modelY+.022, modelZ-1.019, "cylinder", 1.5, 255, 255, 0, 40 ) 
tracker_Window = {} 
tracker_Button = {} 
tracker_Grid = {} 
tracker_Window[1] = guiCreateWindow(123,142,223,228,"Contro de Seguimiento",false) 
guiWindowSetSizable(tracker_Window[1],false) 
tracker_Player = guiCreateButton(0.0942,0.8114,0.3901,0.136,"Mirar Jugador",true,tracker_Window[1]) 
tracker_All = guiCreateButton(0.5022,0.8158,0.3901,0.1316,"Mirar Todos",true,tracker_Window[1]) 
tracker_Grid = guiCreateGridList(0.0852,0.136,0.8072,0.6491,true,tracker_Window[1]) 
guiGridListSetSelectionMode(tracker_Grid,2) 
column = guiGridListAddColumn( tracker_Grid, "Nombre del jugador", 0.85 ) 
guiSetVisible ( tracker_Window[1], false ) 
trackmode = 1 
trackedplayer = nil 
trackedarmor = nil 
trackedlocation = nil 
trackedcity = nil 
trackedweapon = nil 
trackedvehicle = nil 
  
function showPlayerButton() 
    guiSetVisible ( tracker_Player, true ) 
end 
addEventHandler ( "onClientGUIClick", tracker_Grid, showPlayerButton) 
  
holoped = createPed ( 0, modelX, modelY, modelZ+1.4 ) 
setElementAlpha(holoped, 0) 
setPedFrozen(holoped, true) 
setElementCollisionsEnabled(holoped, false) 
setPedVoice(holoped, "PED_TYPE_DISABLED") 
  
function showTrackerGui ( hitPlayer, matchingDimension ) 
    if (hitPlayer == getLocalPlayer()) and (isPedOnGround ( getLocalPlayer())) then 
        guiGridListClear(tracker_Grid) 
        guiSetVisible ( tracker_Window[1], true ) 
        guiBringToFront ( tracker_Window[1] ) 
        guiSetVisible ( tracker_Player, false ) 
        showCursor ( true ) 
        for id, playeritem in ipairs(getElementsByType("player")) do 
            local row = guiGridListAddRow ( tracker_Grid ) 
            guiGridListSetItemText ( tracker_Grid, row, column, getPlayerName(playeritem):gsub("#%x%x%x%x%x%x",""), false, false ) 
        end 
    end 
end 
addEventHandler ( "onClientMarkerHit", trackerMarker, showTrackerGui ) 
  
function trackerMarkerLeave ( hitPlayer, matchingDimension ) 
    if (hitPlayer == getLocalPlayer()) then 
        guiSetVisible ( tracker_Window[1], false ) 
        showCursor ( false ) 
    end 
end 
addEventHandler ( "onClientMarkerLeave", trackerMarker, trackerMarkerLeave ) 
  
function trackplayer() 
    local itemrow,itemcolumn = guiGridListGetSelectedItem(tracker_Grid ) 
    if itemrow ~= -1 then 
        local playerName = guiGridListGetItemText (tracker_Grid, guiGridListGetSelectedItem(tracker_Grid ), 1 ) 
        trackedplayer = getPlayerFromName(playerName) 
        if trackedplayer ~= false then 
            setElementModel(holoped,getElementModel(trackedplayer)) 
            trackmode = 2 
            triggerServerEvent ("onTrackModeChange", getLocalPlayer(), trackmode, trackedplayer ) 
        end 
    else 
        trackmode = 1 
        triggerServerEvent ("onTrackModeChange", getLocalPlayer(), trackmode ) 
    end 
    guiSetVisible ( tracker_Window[1], false ) 
    showCursor ( false ) 
end 
addEventHandler ( "onClientGUIClick", tracker_Player, trackplayer) 
  
function trackall() 
    guiSetVisible ( tracker_Window[1], false ) 
    showCursor ( false ) 
    trackmode = 1 
    triggerServerEvent ("onTrackModeChange", getLocalPlayer(), trackmode ) 
    setElementAlpha(holoped, 0) 
end 
addEventHandler ( "onClientGUIClick", tracker_All, trackall) 
  
addEvent( "onTrackerUpdated", true ) 
function syncTrackMode ( newtrackmode, newtrackedplayer ) 
    if newtrackmode == 1 then 
        trackmode = 1 
        setElementAlpha(holoped, 0) 
        trackedarmor = nil 
    elseif newtrackmode == 2 then 
        trackmode = 2 
        trackedplayer = newtrackedplayer 
        setElementModel(holoped,getElementModel(trackedplayer)) 
        trackedarmor = nil 
    end 
end 
addEventHandler( "onTrackerUpdated", getRootElement(), syncTrackMode ) 
  
function didTrackedplayerQuit() 
    if source == trackedplayer then 
        trackmode = 1 
        setElementAlpha(holoped, 0) 
        trackedarmor = nil 
    end 
end 
addEventHandler( "onClientPlayerQuit", getRootElement(), didTrackedplayerQuit ) 
  
function math.round(number, decimals, method) 
    decimals = decimals or 0 
    local factor = 10 ^ decimals 
    if (method == "ceil" or method == "floor") then return math[method](number * factor) / factor 
    else return tonumber(("%."..decimals.."f"):format(number)) end 
end 
  
addEvent( "onTrackerInfoUpdate", true ) 
function syncTrackMode(vehicle, location, city, weapon, armor) 
    if vehicle then trackedvehicle = vehicle end 
    if location then trackedlocation = location end 
    if city then trackedcity = city end 
    if weapon then trackedweapon = weapon end 
    if armor then trackedarmor = armor end 
end 
addEventHandler( "onTrackerInfoUpdate", getRootElement(), syncTrackMode ) 

Posted

Intenta:

modelX, modelY, modelZ = 219.9765, 1822.8145, 6.533 -- minimap location 
  
showLegend = createColSphere ( modelX, modelY, modelZ, 13 ) --colshape for activating nametags 
  
function makeMapMarker (player) 
    local r, g, b = getPlayerNametagColor ( player ) 
    local themarker = createMarker ( modelX, modelY, modelZ, "cylinder", .05, r, g, b, 255 ) 
    setElementData ( player, "Radar_marker", themarker, false ) 
end 
  
function ResourceStart(startedresource) 
    if startedresource == getThisResource() then 
        Radar_items = getElementsByType( "player" ) 
        for k,v in ipairs(Radar_items) do 
            makeMapMarker (v) 
        end 
        setTimer(Radar_check, 250, 0) 
    end 
end 
addEventHandler( "onClientResourceStart", getRootElement(), ResourceStart ) 
  
function PlayerJoin ( ) 
    makeMapMarker (source) 
end 
addEventHandler( "onClientPlayerJoin", getRootElement(), PlayerJoin) 
  
function PlayerQuit ( ) 
    destroyElement( getElementData ( source, "Radar_marker" ) ) 
end 
addEventHandler( "onClientPlayerQuit", getRootElement(), PlayerQuit) 
  
function Radar_check() 
    Radar_items = getElementsByType( "player" ) 
    for k,v in ipairs(Radar_items) do 
        if isElement(v) then 
            x,y,z = getElementPosition ( v ) 
            x = x / 1642.935378 
            y = y / 1642.935378 
            z = z / 1642.935378 
            local themarker = getElementData ( v, "Radar_marker" ) 
            setElementPosition ( themarker, modelX-y, modelY+x, modelZ+z ) --Whack math is because west is north on 3d model 
        end 
    end 
end 
  
function ColShapeHit ( theElement, matchingDimension ) 
    if theElement == getLocalPlayer() then 
        if not mapNamesHandler then 
            mapNamesHandler = addEventHandler ( "onClientRender", root, ClientRender ) 
        end 
    end 
end 
addEventHandler("onClientColShapeHit",showLegend,ColShapeHit) 
  
function ColShapeLeave ( theElement, matchingDimension ) 
    if theElement == getLocalPlayer() then 
        if mapNamesHandler then 
            removeEventHandler ( "onClientRender", root, ClientRender ) 
            mapNamesHandler = nil 
        end 
    end 
end 
addEventHandler("onClientColShapeLeave", showLegend, ColShapeLeave ) 
  
function ClientRender () 
    if trackmode == 1 then 
        local Radar_items = getElementsByType( "player" ) 
        for k,v in pairs(Radar_items) do 
            local r, g, b, a = getMarkerColor ( getElementData ( v, "Radar_marker" ) ) 
            local x, y, z = getElementPosition ( getElementData ( v, "Radar_marker" ) ) 
            local zOffset = (k/20)+.3 
            
            local screenX, screenY = getScreenFromWorldPosition ( x, y, z + zOffset ) 
            local screenXX, screenYY = getScreenFromWorldPosition ( x, y, z ) --For the marker 
            
            if screenX ~= false and screenXX ~= false then 
                local name = getPlayerName ( v ) 
                dxDrawText ( name, screenX, screenY, screenX, screenY, tocolor(r, g, b), 1, "default", "left", "top", false, false, false, true) 
                dxDrawLine ( screenX, screenY+13, screenXX, screenYY, tocolor(r,g,b), 1 ) 
            end 
        end 
    elseif trackmode == 2 then 
        local randomalpha = math.random( 70, 200 ) 
        setElementAlpha(holoped, randomalpha) 
        local r, g, b, a = getMarkerColor ( getElementData ( trackedplayer, "Radar_marker" ) ) 
        local x, y, z = getElementPosition ( getElementData ( trackedplayer, "Radar_marker" ) ) 
        local zOffset = .3 
        local screenX, screenY = getScreenFromWorldPosition ( modelX, modelY, modelZ+.4 ) 
        local screenXX, screenYY = getScreenFromWorldPosition ( x, y, z ) --For the marker     
        if screenX ~= false and screenXX ~= false then 
            local screenXXX, screenYYY = getScreenFromWorldPosition ( modelX, modelY, modelZ+1.5 ) 
            if screenXXX ~= false then 
                local name = getPlayerName (trackedplayer) 
                dxDrawText ( name, screenXXX+40, screenYYY-15, screenX, screenY, tocolor(r, g, b), 1, "default", "left", "top", false, false, false, true)     
                local hp = getElementHealth ( trackedplayer) 
                roundedhp = math.round(hp) 
                if trackedarmor ~= nil then 
                    dxDrawText ( "Vida: "..roundedhp, screenXXX+40, screenYYY, screenX, screenY, tocolor(r, g, b) ) 
                    dxDrawText ( "Armadura: "..trackedarmor, screenXXX+40, screenYYY+15, screenX, screenY, tocolor(r, g, b) ) 
                    dxDrawText ( "Ubicacion: "..trackedlocation..", "..trackedcity, screenXXX+40, screenYYY+30, screenX, screenY, tocolor(r, g, b) ) 
                    dxDrawText ( "Arma: "..trackedweapon, screenXXX+40, screenYYY+45, screenX, screenY, tocolor(r, g, b) ) 
                    dxDrawText ( "Vehiculo: "..trackedvehicle, screenXXX+40, screenYYY+60, screenX, screenY, tocolor(r, g, b) ) 
                else 
                    dxDrawText ( "Escaneando...", screenXXX+40, screenYYY, screenX, screenY, tocolor(r, g, b) ) 
                end 
            end 
            dxDrawLine ( screenX, screenY, screenXX, screenYY, tocolor(r,g,b), 1 ) 
        end 
    end 
end 
  
  
trackedvehicle = nil 
  
  
  
  
trackerMarker = createMarker (modelX-7.5596, modelY+.022, modelZ-1.019, "cylinder", 1.5, 255, 255, 0, 40 ) 
tracker_Window = {} 
tracker_Button = {} 
tracker_Grid = {} 
tracker_Window[1] = guiCreateWindow(123,142,223,228,"Contro de Seguimiento",false) 
guiWindowSetSizable(tracker_Window[1],false) 
tracker_Player = guiCreateButton(0.0942,0.8114,0.3901,0.136,"Mirar Jugador",true,tracker_Window[1]) 
tracker_All = guiCreateButton(0.5022,0.8158,0.3901,0.1316,"Mirar Todos",true,tracker_Window[1]) 
tracker_Grid = guiCreateGridList(0.0852,0.136,0.8072,0.6491,true,tracker_Window[1]) 
guiGridListSetSelectionMode(tracker_Grid,2) 
column = guiGridListAddColumn( tracker_Grid, "Nombre del jugador", 0.85 ) 
guiSetVisible ( tracker_Window[1], false ) 
trackmode = 1 
trackedplayer = nil 
trackedarmor = nil 
trackedlocation = nil 
trackedcity = nil 
trackedweapon = nil 
trackedvehicle = nil 
  
function showPlayerButton() 
    guiSetVisible ( tracker_Player, true ) 
end 
addEventHandler ( "onClientGUIClick", tracker_Grid, showPlayerButton) 
  
holoped = createPed ( 0, modelX, modelY, modelZ+1.4 ) 
setElementAlpha(holoped, 0) 
setPedFrozen(holoped, true) 
setElementCollisionsEnabled(holoped, false) 
setPedVoice(holoped, "PED_TYPE_DISABLED") 
  
function showTrackerGui ( hitPlayer, matchingDimension ) 
    if (hitPlayer == getLocalPlayer()) and (isPedOnGround ( getLocalPlayer())) then 
        guiGridListClear(tracker_Grid) 
        guiSetVisible ( tracker_Window[1], true ) 
        guiBringToFront ( tracker_Window[1] ) 
        guiSetVisible ( tracker_Player, false ) 
        showCursor ( true ) 
        for id, playeritem in ipairs(getElementsByType("player")) do 
            local row = guiGridListAddRow ( tracker_Grid ) 
            local getplayer = getPlayerName(playeritem):gsub ( "#%x%x%x%x%x%x", "" ) 
            guiGridListSetItemText ( tracker_Grid, row, column, getplayer, false, false ) 
        end 
    end 
end 
addEventHandler ( "onClientMarkerHit", trackerMarker, showTrackerGui ) 
  
function trackerMarkerLeave ( hitPlayer, matchingDimension ) 
    if (hitPlayer == getLocalPlayer()) then 
        guiSetVisible ( tracker_Window[1], false ) 
        showCursor ( false ) 
    end 
end 
addEventHandler ( "onClientMarkerLeave", trackerMarker, trackerMarkerLeave ) 
  
function trackplayer() 
    local itemrow,itemcolumn = guiGridListGetSelectedItem(tracker_Grid ) 
    if itemrow ~= -1 then 
        local playerName = guiGridListGetItemText (tracker_Grid, guiGridListGetSelectedItem(tracker_Grid ), 1 ) 
        trackedplayer = getPlayerFromName(playerName) 
        if trackedplayer ~= false then 
            setElementModel(holoped,getElementModel(trackedplayer)) 
            trackmode = 2 
            triggerServerEvent ("onTrackModeChange", getLocalPlayer(), trackmode, trackedplayer ) 
        end 
    else 
        trackmode = 1 
        triggerServerEvent ("onTrackModeChange", getLocalPlayer(), trackmode ) 
    end 
    guiSetVisible ( tracker_Window[1], false ) 
    showCursor ( false ) 
end 
addEventHandler ( "onClientGUIClick", tracker_Player, trackplayer) 
  
function trackall() 
    guiSetVisible ( tracker_Window[1], false ) 
    showCursor ( false ) 
    trackmode = 1 
    triggerServerEvent ("onTrackModeChange", getLocalPlayer(), trackmode ) 
    setElementAlpha(holoped, 0) 
end 
addEventHandler ( "onClientGUIClick", tracker_All, trackall) 
  
addEvent( "onTrackerUpdated", true ) 
function syncTrackMode ( newtrackmode, newtrackedplayer ) 
    if newtrackmode == 1 then 
        trackmode = 1 
        setElementAlpha(holoped, 0) 
        trackedarmor = nil 
    elseif newtrackmode == 2 then 
        trackmode = 2 
        trackedplayer = newtrackedplayer 
        setElementModel(holoped,getElementModel(trackedplayer)) 
        trackedarmor = nil 
    end 
end 
addEventHandler( "onTrackerUpdated", getRootElement(), syncTrackMode ) 
  
function didTrackedplayerQuit() 
    if source == trackedplayer then 
        trackmode = 1 
        setElementAlpha(holoped, 0) 
        trackedarmor = nil 
    end 
end 
addEventHandler( "onClientPlayerQuit", getRootElement(), didTrackedplayerQuit ) 
  
function math.round(number, decimals, method) 
    decimals = decimals or 0 
    local factor = 10 ^ decimals 
    if (method == "ceil" or method == "floor") then return math[method](number * factor) / factor 
    else return tonumber(("%."..decimals.."f"):format(number)) end 
end 
  
addEvent( "onTrackerInfoUpdate", true ) 
function syncTrackMode(vehicle, location, city, weapon, armor) 
    if vehicle then trackedvehicle = vehicle end 
    if location then trackedlocation = location end 
    if city then trackedcity = city end 
    if weapon then trackedweapon = weapon end 
    if armor then trackedarmor = armor end 
end 
addEventHandler( "onTrackerInfoUpdate", getRootElement(), syncTrackMode ) 

Posted

mm no funciona, mira aca esta el scrip si quieres probarlo por ti mismo y me entiendas:

Server:

servertrackmode = 1 
servertrackedplayer = nil 
  
addEvent( "onTrackModeChange", true ) 
function trackModeChanged ( trackmode, trackedplayer ) 
    servertrackmode = trackmode 
    if trackedplayer then 
        triggerClientEvent ( "onTrackerUpdated", getRootElement(), trackmode, trackedplayer ) 
        servertrackedplayer = trackedplayer 
    else 
        triggerClientEvent ( "onTrackerUpdated", getRootElement(), trackmode ) 
    end 
end 
addEventHandler( "onTrackModeChange", getRootElement(), trackModeChanged ) 
  
addEvent( "onJoinerSyncrequest", true ) 
function trackModeSync () 
    if servertrackedplayer ~= nil then 
        triggerClientEvent ( "onTrackerUpdated", source, trackmode, trackedplayer ) 
    else 
        triggerClientEvent ( "onTrackerUpdated", source, trackmode ) 
    end 
end 
addEventHandler( "onJoinerSyncrequest", getRootElement(), trackModeSync ) 
  
  
function refreshTrackInfo() 
    if isElement(servertrackedplayer) then 
        local theVehicle = getPedOccupiedVehicle(servertrackedplayer) 
        if theVehicle == false then 
            vehicle = "on foot" 
        else 
            vehicle = getVehicleName(theVehicle) 
        end 
        location = getElementZoneName(servertrackedplayer) 
        city = getElementZoneName(servertrackedplayer, true) 
        local theWeapon = getPedWeapon(servertrackedplayer) 
        weapon = getWeaponNameFromID (theWeapon) 
        armor = getPedArmor(servertrackedplayer) 
        triggerClientEvent (getRootElement(), "onTrackerInfoUpdate", servertrackedplayer, vehicle, location, city, weapon, armor ) 
    end 
end 
setTimer(refreshTrackInfo, 10000, 0) 

Client:

modelX, modelY, modelZ = 219.9765, 1822.8145, 6.533 -- minimap location 
  
showLegend = createColSphere ( modelX, modelY, modelZ, 13 ) --colshape for activating nametags 
  
function makeMapMarker (player) 
    local r, g, b = getPlayerNametagColor ( player ) 
    local themarker = createMarker ( modelX, modelY, modelZ, "cylinder", .05, r, g, b, 255 ) 
    setElementData ( player, "Radar_marker", themarker, false ) 
end 
  
function ResourceStart(startedresource) 
    if startedresource == getThisResource() then 
        Radar_items = getElementsByType( "player" ) 
        for k,v in ipairs(Radar_items) do 
            makeMapMarker (v) 
        end 
        setTimer(Radar_check, 250, 0) 
    end 
end 
addEventHandler( "onClientResourceStart", getRootElement(), ResourceStart ) 
  
function PlayerJoin ( ) 
    makeMapMarker (source) 
end 
addEventHandler( "onClientPlayerJoin", getRootElement(), PlayerJoin) 
  
function PlayerQuit ( ) 
    destroyElement( getElementData ( source, "Radar_marker" ) ) 
end 
addEventHandler( "onClientPlayerQuit", getRootElement(), PlayerQuit) 
  
function Radar_check() 
    Radar_items = getElementsByType( "player" ) 
    for k,v in ipairs(Radar_items) do 
        if isElement(v) then 
            x,y,z = getElementPosition ( v ) 
            x = x / 1642.935378 
            y = y / 1642.935378 
            z = z / 1642.935378 
            local themarker = getElementData ( v, "Radar_marker" ) 
            setElementPosition ( themarker, modelX-y, modelY+x, modelZ+z ) --Whack math is because west is north on 3d model 
        end 
    end 
end 
  
function ColShapeHit ( theElement, matchingDimension ) 
    if theElement == getLocalPlayer() then 
        if not mapNamesHandler then 
            mapNamesHandler = addEventHandler ( "onClientRender", root, ClientRender ) 
        end 
    end 
end 
addEventHandler("onClientColShapeHit",showLegend,ColShapeHit) 
  
function ColShapeLeave ( theElement, matchingDimension ) 
    if theElement == getLocalPlayer() then 
        if mapNamesHandler then 
            removeEventHandler ( "onClientRender", root, ClientRender ) 
            mapNamesHandler = nil 
        end 
    end 
end 
addEventHandler("onClientColShapeLeave", showLegend, ColShapeLeave ) 
  
function ClientRender () 
    if trackmode == 1 then 
        local Radar_items = getElementsByType( "player" ) 
        for k,v in pairs(Radar_items) do 
            local r, g, b, a = getMarkerColor ( getElementData ( v, "Radar_marker" ) ) 
            local x, y, z = getElementPosition ( getElementData ( v, "Radar_marker" ) ) 
            local zOffset = (k/20)+.3 
            
            local screenX, screenY = getScreenFromWorldPosition ( x, y, z + zOffset ) 
            local screenXX, screenYY = getScreenFromWorldPosition ( x, y, z ) --For the marker 
            
            if screenX ~= false and screenXX ~= false then 
                local name = getPlayerName ( v ) 
                dxDrawText ( name, screenX, screenY, screenX, screenY, tocolor(r, g, b), 1, "default", "left", "top", false, false, false, true) 
                dxDrawLine ( screenX, screenY+13, screenXX, screenYY, tocolor(r,g,b), 1 ) 
            end 
        end 
    elseif trackmode == 2 then 
        local randomalpha = math.random( 70, 200 ) 
        setElementAlpha(holoped, randomalpha) 
        local r, g, b, a = getMarkerColor ( getElementData ( trackedplayer, "Radar_marker" ) ) 
        local x, y, z = getElementPosition ( getElementData ( trackedplayer, "Radar_marker" ) ) 
        local zOffset = .3 
        local screenX, screenY = getScreenFromWorldPosition ( modelX, modelY, modelZ+.4 ) 
        local screenXX, screenYY = getScreenFromWorldPosition ( x, y, z ) --For the marker     
        if screenX ~= false and screenXX ~= false then 
            local screenXXX, screenYYY = getScreenFromWorldPosition ( modelX, modelY, modelZ+1.5 ) 
            if screenXXX ~= false then 
                local name = getPlayerName (trackedplayer) 
                dxDrawText ( name, screenXXX+40, screenYYY-15, screenX, screenY, tocolor(r, g, b), 1, "default", "left", "top", false, false, false, true)     
                local hp = getElementHealth ( trackedplayer) 
                roundedhp = math.round(hp) 
                if trackedarmor ~= nil then 
                    dxDrawText ( "Vida: "..roundedhp, screenXXX+40, screenYYY, screenX, screenY, tocolor(r, g, b) ) 
                    dxDrawText ( "Armadura: "..trackedarmor, screenXXX+40, screenYYY+15, screenX, screenY, tocolor(r, g, b) ) 
                    dxDrawText ( "Ubicacion: "..trackedlocation..", "..trackedcity, screenXXX+40, screenYYY+30, screenX, screenY, tocolor(r, g, b) ) 
                    dxDrawText ( "Arma: "..trackedweapon, screenXXX+40, screenYYY+45, screenX, screenY, tocolor(r, g, b) ) 
                    dxDrawText ( "Vehiculo: "..trackedvehicle, screenXXX+40, screenYYY+60, screenX, screenY, tocolor(r, g, b) ) 
                else 
                    dxDrawText ( "Escaneando...", screenXXX+40, screenYYY, screenX, screenY, tocolor(r, g, b) ) 
                end 
            end 
            dxDrawLine ( screenX, screenY, screenXX, screenYY, tocolor(r,g,b), 1 ) 
        end 
    end 
end 
  
  
trackedvehicle = nil 
  
  
  
  
trackerMarker = createMarker (modelX-7.5596, modelY+.022, modelZ-1.019, "cylinder", 1.5, 255, 255, 0, 40 ) 
tracker_Window = {} 
tracker_Button = {} 
tracker_Grid = {} 
tracker_Window[1] = guiCreateWindow(123,142,223,228,"Contro de Seguimiento",false) 
guiWindowSetSizable(tracker_Window[1],false) 
tracker_Player = guiCreateButton(0.0942,0.8114,0.3901,0.136,"Mirar Jugador",true,tracker_Window[1]) 
tracker_All = guiCreateButton(0.5022,0.8158,0.3901,0.1316,"Mirar Todos",true,tracker_Window[1]) 
tracker_Grid = guiCreateGridList(0.0852,0.136,0.8072,0.6491,true,tracker_Window[1]) 
guiGridListSetSelectionMode(tracker_Grid,2) 
column = guiGridListAddColumn( tracker_Grid, "Nombre del jugador", 0.85 ) 
guiSetVisible ( tracker_Window[1], false ) 
trackmode = 1 
trackedplayer = nil 
trackedarmor = nil 
trackedlocation = nil 
trackedcity = nil 
trackedweapon = nil 
trackedvehicle = nil 
  
function showPlayerButton() 
    guiSetVisible ( tracker_Player, true ) 
end 
addEventHandler ( "onClientGUIClick", tracker_Grid, showPlayerButton) 
  
holoped = createPed ( 0, modelX, modelY, modelZ+1.4 ) 
setElementAlpha(holoped, 0) 
setPedFrozen(holoped, true) 
setElementCollisionsEnabled(holoped, false) 
setPedVoice(holoped, "PED_TYPE_DISABLED") 
  
function showTrackerGui ( hitPlayer, matchingDimension ) 
    if (hitPlayer == getLocalPlayer()) and (isPedOnGround ( getLocalPlayer())) then 
        guiGridListClear(tracker_Grid) 
        guiSetVisible ( tracker_Window[1], true ) 
        guiBringToFront ( tracker_Window[1] ) 
        guiSetVisible ( tracker_Player, false ) 
        showCursor ( true ) 
        for id, playeritem in ipairs(getElementsByType("player")) do 
            local row = guiGridListAddRow ( tracker_Grid ) 
            guiGridListSetItemText ( tracker_Grid, row, column, getPlayerName(playeritem):gsub("#%x%x%x%x%x%x",""), false, false ) 
        end 
    end 
end 
addEventHandler ( "onClientMarkerHit", trackerMarker, showTrackerGui ) 
  
function trackerMarkerLeave ( hitPlayer, matchingDimension ) 
    if (hitPlayer == getLocalPlayer()) then 
        guiSetVisible ( tracker_Window[1], false ) 
        showCursor ( false ) 
    end 
end 
addEventHandler ( "onClientMarkerLeave", trackerMarker, trackerMarkerLeave ) 
  
function trackplayer() 
    local itemrow,itemcolumn = guiGridListGetSelectedItem(tracker_Grid ) 
    if itemrow ~= -1 then 
        local playerName = guiGridListGetItemText (tracker_Grid, guiGridListGetSelectedItem(tracker_Grid ), 1 ) 
        trackedplayer = getPlayerFromName(playerName) 
        if trackedplayer ~= false then 
            setElementModel(holoped,getElementModel(trackedplayer)) 
            trackmode = 2 
            triggerServerEvent ("onTrackModeChange", getLocalPlayer(), trackmode, trackedplayer ) 
        end 
    else 
        trackmode = 1 
        triggerServerEvent ("onTrackModeChange", getLocalPlayer(), trackmode ) 
    end 
    guiSetVisible ( tracker_Window[1], false ) 
    showCursor ( false ) 
end 
addEventHandler ( "onClientGUIClick", tracker_Player, trackplayer) 
  
function trackall() 
    guiSetVisible ( tracker_Window[1], false ) 
    showCursor ( false ) 
    trackmode = 1 
    triggerServerEvent ("onTrackModeChange", getLocalPlayer(), trackmode ) 
    setElementAlpha(holoped, 0) 
end 
addEventHandler ( "onClientGUIClick", tracker_All, trackall) 
  
addEvent( "onTrackerUpdated", true ) 
function syncTrackMode ( newtrackmode, newtrackedplayer ) 
    if newtrackmode == 1 then 
        trackmode = 1 
        setElementAlpha(holoped, 0) 
        trackedarmor = nil 
    elseif newtrackmode == 2 then 
        trackmode = 2 
        trackedplayer = newtrackedplayer 
        setElementModel(holoped,getElementModel(trackedplayer)) 
        trackedarmor = nil 
    end 
end 
addEventHandler( "onTrackerUpdated", getRootElement(), syncTrackMode ) 
  
function didTrackedplayerQuit() 
    if source == trackedplayer then 
        trackmode = 1 
        setElementAlpha(holoped, 0) 
        trackedarmor = nil 
    end 
end 
addEventHandler( "onClientPlayerQuit", getRootElement(), didTrackedplayerQuit ) 
  
function math.round(number, decimals, method) 
    decimals = decimals or 0 
    local factor = 10 ^ decimals 
    if (method == "ceil" or method == "floor") then return math[method](number * factor) / factor 
    else return tonumber(("%."..decimals.."f"):format(number)) end 
end 
  
addEvent( "onTrackerInfoUpdate", true ) 
function syncTrackMode(vehicle, location, city, weapon, armor) 
    if vehicle then trackedvehicle = vehicle end 
    if location then trackedlocation = location end 
    if city then trackedcity = city end 
    if weapon then trackedweapon = weapon end 
    if armor then trackedarmor = armor end 
end 
addEventHandler( "onTrackerInfoUpdate", getRootElement(), syncTrackMode ) 

PD: anda al area 51 y busca la sala donde sale el radar y el mapa de san andreas en miniatura

Posted
No Ataouk, El tuyo solo eliminaría el color del nombre en el mapa.

claro, lo que pasa es que no funciona la parte de aparecer los datos del jugador al seleccionarlo en lista

  • Recently Browsing   0 members

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