Jump to content

ممكن مساعدة :) لاني مو عارف


Recommended Posts

شباب

انا توي جديد في برمجة MTA:SA

وتعلمت بعض الاشياء البسيطة جدا

لكن ارجوا منكم انكم تعلموني

انا عرفت اسوي نافذة بــGUIEDITOR

وهي كل لاعب يشتري سيارة ولما يضغط SPAWN

تجيه السيارة واخفاء تروح السيارة

وطلعت الكود وهنا بدأت الوهقة

ما عرفت كيف افتحها بزر

+ تفاجأت انه لازم اكواد Server side

Client Side

وما فهمت وش القصة بالظبط :roll::roll: د

ممكن تفهمونيي لاهنت :):D:D:D

ولكون لكم شاكر

Link to comment

لازم تسوي النافذه والازرار,

واذا ضغط زر SPAWN

يطلع له سياره واذا ضغط مثلا زر ثاني يسحبها

الاكواد الي تحتاجها,

Event : onClientGUIClick.

Functions :

triggerServerEvent -- ترسل الترايقر للسيرفر 
getPlayerMoney -- تحدد الفلوس الي مع اللاعب 
takePlayerMoney -- تسحب الفلوس من اللاعب اذا اشترى سيارة 
getElementPosition -- تجيب احداثيات اللاعب عشان تعطيه السيارة في مكانه 
createVehicle -- تعطيه السيارة 
warpPedIntoVehicle -- تخليه ينتقل في السيارة اول ما يضغط الزر اذا تبي 
destroyElement -- عشان تسحب السيارة 

+ اسم الموضوع مخالف !

+ القسم خطأ ,

Link to comment

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

:D إبدأ حبة حبة و إن شاء الله ما نقصر معاك

Link to comment

انا سويت لوحة القوانين وخليتها تفتح بزر

The Best

يعني مثلاا

هذه بالكلنت

 GUIEditor_Button[2] = guiCreateButton(0.0884,0.3935,0.8027,0.213,"Spawn",true,GUIEditor_Window[1]) 

بالسيرفر

ماني عارف ايش احط ؟

Link to comment

الوظيفه الي لونها احمر يعني كلنت والي اصفر او برتقالي تقريبا يعني سيرفر والي ازرق كلنت وسيرفر ,

امثله,

givePlayerMoney -- كلنت وسيرفر 
guiCreateButton -- كلنت فقط 
logIn -- سيرفر فقط 

Link to comment

هذا مثال على زر,

-- # Client Side :

button = guiCreateButton( 0.7, 0.1, 0.2, 0.1, "Rhino", true ) -- نسوي زر 
addEventHandler("onClientGUIClick",root, -- اذا ضغط على الزر 
function() -- نسوي وظيفه 
if (source == button ) -- نحدد العنصر الي هو الزر 
triggerServerEvent("Rhino",localPlayer) -- نرسل الزر للسيرفر 
    end -- اغلاق 
end) -- اغلاق 

-- # Server Side :

addEvent("Rhino",true) -- نجيب الترايقر من الكلنت 
addEventHandler("Rhino",root, -- نجيب الترايقر من الكنت 
function() -- وظيفه 
local x,y,z = getElementPosition ( source ) -- نحدد احداثيات اللاعب 
local Get = getPlayerMoney(source) -- نجيب فلوس اللاعب 
if Get >= 200 then -- اذا كانت الفلوس 200 واكثر 
takePlayerMoney (source,100) -- نسحب من اللاعب 100 
rhino = createVehicle ( 432, x, y, z ) -- ونعطيه سيارة 
warpPedIntoVehicle(source, rhino) -- ننقله للسيارة 
outputChatBox("* Buy was successful !",source,255,255,0,true) -- مخرج نصي للشات 
elseif playerMoney <= 50 then -- اما اذا كان اللاعب عنده 50 واقل 
outputChatBox("* Not enough money !"source,0,0,0,true) -- يطلع له خطأ (مخرج نصي في الشات) 
    end -- اغلاق 
end) -- اغلاق 

