Jump to content

طلب شرح


Recommended Posts

السلام عليكم

 

محتاج شرح للقريد ليست 

يعني وقت اعمل لوحة واحط فيها القريد ليست 

كيف اعمل جدول وكيف اربط الرو ب البوتون ويعطي الامر المحدد للاعب

 

يا ريت تعطوني شرح مفصل وشكرا

Link to comment
2 hours ago, ~Mr.Hassan said:

اول شي شكرا

 

ثانيا طلبي واضح انا بدي شرح

guiGridListAddColumn -- يضيف كولمن
guiGridListAddRow -- يضيف رو داخل الكولمن
guiGridListClear -- يمسح اللي في الجريد ليست
guiGridListSetItemText -- بحط الكتابة في الرو
guiGridListSetItemColor -- يحط لون للرو
guiGridListGetItemText -- يجلب الكتابة
guiGridListGetSelectedItem -- يجلب الرو المحدد

اعتقد واضح

 

حاول ونساعدك

Link to comment
20 hours ago, #Himoo said:

Table = {}
guiGridListAddRow
guiGridListSetItemText
guiGridListSetItemData
guiGridListGetItemData
"onClientGUIClick"
guiGridListGetSelectedItem

 

 

12 hours ago, Source|> said:

guiGridListAddColumn -- يضيف كولمن
guiGridListAddRow -- يضيف رو داخل الكولمن
guiGridListClear -- يمسح اللي في الجريد ليست
guiGridListSetItemText -- بحط الكتابة في الرو
guiGridListSetItemColor -- يحط لون للرو
guiGridListGetItemText -- يجلب الكتابة
guiGridListGetSelectedItem -- يجلب الرو المحدد

اعتقد واضح

 

حاول ونساعدك

ي أخوان هو طلب شرح نظام الجريد ليست بإختصار مو تعطونه فنكشنات ._.
==

 

22 hours ago, ~Mr.Hassan said:

السلام عليكم

وعليكم السلام

20 hours ago, #Himoo said:

Table = {}
guiGridListAddRow
guiGridListSetItemText
guiGridListSetItemData
guiGridListGetItemData
"onClientGUIClick"
guiGridListGetSelectedItem

 

طبعاً بنستعين بهالفنشكنات عشان نسوي جريد ليست مرتبط بالزر , ..
 

أولاً عندنا جريد ليست وفيه 2 كولمن 
السعر والسلاح .

 

local gridList = guiCreateGridList ( 0.80, 0.10, 0.15, 0.60, true ) -- نصنع جريد ليست :
local name = guiGridListAddColumn( playerList, "Weapon", 0.85 ) --  نصنع عامود بإسم 'السلاح' في الجريد ليست 
local price = guiGridListAddColumn( playerList, "Price", 0.85 ) --  نصنع عامود بإسم 'سعر' في الجريد ليست 
local button = guiCreateButton ( 0.80, 0.18, 0.5, 0.5, "Take weapon", true )
local Table = { -- نصنع جدول عشان القيم الي بتكون في الجدول
	{ name = "AK-47", price = 5000, id = 30 }, -- القيمة الاولى بتكون جدول فيه قيم فيها اسم السلاح والسعر والأيدي حقه .
	{ name = "M4", price = 4500, id = 31 }
}

for Index, Value in ipairs ( Table ) do -- نمر على كل قيمة بجدول الي نشأناه
	local row = guiGridListAddRow ( gridList ) -- نصنع صف جديد
	guiGridListSetItemText ( gridList,  row, name, Value["name"],                 false,             false )
----                         صعب ينشرح بنسبة لمبتدئ  هل تبيه غير قابل للتحديد       اسم الصف        الكولمن  الصف  الجريد ليست        
---- يستخدم لتسمية الصف 
	guiGridListSetItemText ( gridList, row, price, Value["price"], false, false )
	guiGridListSetItemData ( gridList,  row,                Value["id"] )
----                          القيمة الي تبي تحطها كداتا على الصف  الصف  الجريد ليست
  ---- يستخدم لوضع الداتا على الصف
