Jump to content

استفسارات عن البرمجة


Recommended Posts

بسم الله الرحمن الرحيم , السلام عليكم ورحمه الله وبركاته

حبيت اطرح موضوع عشان الي عنده اي استفسار عن البرمجه

الشروط كالتالي :

  • يكون معك كود جاهز (إن امكن)ء
  • عدم وضع اكثر من كود في نفس الوقت , حتى يتم الرد على الي قبله
  • وايضا يسمح بالوظائف داخل الويكي table.concat يسمح بوظائف خارج الويكي مثل

وبالتوفيق,

Edited by Guest
  • Thanks 2
Link to comment

table.concat :

Given an array where all elements are strings or numbers, returns table..sep..table[i+1] ··· sep..table[j]. The default value for sep is the empty string, the default for i is 1, and the default for j is the length of the table. If i is greater than j, returns the empty string.

بإختصار يخلي السلسله فارغه او على حسب الي تحطه

مثآل تخليه يجيب لك الاحداثيات بفواصل , تقدر تسويها بطريقتين

الاولى وهي سهله ومختصره واسرع,

addCommandHandler('Position',function(plr) 
    outputChatBox('Position : '..table.concat({getElementPosition(plr)},',')) 
    end 
) 

الثآنيه احسها مو مختصره ذذ

addCommandHandler('Position',function(plr) 
    local x,y,z = getElementPosition(plr) 
    outputChatBox('Position :'..x..','..y..','..z) 
    end 
) 

وتقدر تستخدمها في اي كلمات وتختصر مثلا

Names = {'iAbo[s]hanab~>','The Best','Tete'} 
  
addCommandHandler('Go',function(plr) 
    local acc = getAccountName(getPlayerAccount(plr)) 
        if isObjectInACLGroup('user.'..acc,aclGetGroup('Moderator')) then 
            outputChatBox('End.',plr,255,10,200) 
    else 
            outputChatBox('This command private for players : '..table.concat(Names,' أو '),plr,50,255,1,true) 
        end 
    end 
) 
Link to comment
table.concat :

Given an array where all elements are strings or numbers, returns table..sep..table[i+1] ··· sep..table[j]. The default value for sep is the empty string, the default for i is 1, and the default for j is the length of the table. If i is greater than j, returns the empty string.

بإختصار يخلي السلسله فارغه او على حسب الي تحطه

مثآل تخليه يجيب لك الاحداثيات بفواصل , تقدر تسويها بطريقتين

الاولى وهي سهله ومختصره واسرع,

addCommandHandler('Position',function(plr) 
    outputChatBox('Position : '..table.concat({getElementPosition(plr)},',')) 
    end 
) 

الثآنيه احسها مو مختصره ذذ

addCommandHandler('Position',function(plr) 
    local x,y,z = getElementPosition(plr) 
    outputChatBox('Position :'..x..','..y..','..z) 
    end 
) 

وتقدر تستخدمها في اي كلمات وتختصر مثلا

Names = {'iAbo[s]hanab~>','The Best','Tete'} 
  
addCommandHandler('Go',function(plr) 
    local acc = getAccountName(getPlayerAccount(plr)) 
        if isObjectInACLGroup('user.'..acc,aclGetGroup('Moderator')) then 
            outputChatBox('End.',plr,255,10,200) 
    else 
            outputChatBox('This command private for players : '..table.concat(Names,' أو '),plr,50,255,1,true) 
        end 
    end 
) 

يعطيك العافية

يعني الزبدة حتى لو ما حطيته مع كود الكلام عادي صحيح ؟

وسؤال ليه سورآ في المود حقه استخدمه يعني ليه ما حطه بدونه ؟

Link to comment

u هذي مهمه جدآ وخاصه يوم تسوي شات مثل يوم يضغط حرف

طبعا سورا مستخدمها عشان تقدر تحط فراغات , بإختصار

لو حطيتها يوم تكتب مثلا

هلا ؟

راح يكتبها تمام ولكن لو شلت الكود راح يكون

هلا؟

Link to comment

table.insert :

Inserts element value at position pos in table, shifting up other elements to open space, if necessary. The default value for pos is n+1, where n is the length of the table (see §2.5.5), so that a call table.insert(t,x) inserts x at the end of table t.