اتمنى تستفيد...~

بالتوفيق,

Edited by Guest
Link to comment

مثال اخر

client side

  
GUIEditor_Button[2] = guiCreateButton(0.0884,0.3935,0.8027,0.213,"Spawn",true)----انشاء زر 
addEventHandler("onClientGUIClick",guiRoot,--اضافة حدث اذا ضغط على اي عنصر جوي 
function ()---وظيفه 
   if source == GUIEditor_Button[2] then---GUIEditor_Button[2] اذا كان عنصر الجوي هو 
   triggerServerEvent("spawn",localPlayer)---ترايقر للسيرفر ينقله للسيرفر 
   end--- if اغلاق الشرط 
end)----اغلاق الفنكشن والحدث 
  

server side

addEvent("spawn",true)--- تفعيل اضافة الترايقر النقل الي من الكلنت 
addEventHandler("spawn",root,--اضافة الترايقر 
function ()--وظيفه 
spawnPlayer(source,x,y,z)--- x,y,zيسوي سباون للاعب لـمكان 
end)---اغلاق وظيفه + الحدث 
  

x,y,z تبدله بأحداثيات المكان

Link to comment

#~ لو أنت مبتدا لو ما تعلمت الاساسيات بتتعذب لازم الاساسيات ....

#~ https://wiki.multitheftauto.com/wiki/Cl ... _functions

#~ هذي تفيدك

#~ والويكي بششـكل عـــأم

#~ viewforum.php?f=164

وهنـــا دروس برمجة تعلم !!

addEventHandler("onClientGUIClick", root, ----- حدث يوم اللاعب يضغط  
function () 
 if source == اسم الزر then  
          setElementPosition(localPlayer,829.09533691406,850.90130615234,12.607692718506) ------ ضع الاحداثيأت  
   end  ---- أغلاق 
end)  ---- أغلاق 

الأشيأأء الي تحتاجها # كمبتدى للوحات قوانين وكذا

showCursor 
bindKey 
guiSetFont 
addEventHandler 

وأذا نسيت شي # أو عندك اسستفسأر تفضل .~<

Link to comment

شكرا لكل اللي شرحوا بس شيئ اخر

هالاكواد صحيحة ولا لا؟

#Clieny Side

outputChatBox ("F5 = افتح النافذة ",255,0,0,true) 
  
GUIEditor_Window = {} 
GUIEditor_Button = {} 
  
GUIEditor_Window[1] = guiCreateWindow(320,206,147,216,"LOL",false) 
GUIEditor_Button[1] = guiCreateButton(0.0884,0.125,0.8027,0.213,"kill",true,GUIEditor_Window[1]) 
GUIEditor_Button[2] = guiCreateButton(0.0884,0.3935,0.8027,0.213,"5$",true,GUIEditor_Window[1]) 
GUIEditor_Button[3] = guiCreateButton(0.0884,0.6759,0.8027,0.213,"creat Car",true,GUIEditor_Window[1]) 
  
GUIEditor_Button[3] = guiCreateButton( 0.7, 0.1, 0.2, 0.1, "Rhino", true ) -- نسوي زر 
addEventHandler("onClientGUIClick",root, -- اذا ضغط على الزر 
function() -- نسوي وظيفه 
if (source == GUIEditor_Button[3] ) -- نحدد العنصر الي هو الزر 
triggerServerEvent("Rhino",localPlayer) -- نرسل الزر للسيرفر 
    end -- اغلاق 
end) -- اغلاق 
  
  
    function OpenWin()   
     
    if guiGetVisible (GUIEditor_Window[1] ) == true then     
    guiSetVisible ( GUIEditor_Window[1], false )          
    showCursor(false)   
    guiSetInputEnabled(false)     
    else    guiSetVisible ( GUIEditor_Window[1], true )  
    showCursor(true)    
    guiSetInputEnabled(true)  
        end   
    end    
    bindKey("F5", "down", OpenWin) 
  