end

addEventHandler ( "onClientGUIClick", root, -- نصنع حدث عند ضغط على زر من نوع الجيو
	function ( ) -- ننفذ هذي الوظيفة لو صار هذا الحدث
		if source == button then -- نتحقق انه الزر الي تم ضغطه هو نفس الزر الي معنا
			local selected = guiGridListGetSelectedItem ( gridList ) -- نجيب القيمة المحددة
			if selected ~= -1 then -- -1 يعني لايوجد قيمة محددة
			-- فهنا سوينا انه مايساوي سالب واحد
				local name = guiGridListGetItemText ( gridList, selected, name ) -- نجيب أسم السلاح الي تم تحديده
				local price = guiGridListGetItemText ( gridList, selected, price ) -- وسعره
				local id = guiGridListGetItemData ( gridList, selected ) -- ونجيب الداتا حقه الي فيها الأيدي
        		if getPlayerMoney ( ) >= tonumber(price) then  -- نتحقق انه معه فلوس أكثر من السعر او نفس السعر
					triggerServerEvent ( "Give:Weapon", localPlayer ) -- نرسل ترايقر للسيرفر عشان يعطيه السلاح  
				end -- اغلاق للتحقق
			end -- إغلاق للتحقق حق انه لا يساوي سالب واحد
		end -- إغلاق لتحقق من الزر المضغوط
	end -- إغلاق للوظيفة المنفذة عند حصول الحدث
) -- ونغلق القوس

والسيرفر انت سويه كإختبار لنفسك : )
وسويت شرح مفصل وأتمنى يفيدك

  • Like 1
  • Thanks 1
Link to comment
43 minutes ago, iMr.WiFi..! said:

 

ي أخوان هو طلب شرح نظام الجريد ليست بإختصار مو تعطونه فنكشنات ._.
==

 

وعليكم السلام

طبعاً بنستعين بهالفنشكنات عشان نسوي جريد ليست مرتبط بالزر , ..
 

أولاً عندنا جريد ليست وفيه 2 كولمن 
السعر والسلاح .

 


local gridList = guiCreateGridList ( 0.80, 0.10, 0.15, 0.60, true ) -- نصنع جريد ليست :
local name = guiGridListAddColumn( playerList, "Weapon", 0.85 ) --  نصنع عامود بإسم 'السلاح' في الجريد ليست 
local price = guiGridListAddColumn( playerList, "Price", 0.85 ) --  نصنع عامود بإسم 'سعر' في الجريد ليست 
local button = guiCreateButton ( 0.80, 0.18, 0.5, 0.5, "Take weapon", true )
local Table = { -- نصنع جدول عشان القيم الي بتكون في الجدول
	{ name = "AK-47", price = 5000, id = 30 }, -- القيمة الاولى بتكون جدول فيه قيم فيها اسم السلاح والسعر والأيدي حقه .
	{ name = "M4", price = 4500, id = 31 }
}

for Index, Value in ipairs ( Table ) do -- نمر على كل قيمة بجدول الي نشأناه
	local row = guiGridListAddRow ( gridList ) -- نصنع صف جديد
	guiGridListSetItemText ( gridList,  row, name, Value["name"],                 false,             false )
----                         صعب ينشرح بنسبة لمبتدئ  هل تبيه غير قابل للتحديد       اسم الصف        الكولمن  الصف  الجريد ليست        
---- يستخدم لتسمية الصف 
	guiGridListSetItemText ( gridList, row, price, Value["price"], false, false )
	guiGridListSetItemData ( gridList,  row,                Value["id"] )
----                          القيمة الي تبي تحطها كداتا على الصف  الصف  الجريد ليست
  ---- يستخدم لوضع الداتا على الصف
end

