Jump to content

iPrestege

Members
  • Posts

    10,056
  • Joined

  • Last visited

  • Days Won

    27

Everything posted by iPrestege

  1. هذا شيء عشوائي انت لو بتسوية يكون كذا table[math.random(#table)] بحيث نسوية عشوائي # يجيب كل قيم الجدول ..
  2. حياكـ الله .. اي مشكلة تواجهكـ لا تتردد بـ السؤال عنها ..
  3. iPrestege

    ?

    Make no sense at all .
  4. مو مهم الجدول ... جدول افضل و اسهل يضيف عليه .. ذذ
  5. الصراحة ماني فاهم شيء ؟
  6. table "onClientGUIClick" triggerServerEvent setPlayerTeam getTeamFromName math.random
  7. لم يتم التجربة .. المسار للملف : utils > textliP.lua بدلة بـ هذا # -- # Client Side dxText = {} dxText_mt = { __index = dxText } local idAssign,idPrefix = 0,"c" local g_screenX,g_screenY = guiGetScreenSize() local visibleText = {} ------ local defaults = { fX = 0.5, fY = 0.5, bRelativePosition = true, strText = "", bVerticalAlign = "center", bHorizontalAlign = "center", tColor = {255,255,255,255}, fScale = 1, strFont = "default", strType = "normal", tAttributes = {}, bPostGUI = false, bClip = false, bHexColor = true, bWordWrap = true, bVisible = true, tBoundingBox = false, --If a bounding box is not set, it will not be used. bRelativeBoundingBox = true, } local validFonts = { default = true, ["default-bold"] = true, clear = true, arial = true, pricedown = true, bankgothic = true, diploma = true, beckett = true, } local validTypes = { normal = true, shadow = true, border = true, stroke = true, --Clone of border } local validAlignTypes = { center = true, left = true, right = true, } function dxText:create( text, x, y, relative ) assert(not self.fX, "attempt to call method 'create' (a nil value)") if ( type(text) ~= "string" ) or ( not tonumber(x) ) or ( not tonumber(y) ) then outputDebugString ( "dxText:create - Bad argument", 0, 112, 112, 112 ) return false end local new = {} setmetatable( new, dxText_mt ) --Add default settings for i,v in pairs(defaults) do new[i] = v end idAssign = idAssign + 1 new.id = idPrefix..idAssign new.strText = text or new.strText new.fX = x or new.fX new.fY = y or new.fY if type(relative) == "boolean" then new.bRelativePosition = relative end visibleText[new] = true return new end function dxText:text(text) if type(text) ~= "string" then return self.strText end self.strText = text return true end function dxText:position(x,y,relative) if not tonumber(x) then return self.fX, self.fY end self.fX = x self.fY = y if type(relative) == "boolean" then self.bRelativePosition = relative else self.bRelativePosition = true end return true end function dxText:color(r,g,b,a) if not tonumber(r) then return unpack(self.tColor) end g = g or self.tColor[2] b = b or self.tColor[3] a = a or self.tColor[4] self.tColor = { r,g,b,a } return true end function dxText:scale(scale) if not tonumber(scale) then return self.fScale end self.fScale = scale return true end function dxText:visible(bool) if type(bool) ~= "boolean" then return self.bVisible end self.bVisible = bool if bool then visibleText[self] = true else visibleText[self] = nil end return true end function dxText:destroy() self.bDestroyed = true setmetatable( self, self ) return true end function dxText:extent() local extent = dxGetTextWidth ( self.strText, self.fScale, self.strFont ) if self.strType == "stroke" or self.strType == "border" then extent = extent + self.tAttributes[1] end return extent end function dxText:height() local height = dxGetFontHeight ( self,fScale, self.strFont ) if self.strType == "stroke" or self.strType == "border" then height = height + self.tAttributes[1] end return height end function dxText:font(font) if not validFonts[font] then return self.strFont end self.strFont = font return true end function dxText:postGUI(bool) if type(bool) ~= "boolean" then return self.bPostGUI end self.bPostGUI = bool return true end function dxText:clip(bool) if type(bool) ~= "boolean" then return self.bClip end self.bClip = bool return true end function dxText:wordWrap(bool) if type(bool) ~= "boolean" then return self.bWordWrap end self.bWordWrap = bool return true end function dxText:type(type,...) if not validTypes[type] then return self.strType, unpack(self.tAttributes) end self.strType = type self.tAttributes = {...} return true end function dxText:align(horzA, vertA) if not validAlignTypes[horzA] then return self.bHorizontalAlign, self.bVerticalAlign end vertA = vertA or self.bVerticalAlign self.bHorizontalAlign, self.bVerticalAlign = horzA, vertA return true end function dxText:boundingBox(left,top,right,bottom,relative) if left == nil then if self.tBoundingBox then return unpack(boundingBox) else return false end elseif tonumber(left) and tonumber(right) and tonumber(top) and tonumber(bottom) then self.tBoundingBox = {left,top,right,bottom} if type(relative) == "boolean" then self.bRelativeBoundingBox = relative else self.bRelativeBoundingBox = true end else self.tBoundingBox = false end return true end addEventHandler ( "onClientRender", getRootElement(), function() for self,_ in pairs(visibleText) do while true do if self.bDestroyed then visibleText[self] = nil break end local l,t,r,b --If we arent using a bounding box if not self.tBoundingBox then --Decide if we use relative or absolute local p_screenX,p_screenY = 1,1 if self.bRelativePosition then p_screenX,p_screenY = g_screenX,g_screenY end local fX,fY = (self.fX)*p_screenX,(self.fY)*p_screenY if self.bHorizontalAlign == "left" then l = fX r = fX + g_screenX elseif self.bHorizontalAlign == "right" then l = fX - g_screenX r = fX else l = fX - g_screenX r = fX + g_screenX end if self.bVerticalAlign == "top" then t = fY b = fY + g_screenY elseif self.bVerticalAlign == "bottom" then t = fY - g_screenY b = fY else t = fY - g_screenY b = fY + g_screenY end elseif type(self.tBoundingBox) == "table" then local b_screenX,b_screenY = 1,1 if self.bRelativeBoundingBox then b_screenX,b_screenY = g_screenX,g_screenY end l,t,r,b = self.tBoundingBox[1],self.tBoundingBox[2],self.tBoundingBox[3],self.tBoundingBox[4] l = l*b_screenX t = t*b_screenY r = r*b_screenX b = b*b_screenY end local type,att1,att2,att3,att4,att5 = self:type() if
  8. You can edit the freeroam and check the player dim use : -- # Client Side You Have To Edit The fr_client.lua File ! getElementDimension
  9. مرهـ ركبتة لـ رومي الوزارهـ و صار لاق يومين كذا و صار لاق و حذفتة ورجعت الاصلي وعدلتة ..
  10. iPrestege

    Question

    I Think relative is better with gui element's .
  11. iPrestege

    ?

    This function doesn't work with a Skins .
  12. I Think he meant the server browsing menu ..etc .
  13. http://whitneygaskell.com/wp-content/uploads/2012/06/sad-face.jpg
  14. iPrestege

    Question

    Create it relative .
  15. يخوي عارف بس لازم تسوي تحقق اطرح كودك حق القيم onPlayerWasted - spawnPlayer -.-
  16. اقصد اللي يوم يصير لة سباون يوم ينتقل يوم يموت اللي فية مشكلة وش دخل ذا بالموضوع؟!
  17. الكيل مسج ذا يسبب لاق ذذ
  18. ورني الكود اللي يوم تموت حق القيم .. onPlayerWasted
  19. ي ليت ماتسوي مشاركات مزدوجة ..
  20. اطرح كودكـ .. الاخير
  21. تنتقل كيف ؟ مافهمت .. ؟
  22. ي عزيزي متأكد انة مافية كود ثاني يسوي سباون بدون تحقق ؟ الكود اشوفة تمآم ؟
  23. edit : شلون افرمت ض1 ؟ امسح الملفات الخاصة فية و امسح القاعدهـ SQL
  24. هي نفسها تجي مع النسخخة غير نسختك وانصحك بـ الماسية تمام معي .. [url=http://www.wzarh-q5.net]www.wzarh-q5.net[/url]
×
×
  • Create New...