#Server side

addEvent("Rhino",true) 
addEventHandler("Rhino",root,  
function() --  
local x,y,z = getElementPosition ( source )   
local Get = getPlayerMoney(source)  
if Get >= 200 then  
takePlayerMoney (source,100)  
rhino = createVehicle ( 403, x, y, z )  
warpPedIntoVehicle(source, rhino)  
outputChatBox("* لقد اشتريت سيارة",source,255,255,0,true)  
elseif playerMoney <= 50 then  
outputChatBox("* لا تملك المال الكافي للشراء !"source,0,0,0,true)  
    end  
end)  

meta.xml

author="AlAdhm" version="1.0" type="script" />="client.lua" type="client"/>="server.lua" type="server"/>

Link to comment
    addEvent("Rhino",true) 
    addEventHandler("Rhino",root, 
    function() -- 
    local x,y,z = getElementPosition ( source )   
    local Get = getPlayerMoney(source) 
    if Get >= 200 then 
    takePlayerMoney (source,100) 
    rhino = createVehicle ( 403, x, y, z ) 
    warpPedIntoVehicle(source, rhino) 
    outputChatBox("* لقد اشتريت سيارة",source,255,255,0,true) 
    else 
    outputChatBox("* لا تملك المال الكافي للشراء !"source,0,0,0,true) 
        end 
    end)  

Link to comment
شكرا لكل اللي شرحوا بس شيئ اخر

هالاكواد صحيحة ولا لا؟

#Clieny Side

outputChatBox ("F5 = افتح النافذة ",255,0,0,true) 
  
GUIEditor_Window = {} 
GUIEditor_Button = {} 
  
GUIEditor_Window[1] = guiCreateWindow(320,206,147,216,"LOL",false) 
GUIEditor_Button[1] = guiCreateButton(0.0884,0.125,0.8027,0.213,"kill",true,GUIEditor_Window[1]) 
GUIEditor_Button[2] = guiCreateButton(0.0884,0.3935,0.8027,0.213,"5$",true,GUIEditor_Window[1]) 
GUIEditor_Button[3] = guiCreateButton(0.0884,0.6759,0.8027,0.213,"creat Car",true,GUIEditor_Window[1]) 
  
GUIEditor_Button[3] = guiCreateButton( 0.7, 0.1, 0.2, 0.1, "Rhino", true ) -- نسوي زر 
addEventHandler("onClientGUIClick",root, -- اذا ضغط على الزر 
function() -- نسوي وظيفه 
if (source == GUIEditor_Button[3] ) -- نحدد العنصر الي هو الزر 
triggerServerEvent("Rhino",localPlayer) -- نرسل الزر للسيرفر 
    end -- اغلاق 
end) -- اغلاق 
  
  
    function OpenWin()   
     
    if guiGetVisible (GUIEditor_Window[1] ) == true then     
    guiSetVisible ( GUIEditor_Window[1], false )          
    showCursor(false)   
    guiSetInputEnabled(false)     
    else    guiSetVisible ( GUIEditor_Window[1], true )  
    showCursor(true)    
    guiSetInputEnabled(true)  
        end   
    end    
    bindKey("F5", "down", OpenWin) 
  

#Server side

addEvent("Rhino",true) 
addEventHandler("Rhino",root,  
function() --  
local x,y,z = getElementPosition ( source )   
local Get = getPlayerMoney(source)  
if Get >= 200 then  
takePlayerMoney (source,100)  
rhino = createVehicle ( 403, x, y, z )  
warpPedIntoVehicle(source, rhino)  
outputChatBox("* لقد اشتريت سيارة",source,255,255,0,true)  
elseif playerMoney <= 50 then  
outputChatBox("* لا تملك المال الكافي للشراء !"source,0,0,0,true)  
    end  
end)  

meta.xml

author="AlAdhm" version="1.0" type="script" />="client.lua" type="client"/>="server.lua" type="server"/>

تمام عليكك ي بطل,

