Jump to content

استفسارات عن البرمجة


Recommended Posts

طيب عطني مثال عليها واشرحه ..

:roll:

لان انا عارف كيف لكن ابي كيف القياسات احطها

# شف الصراحة هذي تكون صعبة لأنها لو قسمت او ضربت ما تنفع بتتغير الأحداثيات

# بس بعطيكـ مثـأل وششفهه انت

local ZA7F = { guiGetScreenSize( ) }
local w, h = W, h
local x, y = ( ZA7F[1] - w ) / 2, ( ZA7F[2] - h ) / 2

وتقدر تختصصرها ..

local x,y = guiGetScreenSize()
guiCreateWindow((x-210)/2,(y-252)/2, 314, 290, "Test", false)

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

............................................................................................

GetVehicleSirenParams 

-- وش فايدتهه ؟

**getVehicleSirenParams **

Client and Server function

This function get the parameters of a vehicles siren.

Syntax :

table getVehicleSirenParams ( vehicle theVehicle )

Required Arguments :

theVehicle: The vehicle to get the siren parameters of

Returns :

Returns a table with the siren count, siren type and a sub table for the four flags. False otherwise. 
[int]   SirenParams.SirenCount
[int]   SirenParams.SirenType
[table] SirenParams.Flags
 [bool] SirenParams.Flags["360"]
 [bool] SirenParams.Flags.DoLOSCheck
 [bool] SirenParams.Flags.UseRandomiser
 [bool] SirenParams.Flags.Silent

... -- مههم ذذ

# اول شي اقرأ كل اللي فوق عشان تفهمه كويس وتعرفه وتعرف انوأع الأنذأرأت

# الفنكشن ذا بـ اختصصأر يجيب لكـ انذار السيارة

# ممكن تكون مسويهه عبر فنشكن setVehicleSirens Or addVehicleSirens

# صراحة الفنكششن ما قد جربته , وما اعرف كثير له , شف مثـأل الويكي

addEventHandler("onVehicleEnter",root,function(player,seat)
   if(player)and(seat==0)then
      addVehicleSirens(source,1,1)
      setVehicleSirens(source,1,0,0,0,100,0,100,255,122)
      bindKey(player,"g","up",getSiren,source)
   end
end)
 
function getSiren(player,button,state,vehicle)
   local sirenParams = getVehicleSirenParams(vehicle)
   outputChatBox("Here's the parameters of your vehicle sirens: Siren Points: "..tostring(sirenParams.SirenCount)..", Type of Siren: "..tostring(sirenParams.SirenType)..".",player)
end
 
addEventHandler("onVehicleExit",root,function(player,seat)
   if(player)and(seat==0)then
      removeVehicleSirens(source)
      unbindKey(player,"g","up",getSiren)
   end
end)

# ومأ ادري من وين جبته خخخ , الواحد يسسأل على فنكشن يسستفيد منه مو اي شي ذذ

Link to comment
طيب عطني مثال عليها واشرحه ..
:roll:

لان انا عارف كيف لكن ابي كيف القياسات احطها

# شف الصراحة هذي تكون صعبة لأنها لو قسمت او ضربت ما تنفع بتتغير الأحداثيات

# بس بعطيكـ مثـأل وششفهه انت

local ZA7F = { guiGetScreenSize( ) }
local w, h = W, h
local x, y = ( ZA7F[1] - w ) / 2, ( ZA7F[2] - h ) / 2

وتقدر تختصصرها ..

local x,y = guiGetScreenSize()
guiCreateWindow((x-210)/2,(y-252)/2, 314, 290, "Test", false)

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

............................................................................................

GetVehicleSirenParams 

-- وش فايدتهه ؟

**getVehicleSirenParams **

Client and Server function

This function get the parameters of a vehicles siren.

Syntax :

table getVehicleSirenParams ( vehicle theVehicle )

Required Arguments :

theVehicle: The vehicle to get the siren parameters of

Returns :

Returns a table with the siren count, siren type and a sub table for the four flags. False otherwise. 
[int]   SirenParams.SirenCount
[int]   SirenParams.SirenType
[table] SirenParams.Flags
 [bool] SirenParams.Flags["360"]
 [bool] SirenParams.Flags.DoLOSCheck
 [bool] SirenParams.Flags.UseRandomiser
 [bool] SirenParams.Flags.Silent

... -- مههم ذذ

# اول شي اقرأ كل اللي فوق عشان تفهمه كويس وتعرفه وتعرف انوأع الأنذأرأت

# الفنكشن ذا بـ اختصصأر يجيب لكـ انذار السيارة

# ممكن تكون مسويهه عبر فنشكن setVehicleSirens Or addVehicleSirens

# صراحة الفنكششن ما قد جربته , وما اعرف كثير له , شف مثـأل الويكي

addEventHandler("onVehicleEnter",root,function(player,seat)
   if(player)and(seat==0)then
      addVehicleSirens(source,1,1)
      setVehicleSirens(source,1,0,0,0,100,0,100,255,122)
      bindKey(player,"g","up",getSiren,source)
   end
end)
 
