الموقع العربي الاول للعبة Silkroad Online

الموقع العربي الاول للعبة Silkroad Online (https://silkroad4arab.com/vb/index.php)
-   قسم الاسئلة و الاستفسارات لعمل السيرفرات الخاصة (https://silkroad4arab.com/vb/forumdisplay.php?f=226)
-   -   للخبراء ارجوا الإفادة .. (https://silkroad4arab.com/vb/showthread.php?t=575908)

Dev. iLegend 10-01-2015 05:47 AM

للخبراء ارجوا الإفادة ..
 
السلام عليكم ورحمة الله وبركاته

انا بقالي كتير مستفسرتش عن حاجة عشان بعدت عن الـ Editing شوية وبلعب iSro ..

بس الصراحة الحاجة اللي كنت بدور عليها من فترة وصلتلها شوفتها في مواضيع كفكرة ..

وهي انى معتمدش على الـ dbo._AddTimedJob واحاول اني الاقى طريقة تخلى الاسكرول تعمل شغلها وفى نفس الوقت تعملك Teleport
متحتاجش انك تعمل Teleport بإيدك بعد الاسكرول .. انا وصلتلها الحمد لله . بس الفكرة مش فى كدا ..!
انا مشيت مظبوط فى الـ dbo._AddLogItem وعملت ايتم جديد ودخلت الـ RefItemID فى الـ Procedure وظبطه مجابش اي Error
وعمل عادي خالص Execute .. بس لما دخلت الجيم واستخدمت الاسكرول عملت تيليبورت بس ومنفذتش اي حاجة من الـ Procedure !
وجربت بكذا حاجة من اقل سكرول لأتخن سكرول مش شغال .. وجربت اني استخدم dbo._AddLogItem اللي هي فى الـ Shard مش اللى فى الـ Log db
برضة نفس الكلام مفيش حاجة بتتغير ! العيب من ايه بقا .. دا Procedure من اللى جربت بيهم لو العيب من الـ Procedure حد يعرفني الصح !
ولو مش منه العيب منين !! من الـ SRO_VT_SHARDLOG مثلاً ؟!


كود PHP:

  IF (@Operation 41) -- Scroll is used
  BEGIN
    
IF (@ItemRefID 42156) -- Reset Stats Scroll
       Begin 
         
Declare @Strength int 
         
Declare @Intellect int 
         
Declare @MaxLevel int 
         
Declare @RemainStatPoint int 
         Select 
@MaxLevel MaxLevel From [SRO_VT_SHARD].[dbo].[_CharWhere CharID = @CharID 
         Set 
@RemainStatPoint = (@MaxLevel*3)-
         Set 
@MaxLevel = @MaxLevel+19 
         Update 
[SRO_VT_SHARD].[dbo].[_CharSet Strength=@MaxLevelIntellect=@MaxLevelRemainStatPoint=@RemainStatPoint Where CharID=@CharID 
       End  
  END 

أرجو الإفادة

kox2030 10-01-2015 02:55 PM

if(@JobID = '36842') ---Stat Point
begin
declare @Strength int
declare @Intellect int
declare @MaxLevel int
declare @RemainStatPoint int
select @MaxLevel = MaxLevel from _Char where CharID = @CharID
set @RemainStatPoint = (@MaxLevel*3)-3
set @MaxLevel = @MaxLevel+19
UPDATE _Char SET Strength=@MaxLevel, Intellect=@MaxLevel, RemainStatPoint=@RemainStatPoint WHERE CharID=@CharID
return -3
end

kox2030 10-01-2015 02:56 PM

كده

merazz012 10-01-2015 06:27 PM

شيل if التانيه و جرب يا برنس و رد عليا

Hamza FiGo 10-01-2015 06:47 PM

اول حاجة علشان تخلي الاسكرول تعمل تيليبورت لوحدها من غير ما تعمل بايديك . بسيطة جدا. خد كوبي من Instant return scroll خد كوبي من اللاين بتاعها وظبط الــ IDs واسم الاسكرول لان الاسكرول بتعتمد علي الــ Procedure

ثانيا دا الــ Procedure بتاعها في AddTimedJob

كود:

    if(@JobID = '45001')
        begin
            declare @Strength int
            declare @Intellect int
            declare @MaxLevel int
            declare @RemainStatPoint int
            select @MaxLevel = MaxLevel from _Char where CharID = @CharID
            set @RemainStatPoint = (@MaxLevel*3)-3
            set @MaxLevel = @MaxLevel+19
            UPDATE _Char SET Strength=@MaxLevel, Intellect=@MaxLevel, RemainStatPoint=@RemainStatPoint WHERE CharID=@CharID
        end

هتغير الـ ID بــ ID بتاعك . بس كدة. بالتوفيق

Dev. iLegend 11-01-2015 05:31 PM

اقتباس:

المشاركة الأصلية كتبت بواسطة kox2030 (المشاركة 5149716)
if(@JobID = '36842') ---Stat Point
begin
declare @Strength int
declare @Intellect int
declare @MaxLevel int
declare @RemainStatPoint int
select @MaxLevel = MaxLevel from _Char where CharID = @CharID
set @RemainStatPoint = (@MaxLevel*3)-3
set @MaxLevel = @MaxLevel+19
UPDATE _Char SET Strength=@MaxLevel, Intellect=@MaxLevel, RemainStatPoint=@RemainStatPoint WHERE CharID=@CharID
return -3
end

باشا انا عارف اللي انت حاطه دا ممكن تقرا كلامي تاني فى موضوع فوق وتفهم انا اقصد ايه ! انا مش بتكلم على dbo._AddTimedJob

Dev. iLegend 11-01-2015 05:36 PM

اقتباس:

المشاركة الأصلية كتبت بواسطة merazz012 (المشاركة 5149771)
شيل if التانيه و جرب يا برنس و رد عليا

مينفعش اشيل IF التانية يا باشا مهو يا إما تبقا زي ما هي كدا

كود PHP:

 IF (@Operation 41) -- Scroll is used
  BEGIN
    
IF (@ItemRefID 42156) -- Reset Stats Scroll
       Begin 
         
Declare @Strength int 
         
Declare @Intellect int 
         
Declare @MaxLevel int 
         
Declare @RemainStatPoint int 
         Select 
@MaxLevel MaxLevel From [SRO_VT_SHARD].[dbo].[_CharWhere CharID = @CharID 
         Set 
@RemainStatPoint = (@MaxLevel*3)-
         Set 
@MaxLevel = @MaxLevel+19 
         Update 
[SRO_VT_SHARD].[dbo].[_CharSet Strength=@MaxLevelIntellect=@MaxLevelRemainStatPoint=@RemainStatPoint Where CharID=@CharID 
       End  
  END 

يا إما تبقا كدا ..

كود PHP:

 IF (@Operation 41 and @ItemRefID 42156)
  
BEGIN
         
Declare @Strength int 
         
Declare @Intellect int 
         
Declare @MaxLevel int 
         
Declare @RemainStatPoint int 
         Select 
@MaxLevel MaxLevel From [SRO_VT_SHARD].[dbo].[_CharWhere CharID = @CharID 
         Set 
@RemainStatPoint = (@MaxLevel*3)-
         Set 
@MaxLevel = @MaxLevel+19 
         Update 
[SRO_VT_SHARD].[dbo].[_CharSet Strength=@MaxLevelIntellect=@MaxLevelRemainStatPoint=@RemainStatPoint Where CharID=@CharID 
  END 

وفى كلا الحالتين الاسكرول بتعمل تيليبورت ومش بتشغل الـ Procedure

Dev. iLegend 11-01-2015 05:47 PM

اقتباس:

المشاركة الأصلية كتبت بواسطة hamzafigo (المشاركة 5149778)
اول حاجة علشان تخلي الاسكرول تعمل تيليبورت لوحدها من غير ما تعمل بايديك . بسيطة جدا. خد كوبي من Instant return scroll خد كوبي من اللاين بتاعها وظبط الــ IDs واسم الاسكرول لان الاسكرول بتعتمد علي الــ Procedure

ثانيا دا الــ Procedure بتاعها في AddTimedJob

كود:

    if(@JobID = '45001')
        begin
            declare @Strength int
            declare @Intellect int
            declare @MaxLevel int
            declare @RemainStatPoint int
            select @MaxLevel = MaxLevel from _Char where CharID = @CharID
            set @RemainStatPoint = (@MaxLevel*3)-3
            set @MaxLevel = @MaxLevel+19
            UPDATE _Char SET Strength=@MaxLevel, Intellect=@MaxLevel, RemainStatPoint=@RemainStatPoint WHERE CharID=@CharID
        end

هتغير الـ ID بــ ID بتاعك . بس كدة. بالتوفيق


شكراً على مرورك .. بس برضه مش دا اللى عاوزه انا جربت اللى انت بتقول عليه دا كذا مرة قبل مشتغل على الـ dbo._AddLogItem
إستحالة تعرف تشتغل على الـ RefItemID من dbo._AddTimedJob وعشان تخلي الاسكرول ريترن
سكرول من dbo._RefObjItem وتخلي الـ Parameters كدا

كود PHP:

1500    ????    1    ??????    -1    RESURRECT 

يبقا مش هتعرف تحطلها لينك لـ dbo._RefSkill ويبقا هتضطر انك تشتغل على الـ RefItemID مش JobID ودا اللى بتكلم عليه
لو فى غلطة فى الـ Procedure بتاعي ياريت حد يقوللى او اوصل للعيب منين .. !!

Dev. iLegend 11-01-2015 11:45 PM

UP

Hamza FiGo 12-01-2015 12:29 AM

اعتقد الفرق بيبقي بسيط بين الاتنين procedure بس للاسف مش معايا غير لــ AddTimedJob

™Shi6on 12-01-2015 01:37 AM

هي من الــ procedure وللأسف انا كمان معيش غير لــAddTimedJob
:sweatdrop3:

Dev. iLegend 12-01-2015 05:54 AM

طب لو حد عنده اي سكرول بغض النظر عن نوع الـ Procedure شغالة بـريترن سكرول مثلاً زي دوول كدا من موضوع استاذ حمزة .. او حضرتك يا حمزة باشا لو الاسكرولات اللى انت منزلها فى الموضوع بتاعك ده شغالة عندك وبتعمل ريترن للمدينة ضيفنى عشان لو الطريقة اللى في دماغى نفعت .. هنعمل اي سكرول بغض النظر عن نوعها انها تعملك تيليبورت وتشغل الـ Procedure بتاعها


My Face

Dev. iLegend 13-01-2015 04:55 AM

UP

Dev. iLegend 17-01-2015 01:33 AM

لقيت الحل انتظروا منى سكرولات جديدة إنشاء الله :)

Hamza FiGo 18-01-2015 04:32 AM

ايوة ياباشا الاسكرولات دي شغالة وبتعمل Teleport لوحدها . شوف الفيديو بنفسك ^_^


الساعة الآن 04:12 AM.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2025, vBulletin Solutions, Inc.