Jump to content

تعديل كود


ryan112

Recommended Posts

سلام عليكم 

اريد اعدل عل كود  

myfont = "default-bold"
nametags_Root = getRootElement()
nametags_ResRoot = getResourceRootElement(getThisResource())
nametags_Players = getElementsByType('player')
nametags_Me = getLocalPlayer()

nametag = {}
local nametags = {}
local sWidth,sHeight = guiGetScreenSize()
local Nametags_Hide = false
local Nametags_Scale = 0.30
local Nametags_Alpha_Distance = 50
local Nametags_Distance = 120 
local Nametags_Alpha = 255
local Nametags_Text_Bar_Space = 1
local Nametags_Width = 50
local Nametags_Height = 20
local Nametags_Size = 0.3
local Nametags_Outline_Thickness = 1
local Nametags_Alpha_Diff = Nametags_Distance - Nametags_Alpha_Distance
Nametags_Scale = 1/Nametags_Scale * 800 / sHeight 

local maxScaleCurve = { {0, 0}, {3, 3}, {13, 5} }
local textScaleCurve = { {0, 0.8}, {1.9, 1.2}, {99, 99} }
local textAlphaCurve = { {0, 0}, {25, 100}, {120, 190}, {255, 190} }

function nametags.Create ( player )
	nametags[player] = true
end

function nametags.Destroy ( player )
	nametags[player] = nil
end

addEventHandler ( "onClientRender", nametags_Root,
	function()
		if getElementData(getLocalPlayer(), "state.hud") == "disabled" then
        return
        end
		for i,player in ipairs(nametags_Players) do
			if isElement(player) then
				setPlayerNametagShowing ( player, false )
				if not nametags[player] then
					nametags.Create ( player )
				end
			end
		end
		if Nametags_Hide then
			return
		end
		local x,y,z = getCameraMatrix()
		for player in pairs(nametags) do 
			while true do
				if not isElement(player) then break end
				if getElementDimension(player) ~= getElementDimension(nametags_Me) then break end
				local px,py,pz = getElementPosition ( player )
				local bx, by, bz = getPedBonePosition( player, 5 )
				if processLineOfSight(x, y, z, px, py, pz, true, false, false, true, false, true) then break end
				local playerDistance = getDistanceBetweenPoints3D ( x,y,z,px,py,pz )
				if playerDistance <= Nametags_Distance then
					--Get screen position
					--local sx,sy = getScreenFromWorldPosition ( px, py, pz+0.95, 0.06 )
					local sx,sy = getScreenFromWorldPosition( bx + 0, by, bz + 0.4 )
					if not sx or not sy then break end
					--Calculate our components
					local scale = 1/(Nametags_Scale * (playerDistance / Nametags_Distance))
					local alpha = ((playerDistance - Nametags_Alpha_Distance) / Nametags_Alpha_Diff)
					alpha = (alpha < 0) and Nametags_Alpha or Nametags_Alpha-(alpha*Nametags_Alpha)
					scale = math.evalCurve(maxScaleCurve,scale)
					local textScale = math.evalCurve(textScaleCurve,scale)
					local textAlpha = math.evalCurve(textAlphaCurve,alpha)
					local outlineThickness = Nametags_Outline_Thickness*(scale)
					--Requirements
					local team = getPlayerTeam(player)
                    local level = getElementData(player, "LV") or 0
                    local Reputation = getElementData(player, "Reputation") or "player"
					local r,g,b = getPlayerNametagColor(player)
					local offset = (scale) * Nametags_Text_Bar_Space/1
					local playerName = getPlayerName(player)
					local imageSize = dxGetFontHeight ( textScale*Nametags_Size, myfont )
                    local lp = getElementData(player, "Experience.rank") or "Newbie"
					
					--Draw our text
					--dxDrawText ( playerName, sx, sy - offset, sx, sy - offset, tocolor(0,0,0,255), textScale*Nametags_Size, myfont, "center", "bottom", false, false, false, true, true )
					dxDrawText ( playerName.."", sx, sy - offset, sx, sy - 0.11*offset, tocolor(0,0,0,255), textScale*Nametags_Size*1, myfont, "center", "bottom", false, false, false, false, true ) 
					dxDrawText ( playerName.."", sx, sy - offset, sx, sy - 0.11*offset, tocolor(r,g,b,255), textScale*Nametags_Size*1, myfont, "center", "bottom", false, false, false, false, false )               
					nameWidth = dxGetTextWidth ( playerName.."", textScale*Nametags_Size, myfont )
                    teamWidth = nameWidth
                        if team then
                        dxDrawText (" ["..getTeamName(team).."] ", 1*sx, 1*sy - offset + 1*scale, 1*sx, sy - offset + 10*scale, tocolor(0,0,0,255), textScale*Nametags_Size*1, myfont, "center", "bottom", false, false, false, true, true )
                        dxDrawText (" ["..getTeamName(team).."] ", 1*sx, 1*sy - offset + 1*scale, 1*sx, sy - offset + 10*scale, tocolor(r,g,b,255), textScale*Nametags_Size*1, myfont, "center", "bottom", false, false, false, true, true )
                        end




					if Reputation then
						dxDrawImage ( sx - math.max(nameWidth/1, teamWidth/1) - -28*scale, sy - 1*imageSize, 1.3*imageSize, 1.3*imageSize, ""..Reputation..".png" )
					end

						if (getElementData(player, "player.key") == "zouzou69") or (getElementData(player, "player.key") == "bashy") then
						dxDrawText ("Admin", sx, sy - offset - 4*scale, sx, sy - offset - 4*scale, tocolor(0,255,0,255), textScale*Nametags_Size*1, myfont, "center", "bottom", false, false, false, true, true )
                        dxDrawText ("Admin", sx, sy - offset - 4*scale, sx, sy - offset - 4*scale, tocolor(255,0,0,255), textScale*Nametags_Size*1, myfont, "center", "bottom", false, false, false, true, true )
                        typingWidth = dxGetTextWidth ("Admin", textScale*Nametags_Size*1, myfont )
						end
						if (getElementData(player, "player.key") == "marc69") or (getElementData(player, "player.key") == "joseph6969") then
						dxDrawText ("Super Moderator", sx, sy - offset - 4*scale, sx, sy - offset - 4*scale, tocolor(0,0,255,255), textScale*Nametags_Size*1, myfont, "center", "bottom", false, false, false, true, true )
                        dxDrawText ("Super Moderator", sx, sy - offset - 4*scale, sx, sy - offset - 4*scale, tocolor(0,0,255,255), textScale*Nametags_Size*1, myfont, "center", "bottom", false, false, false, true, true )
                        typingWidth = dxGetTextWidth ("Super Moderator", textScale*Nametags_Size*1, myfont )
						end
						
					if lp and team then
						dxDrawImage ( 30+sx - math.max((nameWidth), (teamWidth/1)) - 15*scale, sy - 1.2*imageSize, 2*imageSize, 2*imageSize, ":Experience/Emblems/"..lp..".png" )
					else
						dxDrawImage ( 30+sx - math.max((nameWidth), (nameWidth/1)) - 15*scale, sy - 1.2*imageSize, 2*imageSize, 2*imageSize, ":Experience/Emblems/"..lp..".png" )
					end
				end
				break
			end
		end
	end
)