function getSiren(player,button,state,vehicle)
   local sirenParams = getVehicleSirenParams(vehicle)
   outputChatBox("Here's the parameters of your vehicle sirens: Siren Points: "..tostring(sirenParams.SirenCount)..", Type of Siren: "..tostring(sirenParams.SirenType)..".",player)
end
 
addEventHandler("onVehicleExit",root,function(player,seat)
   if(player)and(seat==0)then
      removeVehicleSirens(source)
      unbindKey(player,"g","up",getSiren)
   end
end)

# ومأ ادري من وين جبته خخخ , الواحد يسسأل على فنكشن يسستفيد منه مو اي شي ذذ

ههههه ذا لي ايام احاول افهمه

من المثال

المهم مشكور ع شرح

Link to comment

ابي شرح مبسط عنهـ .. وش يسوي يعني .. ووش فايدته !!

math.floor < : بأختصصأر يشيل لك الفاصصلة من العدد الـنسبي ..

# يعني عندكـ رقم تبي تشيل الفاصصلة منه تستخدم الفنكشن ذا

+ https://forum.multitheftauto.com/viewtopic.php?f ... math.floor

# مثلأ تبي تجيب دم اللأعب .. وتبيه رقم صحيح يعني ما فيه فاصلة واللاعب ممكن يكون دمه 70.6 كيف اجيبه بدون الفاصصلة

Label = guiCreateLabel ( .... ) 
  
addEventHandler("onClientRender",root,function( ) 
     local ZA7F = math.floor(getElementHealth(localPlayer))  
    guiSetText ( Label, ZA7F.."%" ) 
   end 
) 
Link to comment
  • 3 weeks later...

ممكن شرح لـ

  
split 
string.byte 
  

يعطيك الف الف عافية

# الصراحة استخدأمي لها نأدر جدا وما اعرف كثير لها , فـ انتظر ذا بيست ممكن يشرحها لكـ split بالنسسبة لـ

string.byte -- هذأ الفنشكن يسستخخدمـ لـ تحويل من سلسلة نصيةة الى رموز الأحرف

# الححين بتقول وش رموز الأحرف ؟ , . !

# باللعبة او النظظام يعني في لكل حرف رمز هو يحول لك الحرف للرمز حقهه .

https://wiki.multitheftauto.com/wiki/ASCII

مثثأل بسيط :

addEventHandler( "onResourceStart", resourceRoot, function ( )
 ZA7F = "AboShanab"
 ZA7F:byte( 7, 4 );
end ) ;
 

# _ هذي تقدر تستخدم المتغير مع الدألةة ., ZA7F:byte اعتقد مثأل سطرين وبسسيطـ , الحين تستغرب انت كيف مسوي

# 110 , 83 : النتيججة بتكون كذا

# وطبعا عطيتك مثأل يعني كيف تستخدمه , وأنت سوهأ مخخرج شات او كذا .

Link to comment

تستخدم كـ أداة لفصل او تقسيم السترنق لعدة اجزاء بعد ما تحط الحرف الفاصل بينهم بالتأكيد, وبالاخير ترجع جدول فيه الاشياء المفصولة او المقسومة split

مثال:

local value = "120, 250, 126, 1235" 
split ( value, ", " ) -- { "120", "250", "126", "1235" } 

Link to comment

split = بإختصار تفصل لك السلسه النصيه على حسب الرمز الموجود

والرموز في هذي الصفحه,

https://wiki.multitheftauto.com/wiki/ASCII

مثال,

local Table = {"args1 ; args2 ; args3"} -- جدول 
  
addCommandHandler('split',function() -- امر 
    for k,v in ipairs(Table) do -- لوب للجدول 
        local splitt = split(v,';') -- ; نفصل السلسله النصيه على حسب الرمز وطبعا الرمز هو  
            outputChatBox(splitt[2]) -- نطلع القيمه الثانيه في الشات 
                       -- output : args2 
        end -- اغلاق 
    end -- اغلاق 
) -- اغلاق 
Link to comment
  • 2 weeks later...

string.format 

بأختصار لها عدة استخدامات تقدر تستخدمها في اشياء كثيره

مثال على واحد من استخداماتها

" " تحول لك كلمه معينه وتخليها بين علامة تنصيص زي كذا

مثال عليها

string.format("%s %q", "Hello", "Lua user!") 
 -- Hello "Lua user!" 

https://wiki.multitheftauto.com/wiki/AR/String

Link to comment

جريد ليست هو زي الستطيل تقريبا وهو يعتبر قائمه للاشياء ,

مثلا قائمه فيها اسماء السيارات او اسماء اللاعبين,والفائدة هو اختصار ,

مثال : انت تبي تسوي قائمه سيارات بدون جريد ليست راح تضطر انك تسوي نصوص تحت بعض وهذا راح ياخذ وقت,

بعكس الجريد ليست راح تختصر عليك الوقت والجهد.

Link to comment
Guest
This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...