بإختصار يضيف قيم في الجدول , مثال,

local Table = {1,2,'four'} 
  
addCommandHandler('insert',function(plr) 
    table.insert(Table, 3, 'three') 
        outputChatBox('Values number : '..#Table..' Texts : '..table.concat(Table,' , '),plr,255,200,25,true) 
    end 
) 

لو تلاحظ الجدول ,

local Table = {1,2,'four'} 

في واحد واثنين واربعه مافي 3

وانا ابي اضيفها للجدول ,

table.insert(Table, 3, 'three') 

^ طبعا اول ارقومنت حق الجدول ثاني ارقومنت مكان القيمه يعني مثلا بعد 1 او 4 ثالث ارقومنت القيمه

طبعا تقدر تسويها كذا,

table.insert(Table, 'three') 

وحبيت اقول انه يمكن لأي احد يشارك في المسآعده , ممكن اغيب من المنتدى ...

Link to comment
السلام عليكم

ابي اعرف

setElementData + getElementData

ابي افهمه زينن وش فايدته

الزبدة شرح مفهوم

شرح الاخ زاحف بصراحة مافهمته كثيرة

ياريت تشرحوه لي

لو كنت تركز بالشرح كويس كنت فهمته بس بشرح لكـ

setElementData

Syntax

bool setElementData ( element theElement, string key, var value [, bool synchronize = true ] )

# بفهمك خطوة خطوة ,

element theElement = الالمنت اللي بتحط له الداتا , الالمنت يكون سيارة لأعب الخ ..

https://wiki.multitheftauto.com/wiki/Element # كل الالمنت هنا

string key = المفتاح حق الداتا يعني اي اسم تبيه تحطه يعني اسم للداتا

var value [, bool synchronize = true ] = قيمة الداتا ذي وش تبي تحطها فلس ولأ ترو ولأ قيمة غير

# يعني اشرح لكـ اكثر , يعني مثلأ وقت تحطها ترو يعني مفتوحةة ولأ فلس مقفلة

# اعطيكـ مثال

setElementData ( localPlayer, "TheKing", true )

# وتجي مُثلأ تتحق

if getElementData ( localPlayer, "TheKing" ) == true then

Your Code

else # -- هنا لو ما كان الداتا ترو يعني مقفلةة

Your Code

# مثال واضضح جدأ

  
marker = createMarker ( .... ) 
  
addEventHandler ( "onMarkerHit", marker, function ( element ) 
    if getElementType ( element ) == 'player' then -- نتحقق إن الشي إللي دخل الماركر الي هو لاعب 
        if getElementData ( element, "ZA7F" ) == "MTA" then --- MTA اذا كانت قيمتها  ZA7F نتحقق هنا من الداتا الي هي   
            outputChatBox ( "لقد قمت بالدخول مسبقاً", element ) 
            return 
        else --- # MTA هنا نسوي لو مو مسوين الداتا الي ما ماخذاة قمية 
            setElementData ( element, "ZA7F", "MTA" ) --- # عشان ما يستخدم الماركر مرة ثانية MTA هنا نسوي الداتا قيمتها 
            givePlayerMoney ( element, 100 )  -- نعطي اللاعب 100             
        end 
    end 
end ) 

# ZA7F شف هنا حطينا قيمة الداتا

# يعني لو ما كانت كذا تسوي كودكـ else زي م قلت لك تحطها اي كأن وتحقق لو هي كذا وتسوي

# يعني الداتا تفيدكـ في اشي تبيه , _ مثلأ / تبي تسوي سباق ولأ منطقة ما احد يقدر يدخل الا يكون معاه تذكرة , كيف تسويها ؟

# زي المثال اللي فوق تسوي لعيه داتا وقت يجي يدخل المنطقة تتحق لو الدات عليه يعني التذكرة معاه تخليه يدخل ولو مو معاه م تخخليه

setElementData

Syntax

bool setElementData ( element theElement, string key, var value [, bool synchronize = true ] ) 

Required Arguments

theElement: The element you wish to attach the data to.

key: The key you wish to store the data under. (Maximum 31 characters.)

value: The value you wish to store. See element data for a list of acceptable datatypes.

----------------------------------

getElementData

Syntax

var getElementData ( element theElement, string key [, inherit = true] ) 

Required Arguments

theElement: This is the element with data you want to retrieve.

key: The name of the element data entry you want to retrieve. (Maximum 31 characters.)

Link to comment

وربي مافهمت شيء

# الششرح ما في احسن منه

# انا اول ما تعلمت السكل كنت كذا كل يوم ادخله ولأ افهم شي

# بعدين قلت بركز وافهم , جلست ركزت مرة وكذا وصرت احاول اوشوف مودات وفهمت

# حأول حأول , ولو ما قدرت قول هنا عشان اشرحها لكـ , لأن الشرح مرة كويس .. وانا عن نفسي تعلمت منه شوية لاكن ختمت السكل بفضل الله من ثم حسن .

Edited by Guest
Link to comment

# الششرح ما في احسن منه

# انا اول ما تعلمت السكل كنت كذا كل يوم ادخله ولأ افهم شي

# بعدين قلت بركز وافهم , جلست ركزت مرة وكذا وصرت احاول اوشوف مودات وفهمت

# الشرح احسن شي ما في زيه

# حأول حأول , ولو ما قدرت قول هنا عشان اشرحها لكـ , لأن الشرح مرة كويس

انا ابي شرح انه السكل لايت ,,

ينربط بالنافدة مثل اعمل توبات وهيك اشياء ,,

ذذ هالشياء مو موجوده في هالشرح حق تيتي عمر ..

Link to comment

# الششرح ما في احسن منه

# انا اول ما تعلمت السكل كنت كذا كل يوم ادخله ولأ افهم شي

# بعدين قلت بركز وافهم , جلست ركزت مرة وكذا وصرت احاول اوشوف مودات وفهمت

# الشرح احسن شي ما في زيه

# حأول حأول , ولو ما قدرت قول هنا عشان اشرحها لكـ , لأن الشرح مرة كويس

انا ابي شرح انه السكل لايت ,,

ينربط بالنافدة مثل اعمل توبات وهيك اشياء ,,

ذذ هالشياء مو موجوده في هالشرح حق تيتي عمر ..

# خخخخخخخخخ هو يشرح لك السكل وانت تشتغل فيها

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

Link to comment

عندي سؤال

ذا آلفنكشن وش وضيفته ؟

removeCommandHandler 

This function removes a command handler, that is one that has been added using addCommandHandler. This function can only remove command handlers that were added by the resource that it is called in.

Syntax

bool removeCommandHandler ( string commandName [, function handler] ) 

# هذا بأختصار يشيل لك امر انت مسويه من قبل

# مسويه عبر فنكشن addCommandHandler

# مثال بسيط ..

addCommandHandler ( "Health", function ( player ) --# اضافةة امر في اف 8 
    setElementHealth ( player, 100 ) --# زيادةة دم اللاعب لـ 100 
    addEventHandler( "onPlayerQuit", root, remove ) --# اضافةة حدث وقت يخرج اللاعب لأمر ريموف , طبعا اي لأعب يخرج مو بس اللي كتب الأمر 
  end --# اغلأق الفنكشن 
) --# اغلأق القوسس 
  
function remove ( ) 
  removeCommandHandler ( "Health" ) --# Health ازالةة امر  
end 

# هنا بششيل الأمر للكل يعني اول واحد يكتبه هو يكون المحظوظ خخ وبعد ما يكتبه خلأص ينشال الأمرر

Edited by Guest
Link to comment

  • يكون معك كود جاهز
  • عدم وضع اكثر من كود في نفس الوقت , حتى يتم الرد على الي قبله
  • وايضا يسمح بالوظائف الصعبه داخل الويكي table.concat... يسمح بوظائف خارج الويكي مثل

ياريت لو تقرأ القوانين.

Link to comment

^ ما اظنها من الوظائف الصعبه , ولكنها صعبه في القياس عشان كذا نمشيها ,

Returns :

This returns two floats representing the player's screen resolution, width and height.

local width,height = guiGetScreenSize () 

width = العرض,

height = الارتفاع,

Link to comment
Guest
This topic is now closed to further replies.
  • Recently Browsing   0 members

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