Jump to content

تحت التطوير :كود - Useful Arab functions


Booo

Recommended Posts

getcountPlayersInVehicle

الوظيفه فائدتها احضار عدد اللاعبين الموجودين بسيارة الى انت تحدد الاي دي حقها

Source Code:

function getcountPlayersInVehicle (idCar) 
local countplayer = 0 
if idCar then 
for _,allPlayers in ipairs (getElementsByType("player")) do 
local theVehicle = getPedOccupiedVehicle ( allPlayers ) 
if ( isPedInVehicle (allPlayers) ) and getElementModel ( theVehicle ) == idCar then 
countplayer = countplayer +1 
end 
end 
end 
return countplayer 
end 

Examble:

addCommandHandler("ronaldo", 
function (player) 
ass = getcountPlayersInVehicle(429) 
outputChatBox("Players: "..ass ,player, 0, 255, 0) 
end) 

ان شاء الله تكون عجبتكم :)

Link to comment

12 سطر مالها داعي

تختصرها ب 5 سطور

function countPlayersInVehicle (vehicle) 
if ( vehicle and getElementType ( vehicle ) == 'vehicle' ) then  
return #getVehicleOccupants(vehicle) 
end 
end 
  

+ الوظيفة الي انت مسويها مالها فايده

Link to comment
12 سطر مالها داعي

تختصرها ب 5 سطور

function countPlayersInVehicle (vehicle) 
if ( vehicle and getElementType ( vehicle ) == 'vehicle' ) then  
return #getVehicleOccupants(vehicle) 
end 
end 
  

+ الوظيفة الي انت مسويها مالها فايده

جرب كودك يالحب قبل لا تتكلم :lol:

Link to comment

getcountPlayersInVehicle

الوظيفه فائدتها احضار عدد اللاعبين الموجودين بسيارة الى انت تحدد الاي دي حقها

Source Code:

function getcountPlayersInVehicle (idCar) 
local countplayer = 0 
if idCar then 
for _,allPlayers in ipairs (getElementsByType("player")) do 
local theVehicle = getPedOccupiedVehicle ( allPlayers ) 
if ( isPedInVehicle (allPlayers) ) and getElementModel ( theVehicle ) == idCar then 
countplayer = countplayer +1 
end 
end 
end 
return countplayer 
end 

Examble:

addCommandHandler("ronaldo", 
function (player) 
ass = getcountPlayersInVehicle(429) 
outputChatBox("Players: "..ass ,player, 0, 255, 0) 
end) 

ان شاء الله تكون عجبتكم :)

الوظيفة مالها أي فايدة بحكم انه الكود حقك بيجيب سياره وحده بالأيدي المطلوب ووين الفايده في هالشي؟

وغير انك غلطان بأنك تسوي لوب للاعبين والمفروض تسوي لوب للسيارات وبعدين تستخدم فنكشن

getVehicleOccupants

اذا كنت حاب تحسنها خل الفنكشن يرجع جدول بكل السيارات الي بنفس الايدي المطلوب وراكبها شخص واحد على الأقل

ولكل سياره جدول باللاعبين الي داخلها

Link to comment

dxGetVisible

dxSetVisible

Syntax :

dxGetVisible ( functionName ) 
dxSetVisible ( functionName, visible = true ) 

الفنكشنات واضحين من الاسم

Source Code :

dxGetVisible :

function isEventHandlerAdded( sEventName, pElementAttachedTo, func ) 
    if type( sEventName ) == 'string' and isElement( pElementAttachedTo ) and type( func ) == 'function' then 
    local aAttachedFunctions = getEventHandlers( sEventName, pElementAttachedTo ) 
        if type( aAttachedFunctions ) == 'table' and #aAttachedFunctions > 0 then 
            for i, v in ipairs( aAttachedFunctions ) do 
                if v == func then 
                return true 
                end 
            end 
        end 
    end 
    return false 
