AR/Table: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 131: Line 131:
if p ~= 0 then -- نتأكد أن الجدول لا يساوي صفر أو مو فاضي
if p ~= 0 then -- نتأكد أن الجدول لا يساوي صفر أو مو فاضي
outputChatBox ( getPlayerName ( p ) ); -- نطلع الأسماء في الشات
outputChatBox ( getPlayerName ( p ) ); -- نطلع الأسماء في الشات
end -- إغلاق if
end -- إغلاق loop
end -- إغلاق end
); -- إغلاق القوس
</syntaxhighlight> </section>
<syntaxhighlight lang="lua">
table table.remove (table,function)
</syntaxhighlight>
 
<section name="Example" class="both" show="true">
<syntaxhighlight lang="lua">
-- مثال على جلب أسماء اللاعبين عن طريق الجدول
t = {  }; -- إنشاء جدول
for i, p in ipairs ( getElementsByType ( "player" ) ) do -- لوب للاعبين
table.insert ( t, getPlayerName ( p ) ); -- نحط أسمائهم ف الجدول
end -- إغلاق loop
------------------------
addCommandHandler ( "removeMe", function ( player ) -- إنشاء أمر
for i, p in ipairs ( t ) do -- نجيب الا ف الجدول
if p ~= 0 then -- نتأكد أن الجدول لا يساوي صفر أو مو فاضي
if getPlayerName ( player ) == getPlayerName ( p ) then  -- إذا كان إسم اللاعب الي كتب الأمر يساوي اللاعب الي ف الجدول
table.remove ( t, i ) -- نحذفه من الجدول بواسطة رقمه
end -- إغلاق if
end -- إغلاق if
end -- إغلاق if
end -- إغلاق loop
end -- إغلاق loop
Line 156: Line 188:
* [http://www.lua.org/manual/5.1/manual.html#pdf-table.concat table.concat]
* [http://www.lua.org/manual/5.1/manual.html#pdf-table.concat table.concat]
* [http://www.lua.org/manual/5.1/manual.html#pdf-table.maxn table.maxn]
* [http://www.lua.org/manual/5.1/manual.html#pdf-table.maxn table.maxn]
* [http://www.lua.org/manual/5.1/manual.html#pdf-table.remove table.remove]
* [http://www.lua.org/manual/5.1/manual.html#pdf-table.sort table.sort]
* [http://www.lua.org/manual/5.1/manual.html#pdf-table.sort table.sort]
* [http://www.lua.org/manual/5.1/manual.html#pdf-unpack unpack]
* [http://www.lua.org/manual/5.1/manual.html#pdf-unpack unpack]

Revision as of 08:20, 3 January 2014

بسم الله الرحمن الرحيم




___________________________________________________________________


== table.foreachi ==

 تستخدم ل إظهار الجدول  بصف واحد              
table   table.foreachi(table,function)


Click to collapse [-]
Example

 t = {1,1,2,3,5,8,13}

test1 = table.foreachi(t,print)


1 1
2 1
3 2
4 3
5 5
6 8
7 13


Click to collapse [-]
Example

 t = { 1,2,"three"; pi=3.14159, banana="yellow" }

test1 = table.foreachi(t,print)


1       1
2       2
3       three



___________________________________________________________________

table.foreach

تستخدم ل تكرار المفاتيح في الجدول
 


table table.foreach(table,function)


Click to collapse [-]
Example

 k = { apple="green", orange="orange", banana="yellow" }

test1 = table.foreach(k,print)




apple green
orange orange
banana yellow



Click to collapse [-]
Example

 t = { 1,2,"three"; pi=3.14159, banana="yellow" }

test1 = table.foreach(t,print)

1       1
2       2
3       three
pi      3.14159
banana  yellow







table table.insert (table,function)


Click to collapse [-]
Example
-- مثال على جلب أسماء اللاعبين عن طريق الجدول

t = {  }; -- إنشاء جدول

for i, p in ipairs ( getElementsByType ( "player" ) ) do -- لوب للاعبين
table.insert ( t, p ); -- نحطهم ف الجدول
end -- إغلاق loop

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

addCommandHandler ( "gPlayer", function ( ) -- إنشاء أمر
for i, p in ipairs ( t ) do -- نجيب الا ف الجدول
if p ~= 0 then -- نتأكد أن الجدول لا يساوي صفر أو مو فاضي
outputChatBox ( getPlayerName ( p ) ); -- نطلع الأسماء في الشات
end -- إغلاق if
end -- إغلاق loop
end -- إغلاق end
); -- إغلاق القوس


table table.remove (table,function)


Click to collapse [-]
Example
-- مثال على جلب أسماء اللاعبين عن طريق الجدول

t = {  }; -- إنشاء جدول

for i, p in ipairs ( getElementsByType ( "player" ) ) do -- لوب للاعبين
table.insert ( t, getPlayerName ( p ) ); -- نحط أسمائهم ف الجدول
end -- إغلاق loop

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

addCommandHandler ( "removeMe", function ( player ) -- إنشاء أمر
for i, p in ipairs ( t ) do -- نجيب الا ف الجدول
if p ~= 0 then -- نتأكد أن الجدول لا يساوي صفر أو مو فاضي
if getPlayerName ( player ) == getPlayerName ( p ) then  -- إذا كان إسم اللاعب الي كتب الأمر يساوي اللاعب الي ف الجدول
table.remove ( t, i ) -- نحذفه من الجدول بواسطة رقمه
end -- إغلاق if 
end -- إغلاق if
end -- إغلاق loop
end -- إغلاق end
); -- إغلاق القوس




؟ table.foreachi و table.foreach الفرق بين

الاولى تستخدم لفهرسة الجدول بينما الاخرى هي لتكرار مفاتيح الجداول ,, ملاحظة : الثانيه غير مضمونه بما يتعلق الترتيب التي يتم تخزين مفاتيح في جدول


الجداول التي تحتاج لترجمة أو امثلة