شوف الفرق بينهم أنا ما أعرفه الصراحة, لكن وش فايدتهم ؟
تقريباً زي ما قلت, إستخراج قيمة من الجدول, بس هدي تسوي لووب للجدول
كيف يعني ؟
Players عشان نسوي جدول لاعبين ونحفظ الجدول في متغير getElementsByType يعني مثلا نستخدم
Players = getElementsByType ( 'player' );
وبعدين نسوي اللوب
for k,v in ipairs( Players ) do
k,v > هذي هي الأشياء إللي تاخذها من الجدول
k = المفتاح
v = القيمة
غالبا نتعامل مع القيمة, فإذا ما كنت تحتاج المفتح تقدر تتخطاه كدا
for _,v in ipairs( Players ) do
أو خليه ما تفرق ذذ
طيب جبنا الطاولة وخليناها معرفة بمتغير وسوينالها لووب
دحين مثلا نبغى نعطي كل اللاعبين 100 دولار, نسوي العملية حقت الإعطاء داخل اللوب
ونستخدم القيمة مو المفتاح
for k,v in ipairs( Players ) do
givePlayerMoney ( v, 100 );
end
هذا راح يعطي كل اللاعبين 100 دولار
أما لو تبي تعطي مثلا تيم معين, نقول تيم الفقيرين
for k,v in ipairs( Players ) do
local team = getPlayerTeam ( v );
if team and getTeamName ( team ) == 'Poor' then
givePlayerMoney ( v, 100 );
else
outputChatBox ( 'You do have money !', v );
end
end
You do have money ! هذا راح يعطي 100 دولار للفقيرين, ويقول للبقية
مع طاولة تجيبها من فنكشن, ممكن تستخدمها مع أي طاولة ipairs - pairs ومو شؤط تستخدم
+ يكون أحسن ipairs - pairs بدل next أنا إللي أعرف إنه لو إستخدمت
for k,v in next, Players do
وبس ذذ
إذا في شي ما فهمته قولي أشرحه لك ,,