end 
  
function dxGetVisible (fun) 
    if (fun and type (fun) == "function") then 
        if (isEventHandlerAdded ("onClientRender", root, fun)) then 
            return true 
        else 
            return false 
        end 
    end 
end 

dxSetVisible :

function dxSetVisible (fun, vis) 
    if (fun and vis) then 
        if (type (fun) == "function") then 
        if (vis == true or vis == false) then 
            if (vis == true) then 
                addEventHandler ("onClientRender", root, fun) 
            else 
                removeEventHandler ("onClientRender", root, fun) 
            end 
        else 
            error ("Bad Argument At #2 Got "..type (vis)) 
    end 
        else 
            error ("Bad Argument At #1 Got "..type (fun)) 
        end 
    end 
end 

Example :

bindKey ( "F6", "down", function (  ) 
    if ( dxGetVisible ( functionName ) == false ) then 
        dxSetVisible ( functionName, true ) 
            showCursor ( true ) 
        else 
            dxSetVisible ( functionName, false ) 
        showCursor ( false ) 
    end 
end ) 

طبعا بتقولي مافيه فايدة

فيه فايدة لان ناس مايعرفون للدي اكس

author : xiRocK

Edited by Guest
Link to comment

dxGetVisible

dxSetVisible

dxGetVisible :

function dxGetVisible (fun)
    if (fun and type (fun) == "function") then
        if (removeEventHandler ("onClientRender", root, fun)) then
            return false
        else
            return true
        end
    end
end

dxSetVisible :

function dxSetVisible (fun, vis)
    if (fun and vis) then
        if (type (fun) == "function") then
        if (vis == true or false) then
            if (vis == true) then
                addEventHandler ("onClientRender", root, fun)
            else
                removeEventHandler ("onClientRender", root, fun)
            end
        else
            error ("Bad Argument At #2 Got "..type (vis))
    end
        else
            error ("Bad Argument At #1 Got "..type (fun))
        end
    end
end

لو كان موجود ولو كان مو موجود راح يطلع خطأ في الدي بق onClientRender راح تشيل حدث dxGetVisible الوظيفة

+

type( vis ) == "boolean" أو vis == true or vis == false خطأ ، يصير كذا dxSetVisible التحقق في السطر الرابع حق فنكشن

مثل ما انت حاط true لا تساوي vis ولا برجع خطأ إذا كانت قيمة

. فالنفترض أن التحقق صح ، راح يطلع خطأ في الدي بق إذا تبي تضيف الحدث وهو موجود أو تبي تشيله وهو مو موجود

Link to comment

60727218.png

حبيت اقدم لك اول فنكشن لي ..

الفنكشن عباره عن ProgressBar Dx

Syntax :

element dxCreateProgressBar ( float x , float y , float w , float h , string text , int prog )

x,y,w,h = الاحداثيات , معروفة

text = الكلام الي يطلع فوق rectangle

prog = يعني وين بيكون الـ rectangle

Functions :

bool dxProgressBarSetProgressBar ( element the element , int prog )

element the element = العنصر الي تبي تحطه له مستوى

prog = المستوى من 0 - 100

float dxProgressBarGetProgressBar ( element the element )

element the element = العنصر الي تبي تجيب المستوى حقه

Code :

  
local dxProgressBar = { Data = {} }  
  
function dxCreateProgressBar (x,y,w,h,text,prog) 
local element = createElement('dxProgressBar') 
dxProgressBar.Data[element] = {x=x,y=y,w=w,h=h,text=text,prog=prog} 
return element 
end 
  
function dxProgressBarGetProgressBar ( element )  
if ( getElementType ( element ) == 'dxProgressBar' ) then  
return dxProgressBar.Data[element].prog 
end 
return false 
end 
  
function dxProgressBarSetProgressBar ( element , prog_ )  
if ( getElementType ( element ) == 'dxProgressBar' ) then  
dxProgressBar.Data[element].prog = prog_ 
end 
return false 
end 
  
