XPro Posted August 26, 2015 Share Posted August 26, 2015 السلام عليكم و رحمة الله الكود هو انو يجيب اسم الاعب الموجود في قروب الاسل و يحط الاسم في لوحة بدال لابل ابي الاسم الكل يشوفوه بس مشكلتي ان الاسم يقدر يشوفو الي موجود حسابو في قروب الاسل بس Server addEvent("getstats", true) addEventHandler ("getstats", root, function () if ( aclGetGroup("BestPlayer") ) then if isObjectInACLGroup("user."..getAccountName(getPlayerAccount(source)), aclGetGroup("BestPlayer")) then triggerClientEvent(source, "setstats", getRootElement(), getPlayerName(source)) end end end ) Client player = getLocalPlayer() addEvent ( "setstats", true ) addEventHandler ( "setstats", root, function ( playerName ) guiSetText( BestAr, playerName:gsub("#%x%x%x%x%x%x", "")); guiSetText( BestEn, playerName:gsub("#%x%x%x%x%x%x", "")); guiSetText( BestPr, playerName:gsub("#%x%x%x%x%x%x", "")); end ) انا شلت اضافاتي جربت سويت ترايقر ثاني جربت الالمنت داتا بس ما ضبطو Link to comment
#DRAGON!FIRE Posted August 26, 2015 Share Posted August 26, 2015 التحقق من القروب هو للاعب محدد ؟ ولا اي لاعب موجود بالقروب . Link to comment
XPro Posted August 26, 2015 Author Share Posted August 26, 2015 لاعب محدد اصلا قروب مسويه لشخص بس لا اكثر ابي اجيب اسم الشخص ذا احطو في النافذة بس المشكلة في كودي انو كل شي تمام ما عدا ان الاسم في النافذة يقدر يشوفه الي حسابو في القروب بس لو ضغطت انا مكان الاسم في النافذة فارغ على عكسو هو Link to comment
#DRAGON!FIRE Posted August 26, 2015 Share Posted August 26, 2015 مدام انه شخص محدد وانت عارفه .. حط اسمه وبدون تريقرات وبدون كل هذا . Link to comment
XPro Posted August 26, 2015 Author Share Posted August 26, 2015 لا بس الاسم ذا راح يتغير كل 4 ايام يعني مسابقات مثلا ما راح اغير لاسم كل مره Link to comment
#DRAGON!FIRE Posted August 26, 2015 Share Posted August 26, 2015 التريقر اصلا انت جالس تسوي وتحقق من اللاعب اللي سويت له التريقر .. سوي سكل او سيريال داتا .. لان افترض اللاعب مو موجود بالسيرفر راح تصير مشكلة . Link to comment
XPro Posted August 26, 2015 Author Share Posted August 26, 2015 ما اقدر بس اسوي كذا مثلا addEvent("getstats", true) addEventHandler ("getstats", root, function () if ( aclGetGroup("BestPlayer") ) then if isObjectInACLGroup("user."..getAccountName(getPlayerAccount(source)), aclGetGroup("BestPlayer")) then triggerClientEvent(source, "setstats", getRootElement(), getPlayerName(source)) else --هنا اخلي الاعبين الارين كلهم يشوفو بس وش مكتوب عادي كيف يكون الترايقر؟ end end end ) Link to comment
#DRAGON!FIRE Posted August 26, 2015 Share Posted August 26, 2015 السالفة انه كله خطا .. لان التحقق من اللاعب اللي فتح اللوحة او اللي رسلت له التريقر .. وافترض انه اللاعب مو موجود بالسيرفر كيف راح تجيبه .. سوي سكل او في طريقة ثانية aclGroupListObjects لو مو مهم انكـ تجيب اسمه .. تقدر تجيب اسم حسابه Link to comment
XPro Posted August 26, 2015 Author Share Posted August 26, 2015 انا اهم شي ما احتاج حسابو احتاج بس اسم الاعب الي داخل القروب ذا ما في طريقة؟ Link to comment
#DRAGON!FIRE Posted August 26, 2015 Share Posted August 26, 2015 اسهل طريقة استخدم Serial Data بحيث وقت تسو المسابقة هذي ومثلا اللاعب يفوز تحط له السريال الداتا وكذا كل ما احد يفوز تحطها للاعب اللي يفوز واي لاعب يوم يفتح اللاعب تجلبها بس . setSerialData * واضحة من الاسم setSerialData(serial , key , value) function setSerialData(serial,key,value) if( value and type(serial) == "string") then setElementData(root,serial.."&"..key,value) end end getSerialData getSerialData(serial , key) function getSerialData(serial,key) if ( key and type(serial) == "string") then value = getElementData(root,serial.."&"..key) end return value end Link to comment
The Killer Posted August 26, 2015 Share Posted August 26, 2015 انت الحين وش تبي تسوي بالظبط ؟ وضح كلامك شويي # Link to comment
Simple. Posted August 26, 2015 Share Posted August 26, 2015 aclGroupListObjects aclGetGroup getAccountPlayer -- او انك تستخدم اكاونت داتا وتحط فيها اسم اللاعب عشان اذا ماكان موجود تقدر تجيبه Link to comment
XPro Posted August 26, 2015 Author Share Posted August 26, 2015 ابي تعديل على هذا الكود ضبطتو شوي قبل قليل Server addEvent("getstats", true) addEventHandler ("getstats", root, function () if ( aclGetGroup("BestPlayer") ) then if isObjectInACLGroup("user."..getAccountName(getPlayerAccount(source)), aclGetGroup("BestPlayer")) then local Name = getPlayerName (source) setElementData ( resourceRoot, "TheName", Name) triggerClientEvent(getRootElement(), "setstats",getRootElement(), getElementData ( resourceRoot, "TheName", Name)) end end end ) Client addEvent ( "setstats", true ) addEventHandler ( "setstats", root, function ( ) guiSetText( BestAr, "".. getElementData ( resourceRoot, "TheName", Name) .."") guiSetText( BestEn, "".. getElementData ( resourceRoot, "TheName", Name) .."") guiSetText( BestPr, "".. getElementData ( resourceRoot, "TheName", Name) .."") end ) انا مسوي لوحة اللوحة ذي في وسطها لابل في قروب في الاسل اسمو افضل لاعب ابي اجيب اسم الاعب في القروب ذا وا حطو في الابل للحين كل شي تمام بس المشكلة انو ما ينكتب شي في اللوحة حتى يفتح الي في قروب الاسل اللوحة مره حتى تنكتب للكل - انا ابي بس لما ينكتب الاسم اذا طلع و دخل الاعب يلقاه يعني يبقى دائما مكتوب الا اذا تغير الي في قروب الاسل Link to comment
The Killer Posted August 26, 2015 Share Posted August 26, 2015 جرب كذا: Server side # addEvent ("getstats", true) addEventHandler ("getstats", root, function () if not isGuestAccount (getPlayerAccount (source)) then if isObjectInACLGroup ("user." .. getAccountName (getPlayerAccount (source)), aclGetGroup ("BestPlayer")) then setElementData (resourceRoot, "TheName", getPlayerName (source)) end triggerClientEvent (root, "setstats", source, getElementData (resourceRoot, "TheName")) end end ) Client side # addEvent ( "setstats", true ) addEventHandler ( "setstats", root, function (name) guiSetText (BestAr, name) guiSetText (BestEn, name) guiSetText (BestPr, name) end ) Link to comment
XPro Posted August 26, 2015 Author Share Posted August 26, 2015 كل شي تمام بس المشكلة نفترض انا الي في قروب افضل لاعب ما يظهر اسمي في اللوحة الا اذا فتحت اللوحة و قفلتها المقصود لو دخل لاعب و فتح اللوحة يلقى مو موجود ولا اسم اما اذا فتتحت انا الي في القروب اللوحة و اغلقتها يضبط كل شي و يصير الاعبين الاخرين يقدرو يشوفو الاسم يعني المشكلة المفروض الاسم يضهر للاعب في اي وقت عند فتح اللوحة نفس مشكلت كودي Link to comment
XPro Posted August 26, 2015 Author Share Posted August 26, 2015 المشكلة انا عارفها لازم الالمنت داتا و الترايقر ما يكونو في نفس الفنكشن لان ذا الترايقر مخصص عند فتح اللوحة يعني لازم اسوي المنت دات فوق بعدين اسوي ترايقر و سحب الالمنت داتا في كود ثاني تحت اذا فاهمني بس انا ماني عارف احلها Link to comment
The Killer Posted August 26, 2015 Share Posted August 26, 2015 الحين كودي الي عطيتك يوم تفتح المره الاولى ما تشوفها ؟ والثانيه تشوفها حتى لو مو في القروب ؟ Link to comment
XPro Posted August 26, 2015 Author Share Posted August 26, 2015 انا الحين في قروب افضل لاعب انت مجرد لاعب في السيرفر لو ضغطت انت اف7 ما يجيك الاسم في اللوحة لو ضغطت انا اف7 يصير يجيك عادي يعني المشكلة مو لازم تسناني انا اضغط حتى اضبطها لازم تضغط وقت تبي تلقى الاسم Link to comment
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now