Jump to content

طلب مساعدة في البرمجة


Recommended Posts

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

اخواني ودي اتعلم البرمجة واصير محترف

بس المشكل يوم اطلب من واحد يقلي مو فاضي او يقولي روح الويكي

مشكلة الويكي ما يفهم

ابي افهم الكود

ابي اتعلم كيف اسوي حدث

واركب فنكشن

الي فهمته من الويكي ملف الميتا

انشاءالله احد يشرح لي وظيفتين او ثلاث

او ع الاقل درس واحد في الاسبوع

Link to comment
  • Replies 72
  • Created
  • Last Reply

Top Posters In This Topic

شوف اخوي قبل لا تقرا المثال لازم تشوف ألساينتكس حق الكود

واذا كان حدث تشوف البارتمنس

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

موجود ف قسم الدروس

Link to comment
السلام عليكم ورحمة الله وبركاته

اخواني ودي اتعلم البرمجة واصير محترف

بس المشكل يوم اطلب من واحد يقلي مو فاضي او يقولي روح الويكي

مشكلة الويكي ما يفهم

ابي افهم الكود

ابي اتعلم كيف اسوي حدث

واركب فنكشن

الي فهمته من الويكي ملف الميتا

انشاءالله احد يشرح لي وظيفتين او ثلاث

او ع الاقل درس واحد في الاسبوع

والله انا ودي اتعلم مثلك

الويكي مو مفهوم

Link to comment
اخوي الحين عرفت كيف اسوي وظيفة للزر

او وظيفة

مثل

onPlayerChat

وظيفة شات

لازم نسويها كذا

