Jump to content

سؤال خاص لي مبرمجين lua بنسبه لي مبرمج [C++]


Recommended Posts

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

اما بعد يا شباب المطورين المبرمجين الـعرب

حبيت اسالكم سؤال بسيط جدا .. انا كمبرمج بلغه C/C++

هل اقدر اتعلم الـ [ lua ]

بسرعه وبدون صعوبه ؟؟ .. لني ماعندي وقت كبير لي الاسف ووقتي كله راح في السي الخ

يعني هل ال lua 

كلها نظام تعريف وفانكشن ؟؟ .. لني بصراحه شفت كم كود من هذي الغه وواضح انها سهله

فبس حبيت بس اجي اسال بما ان في ناس لهم نظره اوسع لباقي نظام هذي الغه داخل MTA

وراي واضح انها ماهي صعبه  فلغات البرمجه خاصأ الي تستعمل في الالعاب " تكون مشتركه " في اشياء كثيره

وبسسس ..:) :)

Link to comment
4 hours ago, NmLa said:

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

اما بعد يا شباب المطورين المبرمجين الـعرب

حبيت اسالكم سؤال بسيط جدا .. انا كمبرمج بلغه C/C++

هل اقدر اتعلم الـ [ lua ]

بسرعه وبدون صعوبه ؟؟ .. لني ماعندي وقت كبير لي الاسف ووقتي كله راح في السي الخ

يعني هل ال lua 

كلها نظام تعريف وفانكشن ؟؟ .. لني بصراحه شفت كم كود من هذي الغه وواضح انها سهله

فبس حبيت بس اجي اسال بما ان في ناس لهم نظره اوسع لباقي نظام هذي الغه داخل MTA

وراي واضح انها ماهي صعبه  فلغات البرمجه خاصأ الي تستعمل في الالعاب " تكون مشتركه " في اشياء كثيره

وبسسس ..:) :)

اذا فهمك للأكواد سهل وسريع بتتعلم بسرعة
واذا كان لك خبرة للجافا راح تتعلم اسرع بكثير
ولكن بما انه C - Java

متشابهين كثيرين
بتقدر تتعلمه بسرعة بأذن الله : )

Link to comment
4 hours ago, iMr.WiFi..! said:

اذا فهمك للأكواد سهل وسريع بتتعلم بسرعة
واذا كان لك خبرة للجافا راح تتعلم اسرع بكثير
ولكن بما انه C - Java

متشابهين كثيرين
بتقدر تتعلمه بسرعة بأذن الله : )

أنشاء الله , بس اسالك هل الويكي مصدر جيد للتعلم ؟؟ 

Link to comment
27 minutes ago, #,+( _xiRoc[K]; > said:

اكيد

طيب سؤال بسيط عسريع ..

لازم اضيف الحدث بهذي الطريقه مثال في هاذا الكود

efunction onJoin()
    x, y, z = getElementPosition(source)
	    local theVehicle = createVehicle(445, x, y, z)
		    warpPedIntoVehicle(source, theVehicle)
end
addEventHandler("onPlayerLogin", root, onJoin) -- الحدث
 

ولا  بهذي الطريقه ؟

addEventHandler("onPlayerLogin",root, -- حدث تسجيل السيرفر
    function() -- الوظيفة
           x, y, z = getElementPosition(source)
	    local theVehicle = createVehicle(445, x, y, z)
		    warpPedIntoVehicle(source, theVehicle)
    end
)

ولا عادي استعمل الطريقتين ؟ , ما تجيني مشاكل ؟

30 minutes ago, #,+( _xiRoc[K]; > said:

اكيد

وسؤال ثاني .. بنسبه لي الـ Client + Server

ايش الي يميز الاثنين عن بعضهم غير ان هاذا للسيرفر الخ

يعني قصدي ادا مثلا  انا مانجر بي السيرفر وابي اسوي مود خاص ماحد يستعمله غيري انا  

في هذي الحاله استعمل الـClient ?

ولا ايش الوضع :]

Edited by NmLa
Link to comment
8 minutes ago, NmLa said:

طيب سؤال بسيط عسريع ..

لازم اضيف الحدث بهذي الطريقه مثال في هاذا الكود