كود فتح النافذه اختصره كذآ ,

bindKey("F5","down", 
function ( ) 
        guiSetVisible(GUIEditor_window[1], not guiGetVisible(GUIEditor_window[1])) 
        showCursor(guiGetVisible(GUIEditor_window[1])) 
    end 
) 

+ في خطأ بالسيرفر في متغير غلط,

addEvent("Rhino",true) 
addEventHandler("Rhino",root,  
function() --  
local x,y,z = getElementPosition ( source )   
local Get = getPlayerMoney(source)  
if Get >= 200 then  
takePlayerMoney (source,100)  
rhino = createVehicle ( 403, x, y, z )  
warpPedIntoVehicle(source, rhino)  
outputChatBox("* لقد اشتريت سيارة",source,255,255,0,true)  
elseif Get <= 50 then  
outputChatBox("* لا تملك المال الكافي للشراء !"source,0,0,0,true)  
    end  
end)  

#'iS4MuEL, @

الكود حقه صحيح ,

هو مسوي قيمه محدد ,

يعني اذا القيمه كانت 50 او اقل , يعني مافيه خطأ -_-

Link to comment

والله تعبت ركبت هذه الاكواد وما اشتلغت ياريت توضيح لو في خطأ

#Client Side

outputChatBox ("F6 = افتح النافذة ",255,0,0,true) 
  
GUIEditor_Window = {} 
GUIEditor_Button = {} 
  
GUIEditor_Window[1] = guiCreateWindow(459,185,175,240,"سيارة",false) 
GUIEditor_Button[1] = guiCreateButton(0.0857,0.1167,0.8286,0.2917,"استدعاء سيارة 100$",true,GUIEditor_Window[1]) 
  
  
GUIEditor_Button[1] = guiCreateButton( 0.7, 0.1, 0.2, 0.1, "Rhino", true )  
addEventHandler("onClientGUIClick",root, 
function() -- نسوي وظيفه 
if (source == GUIEditor_Button[1] ) 
triggerServerEvent("Rhino",localPlayer)  
    end 
end )  
  
  
    function OpenWin()   
     
    if guiGetVisible (GUIEditor_Window[1] ) == true then     
    guiSetVisible ( GUIEditor_Window[1], false )          
    showCursor(false)   
    guiSetInputEnabled(false)     
    else    guiSetVisible ( GUIEditor_Window[1], true )  
    showCursor(true)    
    guiSetInputEnabled(true)  
        end   
    end    
    bindKey("F6", "down", OpenWin) 
  

#Server Side

addEvent("Rhino",true) 
addEventHandler("Rhino",root, 
function() -- 
local x,y,z = getElementPosition ( source )   
local Get = getPlayerMoney(source) 
if Get >= 200 then 
takePlayerMoney (source,100) 
rhino = createVehicle ( 403, x, y, z ) 
warpPedIntoVehicle(source, rhino) 
outputChatBox("* لقد اشتريت سيارة",source,255,255,0,true) 
else if Get <= 50 then 
outputChatBox("* لا تملك المال الكافي للشراء !"source,0,0,0,true) 
    end 
end) 

Link to comment

outputChatBox ("F6 = افتح النافذة",source,255,0,0,true) 
  
GUIEditor_Window = {} 
GUIEditor_Button = {} 
  
GUIEditor_Window[1] = guiCreateWindow(459,185,175,240,"سيارة",false) 
GUIEditor_Button[1] = guiCreateButton(0.0857,0.1167,0.8286,0.2917,"استدعاء سيارة 100$",true,GUIEditor_Window[1]) 
addEventHandler("onClientGUIClick",root, 
function() -- نسوي وظيفه 
if (source == GUIEditor_Button[1] ) 
triggerServerEvent("Rhino",localPlayer) 
    end 
end ) 
  
  
    function OpenWin()   
    
    if guiGetVisible (GUIEditor_Window[1] ) == true then     
    guiSetVisible ( GUIEditor_Window[1], false )         
    showCursor(false)   
    guiSetInputEnabled(false)     
    else    guiSetVisible ( GUIEditor_Window[1], true ) 
    showCursor(true)   
    guiSetInputEnabled(true) 
        end   
    end   
    bindKey("F6", "down", OpenWin) 