addEventHandler ( "onClientGUIClick", root, -- نصنع حدث عند ضغط على زر من نوع الجيو
	function ( ) -- ننفذ هذي الوظيفة لو صار هذا الحدث
		if source == button then -- نتحقق انه الزر الي تم ضغطه هو نفس الزر الي معنا
			local selected = guiGridListGetSelectedItem ( gridList ) -- نجيب القيمة المحددة
			if selected ~= -1 then -- -1 يعني لايوجد قيمة محددة
			-- فهنا سوينا انه مايساوي سالب واحد
				local name = guiGridListGetItemText ( gridList, selected, name ) -- نجيب أسم السلاح الي تم تحديده
				local price = guiGridListGetItemText ( gridList, selected, price ) -- وسعره
				local id = guiGridListGetItemData ( gridList, selected ) -- ونجيب الداتا حقه الي فيها الأيدي
        		if getPlayerMoney ( ) >= tonumber(price) then  -- نتحقق انه معه فلوس أكثر من السعر او نفس السعر
					triggerServerEvent ( "Give:Weapon", localPlayer ) -- نرسل ترايقر للسيرفر عشان يعطيه السلاح  
				end -- اغلاق للتحقق
			end -- إغلاق للتحقق حق انه لا يساوي سالب واحد
		end -- إغلاق لتحقق من الزر المضغوط
	end -- إغلاق للوظيفة المنفذة عند حصول الحدث
) -- ونغلق القوس

والسيرفر انت سويه كإختبار لنفسك : )
وسويت شرح مفصل وأتمنى يفيدك


 
guiGridListSetItemData ( element gridList, int rowIndex, int columnIndex, var data )
guiGridListGetItemData ( element gridList, int rowIndex, int columnIndex )

 

Edited by Some*1
Link to comment

 

34 minutes ago, Some*1 said:


 

guiGridListSetItemData ( element gridList, int rowIndex, int columnIndex, var data )
guiGridListGetItemData ( element gridList, int rowIndex, int columnIndex )

 

وكالعادة أنسى التفاصيل البسيطة , تشكر على التذكير :

1 hour ago, iMr.WiFi..! said:

 

ي أخوان هو طلب شرح نظام الجريد ليست بإختصار مو تعطونه فنكشنات ._.
==

 

وعليكم السلام

طبعاً بنستعين بهالفنشكنات عشان نسوي جريد ليست مرتبط بالزر , ..
 

أولاً عندنا جريد ليست وفيه 2 كولمن 
السعر والسلاح .

 


local gridList = guiCreateGridList ( 0.80, 0.10, 0.15, 0.60, true ) -- نصنع جريد ليست :
local name = guiGridListAddColumn( playerList, "Weapon", 0.85 ) --  نصنع عامود بإسم 'السلاح' في الجريد ليست 
local price = guiGridListAddColumn( playerList, "Price", 0.85 ) --  نصنع عامود بإسم 'سعر' في الجريد ليست 
local button = guiCreateButton ( 0.80, 0.18, 0.5, 0.5, "Take weapon", true )
local Table = { -- نصنع جدول عشان القيم الي بتكون في الجدول
	{ name = "AK-47", price = 5000, id = 30 }, -- القيمة الاولى بتكون جدول فيه قيم فيها اسم السلاح والسعر والأيدي حقه .
	{ name = "M4", price = 4500, id = 31 }
}

for Index, Value in ipairs ( Table ) do -- نمر على كل قيمة بجدول الي نشأناه
	local row = guiGridListAddRow ( gridList ) -- نصنع صف جديد
	guiGridListSetItemText ( gridList,  row, name, Value["name"],                 false,             false )
----                         صعب ينشرح بنسبة لمبتدئ  هل تبيه غير قابل للتحديد       اسم الصف        الكولمن  الصف  الجريد ليست        
---- يستخدم لتسمية الصف 
	guiGridListSetItemText ( gridList, row, price, Value["price"], false, false )
	guiGridListSetItemData ( gridList,  row,                Value["id"] )
----                          القيمة الي تبي تحطها كداتا على الصف  الصف  الجريد ليست
  ---- يستخدم لوضع الداتا على الصف
end