efunction onJoin()
    x, y, z = getElementPosition(source)
	    local theVehicle = createVehicle(445, x, y, z)
		    warpPedIntoVehicle(source, theVehicle)
end
addEventHandler("onPlayerLogin", root, onJoin) -- الحدث

 

ولا  بهذي الطريقه ؟


addEventHandler("onPlayerLogin",root, -- حدث تسجيل السيرفر
    function() -- الوظيفة
           x, y, z = getElementPosition(source)
	    local theVehicle = createVehicle(445, x, y, z)
		    warpPedIntoVehicle(source, theVehicle)
    end
)

ولا عادي استعمل الطريقتين ؟ , ما تجيني مشاكل ؟

وسؤال ثاني .. بنسبه لي الـ Client + Server

ايش الي يميز الاثنين عن بعضهم غير ان هاذا للسيرفر الخ

يعني قصدي ادا مثلا  انا مانجر بي السيرفر وابي اسوي مود خاص ماحد يستعمله غيري انا  

في هذي الحاله استعمل الـClient ?

ولا ايش الوضع :]

 

بالنسبة للسؤال الاول الاثنين عادي مايفرق بس في المثال الاول انت حاط e زايدة في البداية

وسؤالك الثاني السيرفر سايد هو الي يتخزن على السيرفر نفسه

والكلنت تتخزن في ملفات الاعب

ادري مافهمت لكن يب

Edited by #,+( _xiRoc[K]; >
Link to comment
Just now, #,+( _xiRoc[K]; > said:

 

بالنسبة للسؤال الاول الاثنين عادي مايفرق بس في المثال الاول انت حاط e زايدة في البداية

ادري انها مشكله   e بس ماخذت بالي.. طيب وسؤالي الثاني بالله

حق CLient + server

Link to comment
4 minutes ago, #,+( _xiRoc[K]; > said:

رديت عليك فوق شوف ^

طيب في هاذي الحاله false يعني يعني السياره ما نعملت ..

if (createdVehicle == false) then
		-- لو السياره اتعملت يبقي نعمل رسالة,لكن للاعب فقط
		outputChatBox("Failed to create vehicle 0_0.",thePlayer)
	end

هل متاح في لغه الlua جمله else ?

ولا اخليها  

if (createdVehicle == true) then -- true / false
		-- لو السياره اتعملت يبقي نعمل رسالة,لكن للاعب فقط
		outputChatBox("succ to create vehicle.",thePlayer)
	end

 

Link to comment
Just now, NmLa said:

طيب في هاذي الحاله false يعني يعني السياره ما نعملت ..


if (createdVehicle == false) then
		-- لو السياره اتعملت يبقي نعمل رسالة,لكن للاعب فقط
		outputChatBox("Failed to create vehicle 0_0.",thePlayer)
	end

هل متاح في لغه الlua جمله else ?

ولا اخليها  


if (createdVehicle == true) then -- true / false
		-- لو السياره اتعملت يبقي نعمل رسالة,لكن للاعب فقط
		outputChatBox("succ to create vehicle.",thePlayer)
	end

 

ايه في else

+ thePlayer مو معرفة

+ createdVehicle مو معرفة

Link to comment
Just now, #,+( _xiRoc[K]; > said:

ايه في else

+ thePlayer مو معرفة

+ createdVehicle مو معرفة

ادري بس اعطيك مثال للجزئ هاذا بس

4 minutes ago, #,+( _xiRoc[K]; > said:

ايه في else

+ thePlayer مو معرفة

+ createdVehicle مو معرفة

جمله thePlayer 

هل اقدر استبدلها بجمله ثانيه ؟؟

ولا هيا زي source ماينفع تتغير 

function createVehicleForPlayer(thePlayer, command, vehicleModel)
	local x,y,z = getElementPosition(thePlayer) --  نأتي بمكان الاعب
	x = x + 5 -- اضافه 5 units لل x 
	
	local createdVehicle = createVehicle(tonumber(vehicleModel),x,y,z)
end

 

10 minutes ago, #,+( _xiRoc[K]; > said:

ايه في else

+ thePlayer مو معرفة

+ createdVehicle مو معرفة

ايش معني النقطتين ذول ..