زرين نفس المتغير : GUIEditor_Button[1]

اكيد بيجي خطأ,

+

addEvent("Rhino",true) 
addEventHandler("Rhino",root, 
function() -- 
local x,y,z = getElementPosition ( source )   
local Get = getPlayerMoney(source) 
if Get >= 200 then 
takePlayerMoney (source,100) 
rhino = createVehicle ( 403, x, y, z ) 
warpPedIntoVehicle(source, rhino) 
outputChatBox("* لقد اشتريت سيارة",source,255,255,0,true) 
elseif Get <= 50 then 
outputChatBox("* لا تملك المال الكافي للشراء !"source,0,0,0,true) 
    end 
end) 
Link to comment
outputChatBox ("F6 = افتح النافذة",source,255,0,0,true) 
  
GUIEditor_Window = {} 
GUIEditor_Button = {} 
  
GUIEditor_Window[1] = guiCreateWindow(459,185,175,240,"سيارة",false) 
GUIEditor_Button[1] = guiCreateButton(0.0857,0.1167,0.8286,0.2917,"استدعاء سيارة 100$",true,GUIEditor_Window[1]) 
addEventHandler("onClientGUIClick",root, 
function() -- نسوي وظيفه 
if (source == GUIEditor_Button[1] ) 
triggerServerEvent("Rhino",localPlayer) 
    end 
end ) 
  
  
    function OpenWin()   
    
    if guiGetVisible (GUIEditor_Window[1] ) == true then     
    guiSetVisible ( GUIEditor_Window[1], false )         
    showCursor(false)   
    guiSetInputEnabled(false)     
    else    guiSetVisible ( GUIEditor_Window[1], true ) 
    showCursor(true)   
    guiSetInputEnabled(true) 
        end   
    end   
    bindKey("F6", "down", OpenWin) 

زرين نفس المتغير : GUIEditor_Button[1]

اكيد بيجي خطأ,

+

addEvent("Rhino",true) 
addEventHandler("Rhino",root, 
function() -- 
local x,y,z = getElementPosition ( source )   
local Get = getPlayerMoney(source) 
if Get >= 200 then 
takePlayerMoney (source,100) 
rhino = createVehicle ( 403, x, y, z ) 
warpPedIntoVehicle(source, rhino) 
outputChatBox("* لقد اشتريت سيارة",source,255,255,0,true) 
elseif Get <= 50 then 
outputChatBox("* لا تملك المال الكافي للشراء !"source,0,0,0,true) 
    end 
end) 

يعني اللي فوق خذا صحيح؟ :?::!::!:

Link to comment

اذا تقصد هذآ

outputChatBox ("F6 = افتح النافذة",source,255,0,0,true) 
  
GUIEditor_Window = {} 
GUIEditor_Button = {} 
  
GUIEditor_Window[1] = guiCreateWindow(459,185,175,240,"سيارة",false) 
GUIEditor_Button[1] = guiCreateButton(0.0857,0.1167,0.8286,0.2917,"استدعاء سيارة 100$",true,GUIEditor_Window[1]) 
addEventHandler("onClientGUIClick",root, 
function() -- نسوي وظيفه 
if (source == GUIEditor_Button[1] ) 
triggerServerEvent("Rhino",localPlayer) 
    end 
end ) 
  
  
    function OpenWin()   
    
    if guiGetVisible (GUIEditor_Window[1] ) == true then     
    guiSetVisible ( GUIEditor_Window[1], false )         
    showCursor(false)   
    guiSetInputEnabled(false)     
    else    guiSetVisible ( GUIEditor_Window[1], true ) 
    showCursor(true)   
    guiSetInputEnabled(true) 
        end   
    end   
    bindKey("F6", "down", OpenWin) 