addEventHandler("onPlayerChat",root, 

صح

مثلا نسخ ولصق

setElementHealth ( player, 100 ) 

الإيفنت يجي على نوعين

مثال :

addEventHandler("onPlayerChat",root,function ( msg ) 
if msg == "السلام عليكم" then 
outputChatBox("وعليكم السلام",source,255,255,255) 
end 
end 
) 

function onPlayerChat ( msg ) 
if msg == "السلام عليكم" then 
outputChatBox("وعليكم السلام",source,255,255,255) 
end 
end 
addEventHandler("onPlayerChat",root,onPlayerChat) 
  

كليهما بيطلعون نفس النتيجة

Link to comment

انا هذا فاهمه

بس مثلا جبت وظائف كيف اركبها مع بعض

طيب اخوي مثلا جريد لست

Evreone ابي اطلع اسماء جميع الادامن عدا الزوار الي هم

الرجاء الكل المشاركة بالموضوع لانه مو بس لي اتمنى الكل يتعلم

لان الاجانب مو احسن مننا

Link to comment

نجلب جميع الحسابات

getAccounts 

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

isObjectInACLGroup 

او عنده صلاحية

hasObjectPermissionTo 

وتستخرج النتايج ,

---

Ex.:

function getAdmins ( ) -- صناعة فنكشن 
    for index, accounts in ipairs ( getAccounts ( ) ) do -- جلب جميع الحسابات 
        if hasObjectPermissionTo ( "user."..getAccountName ( accounts ), "general.adminpanel", false ) then -- إثبات ان عنده ادمنية 
            outputChatBox ( "Account: "..getAccountName ( accounts ), source, 255, 255, 0, true ) -- إستخراج نص 
        end -- انهاء شرط اثبات وجود صلاحية الأدمن 
    end -- انهاء اللوب او جميع الحسابات اللي جبناها مساعة 
end -- انهاء الفنكشن 
  

بس الحين الفنكشن ماله فايدة مجرد اسم ,

يحتاج شيء يشغله

انا بستخدم كوماند واربطه معه

addCommandHandler ( "admins", getAdmins ) 

وبما ان الكوماند له بارمتر تعريف اللاعب ,, راح استغله بدال كلمة سورس

والبارامتر تعتبر متغيرات مساعدة تسهل عليك عناء التعريف

ليكون كالتالي

function getAdmins ( player ) 
    for index, accounts in ipairs ( getAccounts ( ) ) do  
        if hasObjectPermissionTo ( "user."..getAccountName ( accounts ), "general.adminpanel", false ) then 
            outputChatBox ( "Account: "..getAccountName ( accounts ), player, 255, 255, 0, true ) 
        end 
    end 
end 
addCommandHandler ( "admins", getAdmins ) 

---

وفيه فنكشن اسمه

aclGroupListObjects 

بس ماجربته يمكن اسهل من جدول جلب الحسابات واثبات الصلاحية

Link to comment

طيب اخوي بعطيك وظيفة منكن تجيب لي اكوادها

وانا اسويها قدامك

مثلا

بالجريد نفسها في اسم الحساب وفي سكور نقاط الحساب هذي النقاط لادامن فقط

يوم يصك سلاب تجيه ١ نقطة

يوم يسحب موتر ١ نقطة

كيك ٢ نقطة

بان ٣ نقطة

يعني يجيك اسم حساب الادمن مقابله تقاط الادمن

Link to comment

كل ماتحتاجه هو إضافة عامودين واحد حق الإسم والثاني حق النقاط

guiGridListAddColumn 

ومع التريقر من سيرفر يوم تجيب الحسابات تضيف الصف

guiGridListAddRow 

وتكتب داخلهم

guiGridListSetItemText 

---

Ex.:

gridList = guiCreateGridList ( ... ) 
accounts = guiGridListAddColumn ( gridList , "Account", 0.5 ) 
points = guiGridListAddColumn ( gridList , "Point", 0.3 ) 
  
addEvent ( "onGetInformation", true ) 
addEventHandler ( "onGetInformation", root, 
    function ( acc, point ) 
        local row = guiGridListAddRow ( gridList ) 
        guiGridListSetItemText ( gridList , row, accounts, acc, false, false ) 
        guiGridListSetItemText ( gridList , row, points, point , false, false ) 
    end 
) 

اللي من السيرفر عليك ,,

Link to comment
يعطيك العافية

بحاول واقولك

بس ما فهمتك

قصدك اسوي ملف سيرفر واحط فيه الاكواد ولا كيف ؟؟

عناد أعطاك ملف الكلنت

الي عليك تفتح ملف سيرفر

وتكمل الأكواد ، لان الكود مب كامل

Link to comment

ماشاء الله عليك

يا سبحان الله

عندك مهارة خداع الثعلب ما سواها

اول شي دخل علينا يعني اني بريء وكذا

يبي يتعلم

بعدين يعني انه يتعلم صار يطلب يتعلم شي محدد

بعدين يبي المثال عن هذا الشي

بعدين يبي الكود الجاهز

بعدين يبي

BY 7ASAN

واو اهنيك صراحة

Link to comment
ماشاء الله عليك

يا سبحان الله

عندك مهارة خداع الثعلب ما سواها

اول شي دخل علينا يعني اني بريء وكذا

يبي يتعلم

بعدين يعني انه يتعلم صار يطلب يتعلم شي محدد

بعدين يبي المثال عن هذا الشي

بعدين يبي الكود الجاهز

بعدين يبي

BY 7ASAN

واو اهنيك صراحة

احد كلمك ؟؟

بعدين انا قلت لاخ عناد عطيني الكود وانا اسوي وظيفة

بس هو عطاني الكود وسواها وظيفة

وانت مانك مبرمج لا تتكلم ما تبي تاساعد لا تتكلم

وانا يوم اسوي مود ما احطه بحقوقي ولا شئ من هذا

mta-jam3a حتى ملف الميتا اسويه باسم

من اخرها لا تتلقف وتجيب كلام من راسك

Edited by Guest
Link to comment
غيروا المثال ما عرفت اسوي سيرفر

لو سمحتم

مثلا ارسال الفلوس

كيف اسوي المود حقها ؟

:wink:

معليش تعبتكم

addCommandHandler("GiveMoney",function ( player ) 
for i, v in ipairs( getElementsByType ( "player" ) ) do  
givePlayerMoney ( v, 1000 ) 
end 
end) 

Link to comment
addCommandHandler("GiveMoney",function ( player ) 
for i, v in ipairs( getElementsByType ( "player" ) ) do  
givePlayerMoney ( v, 1000 ) 
end 
end) 

addEventHandler ( "onClientGUIClick", root, عدلتها ان تصير بزر 
function (player) 
  
if source == GUIEditor.button[1] then 
for i, v in ipairs( getElementsByType ( "player" ) ) do هذي وش هي 
givePlayerMoney ( v, 1000 ) هذي وش هي 
end 
end) 

معليش تشرح لي هذول

Link to comment
addCommandHandler("GiveMoney",function ( player ) 
for i, v in ipairs( getElementsByType ( "player" ) ) do  
givePlayerMoney ( v, 1000 ) 
end 
end) 

addEventHandler ( "onClientGUIClick", root, عدلتها ان تصير بزر 
function () 
if source == GUIEditor.button[1] then 
for i, v in ipairs( getElementsByType ( "player" ) ) do هذي وش هي 
givePlayerMoney ( v, 1000 ) هذي وش هي 
end 
end) 

معليش تشرح لي هذول

addEventHandler ( "onClientGUIClick", root,  
function () 
if source == GUIEditor.button[1] then 
for i, v in ipairs( getElementsByType ( "player" ) ) do -- نجيب كل اللاعبين بالسيرفر 
givePlayerMoney ( v, 1000 ) -- نعطي كل اللاعبين 1000 $ 
end 
end  
end) 

كانت موجودة عندك إند ناقصة انا زودتها :mrgreen:

Link to comment

انا ابيها للاعب واحد مو لكل الاعبين اخوي

يعني مثلا من جريد لست جبنا كل الاعبين

function players() 
    guiGridListClear(gridlist) 
    for i,v in ipairs(getElementsByType("player")) do 
        local row = guiGridListAddRow(gridlist) 
        guiGridListSetItemText(gridlist,row,1,getPlayerName(v),false,false) 
    end 
end 
addEventHandler("onClientResourceStart",resourceRoot,players) 
addEventHandler("onClientPlayerJoin",root,players) 
addEventHandler("onClientPlayerChangeNick",root,players) 

Link to comment
function list() 
    guiGridListClear(grid) 
    for id, players in ipairs (getElementsByType("player")) do 
        local column = guiGridListAddColumn( grid, "Player Name", 0.89 ) 
        local row = guiGridListAddRow(grid) 
        guiGridListSetItemText(grid, row, 1, getPlayerName(players), false, false) 
        guiGridListSetItemColor ( grid, row, 1, 0, 250, 154, 255 ) 
    end 
end 
addEventHandler("onClientResourceStart", resourceRoot, list) 
addEventHandler("onClientPlayerJoin", getRootElement(), list) 
addEventHandler("onClientPlayerQuit", getRootElement(), list) 
addEventHandler("onClientPlayerChangeNick", getRootElement(), list) 
  
  
addEventHandler ( "onClientGUIClick", root, 
function () 
if source == GUIEditor.button[1] then -- اسم الزر , اذا مب نفسه استبدله بالموجود 
local name = guiGridListGetItemText(grid, guiGridListGetSelectedItem(grid), 1) 
local amount = guiGetText (edit) -- استبدله بالايدت الموجود عندك 
triggerServerEvent( "GiveMoney", getLocalPlayer ( ), name, amount ) 
end 
end) 

عليك تكمل ملف السيرفر :mrgreen:

Link to comment
addEvent("onSendMoney", true) 
addEventHandler("onSendMoney", getRootElement(), 
 function(hassan, player) 
   local money = getPlayerMoney(source) 
    if tonumber(player) >= 200 then 
        if tonumber(player) <= money then 
            tohassan = getPlayerFromName(hassan) 
                if tohassan ~= false then 
                    givePlayerMoney(tohassan, player) 
                    takePlayerMoney(source, player) 
                    name = getPlayerName(source) 
                    exports.killmessages:outputMessage("* You have given money amount of: " .. player .. " : " .. hassan, source, 0, 150, 255, true) 
                    exports.killmessages:outputMessage("* ".. name .. "  given you money amount of: $" .. player .. " ", tohassan, 255, 0, 0, true) 
                else 
                    exports.killmessages:outputMessage("* Player did not exist !", source, 255, 0, 0) 
                end 
        else 
            exports.killmessages:outputMessage("* you dont have enough money !", source, 255, 0, 0) 
        end 
    else 
        exports.killmessages:outputMessage("* the Less amount must be $200 !", source, 255, 0, 0) 
    end 
 end 
) 
  

80% ما بيشتغل

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