function dxDrawProgressBar ( element1 )  
if ( getElementType ( element1 ) == 'dxProgressBar' ) then 
local element = dxProgressBar.Data [ element1 ] 
local x,y,w,h,text,prog = element.x,element.y,element.w,element.h,element.text,element.prog 
if ( prog >= 100 ) then  
prog = 100 
r,g,b,alpha = 0,255,0,255  
r1,g1,b1 = 0,0,0 
else 
prog = prog 
r,g,b,alpha = 255,0,0,255 
r1,g1,b1 = 255,255,255 
end 
dxDrawRectangle (x,y,w,h,tocolor(0,0,0,190),false) 
dxDrawRectangle (x,y,math.floor(prog)*w/100,h,tocolor(r,g,b,alpha),false) 
dxDrawText(text,x,y,x+w,y+h,tocolor(r1,g1,b1,255),1,'default-bold','center','center',false,false,false,true,true) 
end 
end 

Ex :

  
  
D = dxCreateProgressBar (66, 296, 346, 36,'Testing',0) 
  
addEventHandler("onClientRender", root, 
    function( ) 
       dxDrawProgressBar ( D ) 
       dxProgressBarSetProgressBar ( D , dxProgressBarGetProgressBar ( D ) +1) 
    end 
) 

Skype : live:omarnone

Author : OmarNone

Link to comment

كودك صراحة ماله فايدة

بدون تحطيم :) كفو كبداية حب

ماله فايده بالنسبة لك لانك متعود ع النسخ والصق , + ابيك تقولي وش الي مو مفيد فيه ؟

لصق ونسخ اقلك وين ؟ + لا تخليني افضح بس .

Link to comment
  • 2 weeks later...

60727218.png

IsPositionClearFromGUIElements

. GUI هذه الوظيفة تتحقق أن الإحداثيات المعطاة خالية من عناصر الـ

Syntax

bool isPositionClearFromGUIElements( float PositionX, float PositionY ) 

Required Arguments

  • PositionX : على شاشة اللاعب X الإحداثية

  • PositionY : على شاشة اللاعب Y الإحداثية

Returns

  • . GUI إذا الإحداثيات غير خالية من عناصر الـ false و GUI إذا الإحداثيات خالية من عناصر الـ true ترجع

Source Code

Elements, Find = { "window", "tabpanel", "browser", "gridlist", "staticimage", "button", "memo", "edit", "combobox", "progressbar", "label", "radiobutton", "checkbox", "scrollbar", "scrollpane" }, string.find 
  
function IsPositionClearFromGUIElements( PositionX, PositionY ) 
    for Index = 1, 15 do 
        local Elements = getElementsByType( "gui-"..Elements[Index] ) 
        for Index = 1, #Elements do 
            local Element = Elements[Index] 
            local ParentType = getElementType( getElementParent( Element ) ) 
            if ( ( ParentType == "guiroot" or not Find( ParentType, "gui" ) ) and guiGetVisible( Element ) ) then 
                local _PositionX, _PositionY = guiGetPosition( Element, false ) 
                local Width, Height = guiGetSize( Element, false ) 
                if ( PositionX >= _PositionX and PositionX <= _PositionX + Width and PositionY >= _PositionY and PositionY <= _PositionY + Height ) then return false end 
            end 
        end 
    end 
    return true 
end 

Example

addEventHandler( "onClientClick", root, 
function( _, State, PositionX, PositionY, WorldX, WorldY, WorldZ, ClickedWorld ) 
    if ( State == "down" and isPositionClearFromGUIElements( PositionX, PositionY ) ) then 
        createProjectile( localPlayer, 20, WorldX, WorldY, WorldZ, nil, ClickedWorld ) 
    end 
end ) 

Author : #CroSs

:fadein: .

Edited by Guest
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...