addEventHandler ( "onClientGUIClick", root, -- نصنع حدث عند ضغط على زر من نوع الجيو
	function ( ) -- ننفذ هذي الوظيفة لو صار هذا الحدث
		if source == button then -- نتحقق انه الزر الي تم ضغطه هو نفس الزر الي معنا
			local selected = guiGridListGetSelectedItem ( gridList ) -- نجيب القيمة المحددة
			if selected ~= -1 then -- -1 يعني لايوجد قيمة محددة
			-- فهنا سوينا انه مايساوي سالب واحد
				local name = guiGridListGetItemText ( gridList, selected, name ) -- نجيب أسم السلاح الي تم تحديده
				local price = guiGridListGetItemText ( gridList, selected, price ) -- وسعره
				local id = guiGridListGetItemData ( gridList, selected ) -- ونجيب الداتا حقه الي فيها الأيدي
        		if getPlayerMoney ( ) >= tonumber(price) then  -- نتحقق انه معه فلوس أكثر من السعر او نفس السعر
					triggerServerEvent ( "Give:Weapon", localPlayer ) -- نرسل ترايقر للسيرفر عشان يعطيه السلاح  
				end -- اغلاق للتحقق
			end -- إغلاق للتحقق حق انه لا يساوي سالب واحد
		end -- إغلاق لتحقق من الزر المضغوط
	end -- إغلاق للوظيفة المنفذة عند حصول الحدث
) -- ونغلق القوس

والسيرفر انت سويه كإختبار لنفسك : )
وسويت شرح مفصل وأتمنى يفيدك

أتمنى التعديل الكود الى :
 

 
local gridList = guiCreateGridList ( 0.80, 0.10, 0.15, 0.60, true ) -- نصنع جريد ليست :
local name = guiGridListAddColumn( playerList, "Weapon", 0.85 ) --  نصنع عامود بإسم 'السلاح' في الجريد ليست 
local price = guiGridListAddColumn( playerList, "Price", 0.85 ) --  نصنع عامود بإسم 'سعر' في الجريد ليست 
local button = guiCreateButton ( 0.80, 0.18, 0.5, 0.5, "Take weapon", true )
local Table = { -- نصنع جدول عشان القيم الي بتكون في الجدول
	{ name = "AK-47", price = 5000, id = 30 }, -- القيمة الاولى بتكون جدول فيه قيم فيها اسم السلاح والسعر والأيدي حقه .
	{ name = "M4", price = 4500, id = 31 }
}

for Index, Value in ipairs ( Table ) do -- نمر على كل قيمة بجدول الي نشأناه
	local row = guiGridListAddRow ( gridList ) -- نصنع صف جديد
	guiGridListSetItemText ( gridList,  row, name, Value["name"],                 false,             false )
----                         صعب ينشرح بنسبة لمبتدئ  هل تبيه غير قابل للتحديد       اسم الصف        الكولمن  الصف  الجريد ليست        
---- يستخدم لتسمية الصف 
	guiGridListSetItemText ( gridList, row, price, Value["price"], false, false )
	guiGridListSetItemData (    gridList,    row,   name,                 Value["id"] )
----                       		القيمة الي تبي تحطها على الصف      العامود  والصف والجريد ليست
  ---- يستخدم لوضع الداتا على الصف
end

addEventHandler ( "onClientGUIClick", root, -- نصنع حدث عند ضغط على زر من نوع الجيو
	function ( ) -- ننفذ هذي الوظيفة لو صار هذا الحدث
		if source == button then -- نتحقق انه الزر الي تم ضغطه هو نفس الزر الي معنا
			local selected = guiGridListGetSelectedItem ( gridList ) -- نجيب القيمة المحددة
			if selected ~= -1 then -- -1 يعني لايوجد قيمة محددة
			-- فهنا سوينا انه مايساوي سالب واحد
				local name = guiGridListGetItemText ( gridList, selected, name ) -- نجيب أسم السلاح الي تم تحديده
				local price = guiGridListGetItemText ( gridList, selected, price ) -- وسعره
				local id = guiGridListGetItemData ( gridList, selected ) -- ونجيب الداتا حقه الي فيها الأيدي
        		if getPlayerMoney ( ) >= tonumber(price) then  -- نتحقق انه معه فلوس أكثر من السعر او نفس السعر
					triggerServerEvent ( "Give:Weapon", localPlayer ) -- نرسل ترايقر للسيرفر عشان يعطيه السلاح  
				end -- اغلاق للتحقق
			end -- إغلاق للتحقق حق انه لا يساوي سالب واحد
		end -- إغلاق لتحقق من الزر المضغوط
	end -- إغلاق للوظيفة المنفذة عند حصول الحدث
) -- ونغلق القوس

 