زرين نفس المتغير : GUIEditor_Button[1]

اكيد بيجي خطأ,

+

addEvent("Rhino",true) 
addEventHandler("Rhino",root, 
function() -- 
local x,y,z = getElementPosition ( source )   
local Get = getPlayerMoney(source) 
if Get >= 200 then 
takePlayerMoney (source,100) 
rhino = createVehicle ( 403, x, y, z ) 
warpPedIntoVehicle(source, rhino) 
outputChatBox("* لقد اشتريت سيارة",source,255,255,0,true) 
elseif Get <= 50 then 
outputChatBox("* لا تملك المال الكافي للشراء !"source,0,0,0,true) 
    end 
end) 

ايه صحيح بإذن الله,

Link to comment

Clinet Side #

outputChatBox ("F6 = افتح النافذة",source,255,0,0,true) 
  
GUIEditor_Window = {} 
GUIEditor_Button = {} 
  
GUIEditor_Window[1] = guiCreateWindow(459,185,175,240,"سيارة",false) 
GUIEditor_Button[1] = guiCreateButton(0.0857,0.1167,0.8286,0.2917,"استدعاء سيارة 100$",true,GUIEditor_Window[1]) 
  
addEventHandler("onClientGUIClick",root, 
function() -- نسوي وظيفه 
if (source == GUIEditor_Button[1] ) 
triggerServerEvent("Rhino",localPlayer) 
    end 
end ) 
  
  
bindKey(F6,"down", 
function () 
    guiSetVisible(GUIEditor_Window[1],not guiGetVisible(GUIEditor_Window[1])) 
    showCursor(guiGetVisible(GUIEditor_Window[1])) 
end 
) 
  

Server Side #

addEvent("Rhino",true) 
addEventHandler("Rhino",root, 
function() -- 
local x,y,z = getElementPosition ( source )   
local Get = getPlayerMoney(source) 
if Get >= 200 then 
takePlayerMoney (source,100) 
rhino = createVehicle ( 403, x, y, z ) 
warpPedIntoVehicle(source, rhino) 
outputChatBox("* لقد اشتريت سيارة",source,255,255,0,true) 
elseif Get <= 50 then 
outputChatBox("* لا تملك المال الكافي للشراء !"source,0,0,0,true) 
    end 
end) 

Link to comment

Client :

outputChatBox ("F6 = افتح النافذة",255,0,0,true) 
  
GUIEditor_Window = {} 
GUIEditor_Button = {} 
  
GUIEditor_Window[1] = guiCreateWindow(459,185,175,240,"سيارة",false) 
GUIEditor_Button[1] = guiCreateButton(0.0857,0.1167,0.8286,0.2917,"استدعاء سيارة 100$",true,GUIEditor_Window[1]) 
  
addEventHandler("onClientGUIClick",root, function() -- نسوي وظيفه 
    if (source == GUIEditor_Button[1] ) then 
        triggerServerEvent("Rhino",localPlayer) 
    end 
end ) 
  
function OpenWin()   
    guiSetVisible ( GUIEditor_Window[1], not guiGetVisible( GUIEditor_Window[1] )) 
    showCursor(guiGetVisible( GUIEditor_Window[1] ))   
    guiSetInputEnabled(guiGetVisible( GUIEditor_Window[1] )) 
end   
bindKey("F6", "down", OpenWin) 

Server :

addEvent("Rhino",true) 
addEventHandler("Rhino",root, 
    function() -- 
        local x,y,z = getElementPosition ( source )   
        local Get = getPlayerMoney(source) 
        if Get >= 100 then 
            takePlayerMoney (source,100) 
            rhino = createVehicle ( 403, x, y, z ) 
            warpPedIntoVehicle(source, rhino) 
            outputChatBox("* لقد اشتريت سيارة",source,255,255,0,true) 
        else 
            outputChatBox("* لا تملك المال الكافي للشراء !",source,0,0,0,true) 
        end 
    end 
) 

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