function nametagsCreate()
	for i,player in ipairs(getElementsByType"player") do
		nametags.Create ( player )
		setElementData(player, "nametags", "enabled")
	end
end
addEventHandler('onClientResourceStart', nametags_Root, nametagsCreate)

function nametagsCreateOnJoin()
	if source == nametags_Me then
	return
	end
	setPlayerNametagShowing ( source, false )
	nametags.Create ( source )
end
addEventHandler('onClientPlayerJoin', nametags_Root, nametagsCreateOnJoin)

function nametagsDestroy()
	nametags.Destroy ( source )
end
addEventHandler('onClientPlayerQuit', nametags_Root, nametagsDestroy)

function math.lerp(from,to,alpha)
    return from + (to-from) * alpha
end

function math.evalCurve( curve, input )
	if input<curve[1][1] then
		return curve[1][2]
	end
	for idx=2,#curve do
		if input<curve[idx][1] then
			local x1 = curve[idx-1][1]
			local y1 = curve[idx-1][2]
			local x2 = curve[idx][1]
			local y2 = curve[idx][2]
			local alpha = (input - x1)/(x2 - x1);
			return math.lerp(y1,y2,alpha)
		end
	end
	return curve[#curve][2]
end

function dxDrawColorText(str, ax, ay, bx, by, color, scale, font,alignX,alignY,clip, wordBreak, postGUI)
  local pat = "(.-)#(%x%x%x%x%x%x)"
  local s, e, cap, col = str:find(pat, 1)
  local last = 1
  while s do
    if s ~= 1 or cap ~= "" then 
      local w = dxGetTextWidth(cap, scale, font)
      dxDrawText(cap, ax, ay, ax + w, by, color, scale, font,alignX,alignY,clip, wordBreak, postGUI)
      ax = ax + w
      color = tocolor(tonumber("0x"..string.sub(col, 1, 2)), tonumber("0x"..string.sub(col, 3, 4)), tonumber("0x"..string.sub(col, 5, 6)), 255)
    end
    last = e+1
    s, e, cap, col = str:find(pat, last)
  end
  if last <= #str then
    cap = str:sub(last)
    local w = dxGetTextWidth(cap, scale, font)
    dxDrawText(cap, ax, ay, ax + w, by, color, scale, font,alignX,alignY,clip, wordBreak, postGUI)
  end
end

هي رابط صورة p_709xa4te1.png 

انا بدي اخفي تاج هوا يظهر هيك 

مثال 

[LB]Ryan انا بدي اخفي [LB] يعني كلشي [] داخل هدول مربعات بس يظهر اسم 

انشالله تكونو فهمتوني

 

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