killerProject

حل مشكلة ومساعدة : عندي مشكلة في الداتا

Recommended Posts

السلام عليكم ورحمة الله وبركاته
انا بفضل الله ثم بفضلكم عرفت اشياء كثيرة عن البرمجة
لكني ما سألت قبل عن الداتا

setElementData

وانا نوب مرة فيها

انا ابي اسوي داتا من ملف مثلاً يكون اسمه
theData
وابي اجيب الداتا في ملف آخر مثلاً
getData

لكن بشروط اذا الداتا حقت الملف الاول = الداتا حقت الملف الثاني
يخرج كلمة في الشات : تم تثبيت الاضافة
واذا الملف الاول لا يساوي الملف الثاني في الداتا
تخرج رسالة اخرى تقول : لم يتم تثبيت الاضافة

هذا اللي ابيه - اتمنى مساعدة

Share this post


Link to post

عليكم السلام 

الداتا راح تكون عن ايش 

الاعب - السكربت نفسه - سيارة - الخ 

عشان نقدر نجاوبك 

بالنسبة انك تتحقق من الداتا انه تساوي الثانية زي اي شي 

local Data1 = getElementData ( element , "ex" ) 

local Data2 = getElementData ( element , "ex2" ) 

if ( Data1 == Data2 ) then 
  
outputChatBox ( ... ) 
  
else 
  
outputChatBox ( ... ) 
  
end

 

Share this post


Link to post
11 minutes ago, Abdul KariM said:

عليكم السلام 

الداتا راح تكون عن ايش 

الاعب - السكربت نفسه - سيارة - الخ 

عشان نقدر نجاوبك 

بالنسبة انك تتحقق من الداتا انه تساوي الثانية زي اي شي 


local Data1 = getElementData ( element , "ex" ) local Data2 = getElementData ( element , "ex2" ) if ( Data1 == Data2 ) then   outputChatBox ( ... )   else   outputChatBox ( ... ) 
  
end

 

شوف يا عبد الكريم انا ما اعرف اي شي عن الداتا لأنو ما برمجت بها اي شي قبل

هذا المثال رح يوضح شوي

 

-- Script 1 -- SetData

addEventHandler("onResourceStart", resourceRoot,
    function ( )
    local Data = getElementData (....)

        if Data == (....) then
            cancelEvent ()
            exports["guimessages"]:outputServer(root,"1",255,0,0)
        else
            exports["guimessages"]:outputServer(root,"2",0,255,0)
        end

    end
)

-- Script 2 -- getData

addEventHandler("onResourceStart", resourceRoot,
    function ( )
    local Data = getElementData (....)

        if Data == (....) then
            exports["guimessages"]:outputServer(root,"1",255,0,0)
        else
            exports["guimessages"]:outputServer(root,"2",0,255,0)
        end

    end
)

لأني ما اعرف شي عن الداتا سويت هذا المثال بدون داتا

Share this post


Link to post

اذا ماتعرف شي عن الداتا مانصحك تشتغل فيه ابدا 

لازم اول شي تفهمها وتطبق عليها وبعدين استخدمها 

الداتا تقدر تستدعيها وقت مابغيت 

في قسم شروحات الدروس 

في شرح للاخ زاحف شوفه وطبق عليه وان شاء الله بتفهمها 

بالتوفيق

  • Like 1

Share this post


Link to post
46 minutes ago, Abdul KariM said:

اذا ماتعرف شي عن الداتا مانصحك تشتغل فيه ابدا 

لازم اول شي تفهمها وتطبق عليها وبعدين استخدمها 

الداتا تقدر تستدعيها وقت مابغيت 

في قسم شروحات الدروس 

في شرح للاخ زاحف شوفه وطبق عليه وان شاء الله بتفهمها 

بالتوفيق

-- Script 2 -- setData -- السكربت الاول اللي يسوي الداتا

addEventHandler("onResourceStart", resourceRoot,
    function ()
	local Data = setElementData (....) -- اذا السكربت الاول اشتغل يسوي داتا مثلاً حقيقية
    end
)

addEventHandler("onResourceStop", resourceRoot,
    function ()
	local Data = setElementData (....) -- اذا السكربت انطفى يسوي داتا مثلاً وهمية
    end
)

-- Script 2 -- getData -- السكربت الثاني اللي يحضر الداتا