outputChatBox( "Your armor: " .. armor ) -- .. ايش معني النقطتين في هذا الكود

 

14 minutes ago, #,+( _xiRoc[K]; > said:

ايه في else

+ thePlayer مو معرفة

+ createdVehicle مو معرفة

if not = نفس عمل else ?
Link to comment
52 minutes ago, NmLa said:

ادري بس اعطيك مثال للجزئ هاذا بس

جمله thePlayer 

هل اقدر استبدلها بجمله ثانيه ؟؟

ولا هيا زي source ماينفع تتغير 


function createVehicleForPlayer(thePlayer, command, vehicleModel)
	local x,y,z = getElementPosition(thePlayer) --  نأتي بمكان الاعب
	x = x + 5 -- اضافه 5 units لل x 
	
	local createdVehicle = createVehicle(tonumber(vehicleModel),x,y,z)
end

 

ايش معني النقطتين ذول ..


outputChatBox( "Your armor: " .. armor ) -- .. ايش معني النقطتين في هذا الكود

 


if not = نفس عمل else ?

الجملة يمكن استبدالها ,

نفس النقطتين زي +
يعني اذا اردت اضافة شيء مع السترنق تستعمل ..

if not == اذا ليس 
else == عكس التحقق

كمثال
 

x=5
if x == 5 then
	print ( x )
	else
	print ( "wrong" )
end
--
x = false
if not x then
	print ( "true" )
  else
  	print ( "false" )
end
--

طبعاً في حاجة بقلك اياها

التحقق راح يكمل لو !!
التحقق ينتج منه ترو او سترنق او اي شيء ماعدا الفولس

ترو = true

فولس = false

 

Link to comment
2 hours ago, iMr.WiFi..! said:

الجملة يمكن استبدالها ,

نفس النقطتين زي +
يعني اذا اردت اضافة شيء مع السترنق تستعمل ..

if not == اذا ليس 
else == عكس التحقق

كمثال
 


x=5
if x == 5 then
	print ( x )
	else
	print ( "wrong" )
end
--
x = false
if not x then
	print ( "true" )
  else
  	print ( "false" )
end
--

طبعاً في حاجة بقلك اياها

التحقق راح يكمل لو !!
التحقق ينتج منه ترو او سترنق او اي شيء ماعدا الفولس

ترو = true

فولس = false

 

طيب لازم اعرف كل شي بين قوسين الفانكشن او في Local ?

ولا عادي احطهم جوات الفانكشن واحط لهم قيم ؟

function Test(....) -- لازم اعرف x مثلا هنا ؟؟
  Local x = 0 -- لازم اعرفه كذا ايضا ؟ 
  x = 0 -- اقدر اسويه بهذي الطريقه بدون ؟؟ بدون ماحط لوكال او اعرفه بين قوسين ؟ ولا لازم اعرفه بين قوسين ؟
  end

يعني لازم اعرفهم باول طريقتين ولا عادي اكتبهم جوا الفانكشن بي القيم وبالتالي يكونو معرفين ؟

Link to comment
Just now, NmLa said:

طيب لازم اعرف كل شي بين قوسين الفانكشن او في Local ?

ولا عادي احطهم جوات الفانكشن واحط لهم قيم ؟


function Test(....) -- لازم اعرف x مثلا هنا ؟؟
  Local x = 0 -- لازم اعرفه كذا ايضا ؟ 
  x = 0 -- اقدر اسويه بهذي الطريقه بدون ؟؟ بدون ماحط لوكال او اعرفه بين قوسين ؟ ولا لازم اعرفه بين قوسين ؟
  end

يعني لازم اعرفهم باول طريقتين ولا عادي اكتبهم جوا الفانكشن بي القيم وبالتالي يكونو معرفين ؟

التعريف حسب الرغبة
يعني اذا تبي تعرفه مابين القوسين
انت وش تبي يعطيك مابين القوسين عند استعمال الفنكشنن
والتعريف مابين القوسين = هو الي حطاه مستعمل الفنكشن
==
اما اللوكال
نفس 

private
يعني تحطها اختياري
وبدون اللوكال بيتعرف القيمة للجميع
 

Link to comment
5 minutes ago, iMr.WiFi..! said:

التعريف حسب الرغبة
يعني اذا تبي تعرفه مابين القوسين
انت وش تبي يعطيك مابين القوسين عند استعمال الفنكشنن
والتعريف مابين القوسين = هو الي حطاه مستعمل الفنكشن
==
اما اللوكال
نفس 

private
يعني تحطها اختياري
وبدون اللوكال بيتعرف القيمة للجميع
 

تمام ..  بدي اسالك سؤال اقدر اسوي لوحه وادا اضيف فيها كلمه تسويلي وظيفه ؟

كانها اف8 .. 

Link to comment
1 minute ago, iMr.WiFi..! said:

"onClientKey" Or "onClientGUIClick" -- حدث عند الضغط على الزر الكيبورد او حدث عند الضغط على زر اللوحة
executeCommandHandler -- نستعمل الأمر

 

تمام

Link to comment
1 hour ago, iMr.WiFi..! said:

"onClientKey" Or "onClientGUIClick" -- حدث عند الضغط على الزر الكيبورد او حدث عند الضغط على زر اللوحة
executeCommandHandler -- نستعمل الأمر

 

شف انا سويت ملف meta + script

وفي السكربت حطيت الكود  simple code 

addEventHandler("onVehicleExplode",root, -- نضيف حدث عند إنفجار اي سيارة
    function() 
        local DestoreCar = setTimer(destroyElement,5000,1,source) -- يخفي السيارة بعد 5 ثواني من انفاجرها 
		if ( DestoreCar )
		 outputChatBox("تم اخفاء سيارتك !",source) -- رساله / msg
    end -- close
	end -- close
)

ولما اجيت السيرفر التجريبي وشغلت المود .. مايشتغل 

يجيبلي بي الشات اني شغلت المود الفلاني طبعا المعلومات مكتوبه بي meta .

لاكن لما اشغله وافجر سياره مايشتغل او يجيب لي الرساله .. وجربت اكثر من مود وجربت مود بي كومند 

مود مثلا اني اكتب جمله في اف 8 ويسوي فاكشن الخ

لاكن مش شغال + جربت اكواد نسخ لصق من الويكي عشان اتاكد نفس الموضوع

Link to comment
2 minutes ago, NmLa said:

شف انا سويت ملف meta + script

وفي السكربت حطيت الكود  simple code 


addEventHandler("onVehicleExplode",root, -- نضيف حدث عند إنفجار اي سيارة
    function() 
        local DestoreCar = setTimer(destroyElement,5000,1,source) -- يخفي السيارة بعد 5 ثواني من انفاجرها 
		if ( DestoreCar )
		 outputChatBox("تم اخفاء سيارتك !",source) -- رساله / msg
    end -- close
	end -- close
)

ولما اجيت السيرفر التجريبي وشغلت المود .. مايشتغل 

يجيبلي بي الشات اني شغلت المود الفلاني طبعا المعلومات مكتوبه بي meta .

لاكن لما اشغله وافجر سياره مايشتغل او يجيب لي الرساله .. وجربت اكثر من مود وجربت مود بي كومند 

مود مثلا اني اكتب جمله في اف 8 ويسوي فاكشن الخ

لاكن مش شغال + جربت اكواد نسخ لصق من الويكي عشان اتاكد نفس الموضوع

source == السيارة الي تفجرت
خلك واقعي شوي ي صاحبي
كيف بترسل رسالة للسيارة وتقوله تم اخفاء نفسك .؟
بدل السورس بصاحب السيارة او بالروت اي للجميع 

Link to comment
3 minutes ago, iMr.WiFi..! said:

source == السيارة الي تفجرت
خلك واقعي شوي ي صاحبي
كيف بترسل رسالة للسيارة وتقوله تم اخفاء نفسك .؟
بدل السورس بصاحب السيارة او بالروت اي للجميع 

اوك + انا عرفت ان المشكله من الكود مو من  شي ثاني

وهاذا الكود حق رساله لما اشغل السكربت واتشغل

addEventHandler("onResourceStart",resourceRoot, 
    function()
        outputChatBox("تم بدء السكربت")
    end
) 

 

8 minutes ago, iMr.WiFi..! said:

source == السيارة الي تفجرت
خلك واقعي شوي ي صاحبي
كيف بترسل رسالة للسيارة وتقوله تم اخفاء نفسك .؟
بدل السورس بصاحب السيارة او بالروت اي للجميع 

كيف ابدله بصاحب السياره ؟؟ والروت قصدك احط root ? 

لني حطيت كذا وماظبط 0_0

13 minutes ago, iMr.WiFi..! said:

source == السيارة الي تفجرت
خلك واقعي شوي ي صاحبي
كيف بترسل رسالة للسيارة وتقوله تم اخفاء نفسك .؟
بدل السورس بصاحب السيارة او بالروت اي للجميع 

لول انا اتلخبط في الويكي فكرت ان source = لاعب

و source= مصدر 

Link to comment

لكل حدث سورس معين والسورس تحصله هنا

 

http://prntscr.com/g1ggjv

مثال :

onVehicleExplode

Source

The source of this event is the vehicle that exploded.

السورس هو السيارة الي انفجرت

onResourceStart

Source

The source of this event is the root element in the resource that started.

السورس حق هالحدث يجيب الروت المنت لكل شي في المود نفسه

onPedWasted

Source

The source of this event is the ped that died or got killed.

السورس حق هالحدث هو البيد الي مات او انقتل

onPlayerLogin

Source

The source of this event is the player element that just logged in.

السورس هو الشخص الي سجل دخوله

Link to comment
10 minutes ago, #,+( _xiRoc[K]; > said:

لكل حدث سورس معين والسورس تحصله هنا

 

http://prntscr.com/g1ggjv

مثال :

onVehicleExplode

Source

The source of this event is the vehicle that exploded.

السورس هو السيارة الي انفجرت

onResourceStart

Source

The source of this event is the root element in the resource that started.

السورس حق هالحدث يجيب الروت المنت لكل شي في المود نفسه

onPedWasted

Source

The source of this event is the ped that died or got killed.

السورس حق هالحدث هو البيد الي مات او انقتل

onPlayerLogin

Source

The source of this event is the player element that just logged in.

السورس هو الشخص الي سجل دخوله

ياسلام عليك بسس .. مشكور والله

2 minutes ago, </Mr.Tn6eL> said:

!مختلفة تماما ما راح تتعلمها بيوم

تنطيل  توني قاعد اتعلمها خخخ 

بس مشكور علي الاحباط .. مسأله وقت انشاء الله  وراح اكتسحها 

ومحاوله فاشله " مره ثانيه " 

Link to comment
57 minutes ago, #,+( _xiRoc[K]; > said:

لكل حدث سورس معين والسورس تحصله هنا

 

http://prntscr.com/g1ggjv

مثال :

onVehicleExplode

Source

The source of this event is the vehicle that exploded.

السورس هو السيارة الي انفجرت

onResourceStart

Source

The source of this event is the root element in the resource that started.

السورس حق هالحدث يجيب الروت المنت لكل شي في المود نفسه

onPedWasted

Source

The source of this event is the ped that died or got killed.

السورس حق هالحدث هو البيد الي مات او انقتل

onPlayerLogin

Source

The source of this event is the player element that just logged in.

السورس هو الشخص الي سجل دخوله

طيب قد يكون هذا اخر سؤال ..

سويت كود يجيب جيت باك وخليت الشرط او التحقق ترو

== true

function consoleGiveJetPack ( thePlayer, commandName )
   if (  givePedJetPack ( thePlayer ) == true ) then            
      local StatusGive = givePedJetPack ( thePlayer ) -- get a jetpack
	  outputConsole ( "succ to give you jetpack.", thePlayer ) -- msg in console
   else
      local statusRemove = removePedJetPack ( thePlayer )        -- remove jetpack    
	  outputConsole ( "succ to remove your jetpack.", thePlayer ) -- msg in console
   end
end


addCommandHandler ( "jetpack", consoleGiveJetPack ) -- command = jetpack

لاكن 

في شي غريب .. ليش  لو خليت في التحقق  false 

مايظبط ؟؟ طيب ماهو لما احط فولس انا هيك قصدي ادا مافي جيت باك يعطيني جيت باك

والعكس في else 

هل كذا قصدك انه مايكمل لو النتيجه فولس ؟؟

ارجو توضيح اكثر 

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