AR/Math: Difference between revisions
Holy Quran (talk | contribs) |
Holy Quran (talk | contribs) (→مثال) |
||
Line 85: | Line 85: | ||
-- By : The Best</syntaxhighlight> </section> | -- By : The Best</syntaxhighlight> </section> | ||
== math.round == | == math.round == |
Revision as of 13:45, 26 July 2013
بسم الله الرحمن الرحيم
math.abs
يستخدم للقيمة المطلقة للعدد بحيث عند كتابة عدد سالب يقوم الحدث بتحويله ليصبح موجب
Syntax
float/int math.abs(number)
Required Arguments
number = الرقم الذي تريد ان تحوله الى موجب
Example
هذا المثال يقوم بتحويل العدد الى رقم موجب في الردار
myElegy = createVehicle(562, 1591.596680, -2495.323242, 18.098244) local x,y,z = getElementPosition(myElegy) grX = math.abs(math.random(-30,1) grY = math.abs(math.random(-30,1) areaID = createRadarArea(x,y, grX, grY, 0, 0, 0, 0)
___________________________________________________________________
math.ceil
يستخدم لتقريب العدد العشري الى عدد صحيح الاعلى منه بحيث عند كتابة عدد عشري يقوم الحدث بحذف الفاصلة العشرية والاعداد العشرية وتقريبه الى العدد الصحيح الاكبر منه
تركيب الكود
float/int math.ceil(number)
المفردات
- number = الرقم الذي تريد تقريبه الى العدد الصحيح الاكبر
مثال
myElegy = createVehicle(562, 1591.596680, -2495.323242, 18.098244) local x,y,z = getElementPosition(myElegy) grX = math.ceil(math.random(1.235,100.4575)) grY = math.ceil(math.random(1.235,100.4575)) areaID = createRadarArea(x,y, grX, grY, 0, 0, 0, 0)
___________________________________________________________________
math.floor
يستخدم لتقريب العدد العشري وحذف العدد العشري الذي بعد الفاصله
تركيب الكود
float/int math.floor(number)
المفردات
- number = العدد الذي تريد ان تقربه وتحذف الفاصله
مثال
addCommandHandler('Health', -- امر من اف8 function(player,_,who) -- وظيفه if who then -- تحقق local ThePlayer = getPlayerFromName(who) -- نحظر اسم اللاعب local Health = math.floor(getElementHealth(ThePlayer)) -- نحظر صحه اللاعب (الدم) مع حذف الارقام بعد الفاصله outputChatBox('* His Health : '..Health,player,255,255,255,true) -- نخرج نص الى الشات end -- اغلاق end -- اغلاق ) -- اغلاق -- By : The Best
math.round
تستخدم للتقريب لأكبر او اصغر عدد صحيح بحيث لو كان العدد اصغر من 5 سيتم حذف الفاصله ووضع نفس الرقم , اما اذا كان العدد الذي بعد الفاصله 5 او اكبر فسوف يعطيه قيمه كبرى
float/int math.round(number)
-- .ملاحظة : الكود ما راح يشتغل بدون هذه الوظيفه function math.round(number, decimals, method) decimals = decimals or 0 local factor = 10 ^ decimals if (method == "ceil" or method == "floor") then return math[method](number * factor) / factor else return tonumber(("%."..decimals.."f"):format(number)) end end -- : المثال local Number = 10.5 -- متغير مع قيمه addCommandHandler('Round', -- امر من اف8 function(player) -- وظيفه outputChatBox('* The Number : '..math.round(tonumber(Number)),player,255,255,255,true) -- نص في الشات end -- اغلاق ) -- اغلاق -- 11 الناتج راح يكون -- لأن العدد الذي بعد الفاصله 5 او اكبر -- لو كان العدد 10.4 راح يكون الناتج 10 -- By : The Best
___________________________________________________________________
math.mod
هذا الحدث يستخدم لتحديد باقي القسمة بحيث عند كتابة عددين يقوم الحدث بايجاد باقي القسم بين العدد المقسوم والعدد المقسوم عليه
float/int math.mod(number)
--
___________________________________________________________________
math.sqrt
هذا الحدث يستخدم لحساب الجذر التربيعي بحيث عند كتابة عدد يقوم الحدث بحساب الجذر التربيعي للعدد
float/int math.sqrt(number)
-- ملاحظة : الحساب يكون بالجذر التربيعي للعدد -- مثال -- math.sqrt(100) -- نحدد قيمه الجذر 10 -- الناتج -- مثال آخر -- math.sqrt(10000) -- نحدد قيمة الجذر 100 -- الناتج -- مثال على كود -- -- كلينت Health = guiCreateButton(131,163,113,46,"Give me health",false) -- نسوي زر addEventHandler("onClientGUIClick",Health, -- اذا ضغط على الزر function() -- وظيفة triggerServerEvent("Health",localPlayer) -- نرسل الوظيفة للسيرفر end,false) -- اغلاق -- سيرفر addEvent("Health",true) -- نحظر الوظيفة من الكلينت addEventHandler("Health",root, -- نحظر الوظيفة من الكلينت function() -- وظيفة if (getElementHealth(source) <= 30 ) then -- نتحقق ان دم اللاعب يساوي 30 او اقل setElementHealth(source,math.sqrt(10000)) -- اعطاء دم للجذر التربيعي 10000 end -- اغلاق end) -- اغلاق -- هنا راح يعطي اللاعب دم على حسب الجذر التربيعي للـ10000 -- الجذر التربيعي لـ10000 = 100 -- By : The Best
___________________________________________________________________
math.pow
هذه الداله تستخدم لحساب الاسس بحيث عند كتابة العدد الاول الاساس وعدد أخر الاس يقوم الحدث بحساب الاسس
float/int math.pow(number)
[lua-- ]عملية الحساب تكون بالضرب math.pow(9,9) -- نضرب الاسس 3.8742048 -- الناتج -- مثال آخر -- math.pow(6,7) -- نضرب الاسس 279936 -- الناتج -- عملية الضرب كالتالي : -- اول مثال الناتج 90 -- نضرب 9 في نفسها 9 مرات : -- 9×9×9×9×9×9×9×9×9 = 3.8742048 -- المثال الثاني : -- نضرب 6 في نفسها 7 مرات : -- 6×6×6×6×6×6×6 = 279936 -- مثال على كود -- addEventHandler("onResourceStart",resourceRoot, -- اذا تم تشغيل السكربت function() -- وظيفة for _,Player in pairs ( getElementsByType ( "player" ) ) do -- تحديد النوع وهم جميع اللاعبين if (getPlayerMoney(Player) >= 50 ) then -- نتحقق ان فلوس اللاعب تساوي 50 او اكثر givePlayerMoney(Player,math.pow(9,4)) -- نعطي اللاعب فلوس على حسب ضرب الاسس end -- اغلاق end -- اغلاق end) -- اغلاق -- الفلوس الي راح يعطيها اللاعب هي 6561 -- نتيجه للضرب 9×9×9×9 = 6561 -- By : The Best
___________________________________________________________________
math.random
هذه الداله تستخدم لكي تظهر رقم عشوائي بحيث عند كتابة العدد الاول والعدد الثاني يقوم الحدث باظهار رقم عشوائي بين الرقمين التي ادخلتها
float/int math.random(number)
addEventHandler("onResourceStart",resourceRoot, -- اذا تم تشغيل السكربت function() -- وظيفه Height = math.random(50,100) -- رقم عشوائي لإرتفاع الماء setWaveHeight(Height) -- نربط ارتفاع الماء بالرقم العشوائي end) -- اغلاق -- مثال آخر -- addEventHandler("onResourceStart",resurceRoot, -- اذا تم تشغيل السكربت function() -- وظيفه for _,Player in ipairs ( getElementType ( "player" ) ) do -- نحدد النوع وهو اللاعب if getPlayerMoney ( Player ) >= 100 then -- اذا اللاعب عنده 100 او اكثر givePlayerMoney(Player, math.random(50,100)) -- يعطيه رقم عشوائي مابين 50 و 100 end -- اغلاق end -- اغلاق end) -- اغلاق -- مثال آخر -- function() -- وظيفة if getElementHealth(source) <= 50 then -- اذا كانت الطاقة تساوي 50 او اقل setElementHealth(source,math.random(10,20)) -- يعطي اللاعب طاقة مابين 10 و 20 end -- اغلاق end -- اغلاق -- By : The Best
___________________________________________________________________
math.randomseed
هذا الحدث يستخدم لكي يظهر رقم عشوائي ثابت بحيث عند كتابة عدد يقوم الحدث باظهار رقم عشوائي ثابت بين رقمين مثل (100-9999) ولن يتغير هذا الرقم العشوائي ابداً ولتغيره يجب تغير العدد المدخل في البداية
float/int math.randomseed(number)
--
___________________________________________________________________
math.HexToNumber
هذا الحدث يستخدم لتحويل الارقام من النظام السادس عشر (Hex) الى النظام العشري (Dec)بحيث عند كتابة عدد Hex يقوم الحدث بتحويله الى عدد Dec معلومة : ارقام Hex هي (0 ، 1 ، 2، 3 ،4 ،5 ، 6، 7 ،8 ، 9 ، F ،E ،D ،C ،B ، A ) ارقام Dec هي (0 ، 1 ، 2، 3 ،4 ،5 ، 6، 7 ،8 ، 9 )
float/int math.HexToNumber(number)
--
___________________________________________________________________
math.rad
هذا الحدث يستخدم لتحويل قياس الزاوية من راديان الى درجة بحيث عند كتابة الزاوية بالراديان يعمل الحدث بتحويله الى درجة
float/int math.rad(number)
--
math.HexColorToNumber
هذا الحدث يستخدم لتحويل رقم اللون من هيكس الى ديكس بحيث عند كتابة رقم هيكس يعمل الحدث بتحويله الى ديكس
float/int math.HexColorToNumber(number)
--
math.deg
هذا الحدث يستخدم لتحويل قياس الزاوية من درجة الى راديان بحيث عند كتابة درجة الزاوية يقوم الحدث Math.Rad بتحويله الى راديان
معلومة:
راديان :هي وحدة قياس الزوايا الرسمية المعتمدة ضمن مجموعة الوحدات القياسية المستخدمة في الرياضيات و الفيزياء و تعرف بأنها الزاوية المركزية المتوضعة على مركز الدائرة و التي تحدد قوسا طولها مساوي لنصف قطر الدائرة. كيف نحسب الراديان للتحويل من راديان إلى درجات نضرب الراديان في 180 ونقسم الحاصل على ( باي ) وللتحويل من الدرجات إلى راديان نضرب الدرجات في ( باي ) ونقسم الحاصل على 180
float/int math.deg(number)
--
math.RGBToNumber
هذا الحدث يستخدم لتحويل رقم الالوان الاساسية الاحمر والاخضر والازرق من Hex الى Dec بحيث عند كتابة ارقام ثلاثة الالوان يعمل الحدث Math.RGBToNumber بتحويله الى Dex
float/int math.RGBToNumber(number)
--
math.sin
هذا الحدث يستخدم لحساب جيب الزاوية (جا) بحيث عند كتابة قياس الزاوية يعمل الحدث Math.Sin بحساب جيب الزاوية
ملاحظة : يجب قبل حساب جا تحويل قياس الزاوية الى راديان بالحدث Math.Rad
float/int math.sin(number)
--
math.cos
هذا الحدث يستخدم لحساب جيب تمام الزاوية (جتا) بحيث عند كتابة قياس الزاوية يعمل الحدث بحساب جيب الزاوية
float/int math.cos(number)
--
math.tan
هذا الحدث يستخدم لحساب ظل الزاوية (ظا) بحيث عند كتابة قياس الزاوية يعمل الحدث بحساب ظل الزاوية
float/int math.tan(number)
--
math.asin
هذا الحدث يستخدم لحساب معكوس جا بحيث عند كتابة العدد يعمل الحدث بحساب معكوس جا الزاوية
float/int math.asin (number)
--
math.acos
هذا الحدث يستخدم لحساب معكوس جتا بحيث عند كتابة العدد يعمل الحدث بحساب معكوس جتا الزاوية
float/int math.acos (number)
--
___________________________________________________________________
math.atan
هذا الحدث يستخدم لحساب معكوس ظا بحيث عند كتابة العدد يعمل الحدث على حساب معكوس ظا الزاوية
float/int math.atan(number)
--
___________________________________________________________________
math.atan2
هذا الحدث يستخدم لحساب مقسوم معكوس ظا بحيث عند كتابة العدد الاول والثاني يعمل الحدث Math.Atan2 على حساب معكوس ظا (العدد الاول / العدد الثاني)
float/int math.atan2(number)
--
math.max
هذا الحدث يستخدم لتحديد العدد الاكبر من الاخر بحيث عند كتابة عددين يقوم الحدث بمقارنة العددين وتحديد العدد الاكبر
float/int math.max(number1,number2,number...)
math.max(15, -100, 30) -- نحدد القيم المراد الاختيار منها 30 -- الناتج math.max(2.5, -2.5) 2.5 -- النتاج ملاحظة : السالب تكون قيمته صغيرة -- By The Best
math.min
هذا الحدث يستخدم لتحديد العددالاصغر من الاخر بحيث عند كتابة عددين يقوم الحدث بمقارنة العددين وتحديد العدد الاصغر
float/int math.min(number1,number2,number...)
addEventHandler("onResourceStart",resourceRoot, -- اذا تم تشغيل السكربت function() -- وظيفة outputChatBox("The number is "..math.min(10,-20).." is good") -- نظهر نص في الشات end) -- اغلاق -- الرقم الي بيظهر في الشات هو -20 -- ملاحظة السالب اصغر من الموجب -- By The Best