addEventHandler("onResourceStart", resourceRoot,
    function ( )
    local Data = getElementData (....) -- احطار الداتا من السكربت السابق

        if Data == (....) then	-- اذا الداتا وهمية
            exports["guimessages"]:outputServer(root,"1",255,0,0)
        else					-- اذا الداتا حقيقية
            exports["guimessages"]:outputServer(root,"2",0,255,0)
        end

    end
)

انا آسف كان في خطأ في المثال الاول
هذا المثال اللي كنت اقصده

Edited by Developer Ahmed
توضيح اكثر

Share this post


Link to post

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

الداتا انت تبي على وش تحطها 

لاعب , سيارة , الخ 

وش هو عشان نعرف كيف نجيب الداتا 

+ كل داتا ولها مفتاح خاص 

 

Share this post


Link to post
11 minutes ago, Abdul KariM said:

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

الداتا انت تبي على وش تحطها 

لاعب , سيارة , الخ 

وش هو عشان نعرف كيف نجيب الداتا 

+ كل داتا ولها مفتاح خاص 

 

داتا للسكربتات - يعني شي عام - يعني مب سيارة ولا لاعب ولا اوبجكت ولا ماركر ولا اي شي - فقط عن السكربتات - بمعنى آخر الرسورس

Share this post


Link to post

resourceRoot , اوكي  , راح تكون الداتا على 

والقيمة الي راح تخزنها على السكربت وش هي ؟ 

 

Share this post


Link to post
18 minutes ago, Abdul KariM said:

resourceRoot , اوكي  , راح تكون الداتا على 

والقيمة الي راح تخزنها على السكربت وش هي ؟ 

 

رح يكونو قيمتين في نفس الداتا
واحدة اذا السكربت شغال
وواحدة اخرى اذا السكربت مطفي
يعني مثلاً
DataYes و DataNo

في الملف اللي رح يجيب الداتا
اذا الداتا
 DataYes
يطلع رسالة رقم 1
واذا الداتا
DataNo
يطلع رسالة رقم 2

اتمنى فهمتني

Share this post


Link to post

صراحة مافهمت عليك , لاكن شوف هذا المثال يمكن يفيدك

addEventHandler ( "onResourceStart" , resourceRoot ,

	function (	)

	setElementData ( resourceRoot , "State" , "start" )

	end
	) ;
	
addEventHandler ( "onResourceStop" , resourceRoot ,

	function (	)

	setElementData ( resourceRoot , "State" , "stop" )

	end
	) ; 
	
addCommandHandler ( "gState" , 

	function ( player )

	local State_ = getElementData ( resourceRoot , "State" ) == "start" and "YesData" or "NoData"
	
	if ( State_ ) then
	
	outputChatBox ( State_ )
	
		end
	end
	) ;
	
	
	

طبعا لو كنت تبي انك تحط داتا على السكربت الفلاني مثلا مايحتاج داتا 

تقدر تجيب حالته شغال ولا طافي وهذا افضل من انك تحط داتا على السكربت 

getResourceState ( getResourceFromName ( ... ) )

 

واذا كنت تبي تحط داتا على سكربت معين وتجيبها من سكربت اخر استخدم 

getResourceFromName

 

Share this post


Link to post
1 hour ago, Abdul KariM said:

صراحة مافهمت عليك , لاكن شوف هذا المثال يمكن يفيدك


addEventHandler ( "onResourceStart" , resourceRoot ,

	function (	)

	setElementData ( resourceRoot , "State" , "start" )

	end
	) ;
	
addEventHandler ( "onResourceStop" , resourceRoot ,

	function (	)

	setElementData ( resourceRoot , "State" , "stop" )

	end
	) ; 
	
addCommandHandler ( "gState" , 

	function ( player )

	local State_ = getElementData ( resourceRoot , "State" ) == "start" and "YesData" or "NoData"
	
	if ( State_ ) then
	
	outputChatBox ( State_ )
	
		end
	end
	) ;
	
	
	

طبعا لو كنت تبي انك تحط داتا على السكربت الفلاني مثلا مايحتاج داتا 

تقدر تجيب حالته شغال ولا طافي وهذا افضل من انك تحط داتا على السكربت 


getResourceState ( getResourceFromName ( ... ) )

 

واذا كنت تبي تحط داتا على سكربت معين وتجيبها من سكربت اخر استخدم 


getResourceFromName

 

شكراً لك هذا اللي كنت ابيه - برأيي تقدم على رتبة سكربتنج

Share this post


Link to post

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.