Link to comment
13 hours ago, ~Mr.Hassan said:

اول شي شكرا على تعبك

 

ثانيا في طريقة اسهل ؟؟

عحسب ظني مأعتقد في أسهل من هالطريقة 
غير انك تستعمل طريقة متعبة وإذا كانت القيم كثيرة بتكون متعبة أكثر ء :

وهذي هي الطريقة الآخرى :
 

for i=1, 2 do
	local row = guiGridListAddRow ( gridList )
end
guiGridListSetItemText ( gridList,  0, 1, "Ak-47",false,false )
guiGridListSetItemText ( gridList, 0, 2, "5000", false, false )
guiGridListSetItemData (gridList,0,1,30 )
guiGridListSetItemText ( gridList,  1, 1, "M4",false,false )
guiGridListSetItemText ( gridList, 1, 2, "4500", false, false )
guiGridListSetItemData (gridList,1,1,31 )

 

Link to comment

ليش رو ما يظهر ؟

 

يقلي Bad Argument 

 

local Table = { 
	{ name = "11", price = 100000 },
	{ name = "111", price = 100000 },
	{ name = "B111", price = 100000 },
	{ name = "2222", price = 100000 },
	{ name = "33333", price = 100000 },
}
for Index, Value in ipairs ( Table ) do 
	local row = guiGridListAddRow ( gridList ) 
	guiGridListSetItemText ( GUIEditor.gridlist[1],  row, name, Value["name"], false,false )     
	guiGridListSetItemText ( GUIEditor.gridlist[1], row, price, Value["price"], false, false )
end

 

Link to comment
19 minutes ago, ~Mr.Hassan said:

ليش رو ما يظهر ؟

 

يقلي Bad Argument 

 


local Table = { 
	{ name = "11", price = 100000 },
	{ name = "111", price = 100000 },
	{ name = "B111", price = 100000 },
	{ name = "2222", price = 100000 },
	{ name = "33333", price = 100000 },
}
for Index, Value in ipairs ( Table ) do 
	local row = guiGridListAddRow ( gridList ) 
	guiGridListSetItemText ( GUIEditor.gridlist[1],  row, name, Value["name"], false,false )     
	guiGridListSetItemText ( GUIEditor.gridlist[1], row, price, Value["price"], false, false )
end

 

أتمنى تعرض الديبق بالتفصيل عشان اقدر إساعدك : )

Link to comment

جرب :

local Table = {
    {name = '11', price = 100000},
    {name = '111', price = 100000},
    {name = 'B111', price = 100000},
    {name = '2222', price = 100000},
    {name = '33333', price = 100000},
};

for _, value in ipairs(Table) do 
    local row = guiGridListAddRow(GUIEditor.gridlist[1]);
    guiGridListSetItemText(GUIEditor.gridlist[1], row, 1, value['name'] or 'None', false, false)     
    guiGridListSetItemText(GUIEditor.gridlist[1], row, 2, tostring(value['price'] or 0), false, false)
end

واذا ماضبط اطرح اكوادك

Edited by #,+( _xiRoc[K]; >
Link to comment
21 minutes ago, ~Mr.Hassan said:

اخي ما ضبط تعرف اي موضوع يشرحه بتفصيل بدي اعمله على setpedstat

 

 

أما تحاول تفهم لغة ال يو ايه ,
وتتعلم على ذا او تحاول تفهم شرحي لأن مافي شرح تفصيلي لهذي الوظائف .

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...