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

الموقع العربي الاول للعبة Silkroad Online (https://silkroad4arab.com/vb/index.php)
-   قسم الشروحات و البرامج المستخدمة في عمل السيرفرات الخاصة (https://silkroad4arab.com/vb/forumdisplay.php?f=289)
-   -   Job system (https://silkroad4arab.com/vb/showthread.php?t=584144)

gotsha 16-04-2015 11:53 PM

Job system
 

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

باذن الله الى كان محتاج يعمل هديه تانيه جمب الجولد فى التراد ممكن يتابع الموضوع وهيتعمل معاه ان شاء الله
انا معرفش نزل قبل كدة او لا بس ما علينا هوا فى الاول وفى الاخر هيفيد مش هيضر يلا نبتدى :

اول حاجه هتعمل الكويرى دة :
كود PHP:

USE [SRO_VT_SHARDLOG]
GO
/****** Object:  StoredProcedure [dbo].[_JobCoins]    Script Date: 16/04/2015 10:26:13 م ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO


ALTER   procedure 
[dbo].[_JobCoins
@
CharID        int,
@
EventID        tinyint
as
DECLARE @
CharnameJob varchar(268) = (Select CharName16 From SRO_VT_SHARd.dbo._Char where CharID = @CharID)
DECLARE @
Char_ReqLevel int = (Select CurLevel from SRO_VT_SHARd.dbo._char where CharID = @CharID)
-- 
Begin Hunter Reward
if @EventID '6' begin
Declare @CosID int = (select ID from SRO_VT_SHARd.dbo._CharCOS where OwnerCharID = @CharID)
----------------------------------------------------------
Begin Delete pet if he loggout.    
    
Delete from SRO_VT_SHard.dbo._InvCOS where COSID = @CosID
    Delete from SRO_VT_SHARD
.dbo._CharCOS  where 
    OwnerCharID 
= @CharID and RefCharID between '2187' and '2189'
    
or OwnerCharID = @CharID and RefCharID between '3915' and '3917'
    
or OwnerCharID = @CharID and RefCharID between '3912' and '3914'
    
or OwnerCharID = @CharID and RefCharID between '2184' and '2186'
    
or OwnerCharID = @CharID and RefCharID between '23250' and '23257'
    
or OwnerCharID = @CharID and RefCharID between '23258' and '23265'
    
or OwnerCharID = @CharID and RefCharID between '23905' and '23912'
if exists (Select from SRO_VT_SHARD.dbo._CharTrijob where CharID = @CharID
and Contribution >= '2099235' and JobType '3' and @Char_ReqLevel >= '110' )
begin 
     exec SRO_VT_SHARD
.dbo._ADD_ITEM_EXTERN @charnameJob,ITEM_ETC_SD_TOKEN_01,2,
     Update SRO_VT_SHARD
.dbo._CharTrijob set Contribution '1' where CharID = @CharID
         end 
-- orig 3484407
if exists (Select from SRO_VT_SHARD.dbo._CharTrijob where CharID = @CharID
and Contribution >= '2928581' and JobType '1' and @Char_ReqLevel >= '110')
begin 
     exec SRO_VT_SHARD
.dbo._ADD_ITEM_EXTERN @charnameJob,ITEM_ETC_SD_TOKEN_01,4,
     Update SRO_VT_SHARD
.dbo._CharTrijob set Contribution '1' where CharID = @CharID
         end
if exists (Select from SRO_VT_SHARD.dbo._CharTrijob where CharID = @CharID
and Contribution >= '2928581' and JobType '2' and @Char_ReqLevel >= '110'begin
     exec SRO_VT_SHARD
.dbo._ADD_ITEM_EXTERN @charnameJob,ITEM_ETC_SD_TOKEN_01,2,
     Update SRO_VT_SHARD
.dbo._CharTrijob set Contribution '1' where CharID = @CharID
     
         end
         end 

المهم انا بفضل ان اشرح الكلام الى قدامكوا دة لان انا مش بفضل انك تنقل وخلاص غير لما تفهم انت بتعمل اى لان فى الاول وفى الاخر الصح انك تستفيد انك تتعلم برمجه جديدة زى برمجه Sql يعنى مش تلعب وخلاص :wink1: المهم دة عبارة عن اجراء وبتعمله create عندك فى الداتا بيز بس الاجراء دة مش هيشتغل غير لما انت بالبلدى تحطله الكود الى بيخليه يشتغل ويقراه وينفذ الاجراء دة شرح بسيط قولت اكتبه واتمنى مكنش طولت عليكم

دلوقتى لو انت عايز تعدل اللفل تخليها تبدا من لفل معين هتغير دة '110'
لو عاوز تغير الهديه ذات نفسها تخليها اى كوين تانى من هنا
كود PHP:

 exec SRO_VT_SHARD.dbo._ADD_ITEM_EXTERN @charnameJob,ITEM_ETC_SD_TOKEN_01,2,

الرقم الى اسمه 2 دة الى هوا الكميه الى هتروح للاعب

نخش بقى زى ما شرحتلكم فوق الاجراء دة مش هيشتغل غير لما تديله الكود المسئول عن تشغيله وهوا دة الكود دة انت بتحطه فى جوه البروسيديور الى اسمه _AddLogChar :
كود PHP:

if @EventID '6' and exists (Select from SRO_VT_SHARD.dbo._CharTrijob where CharID = @CharID  and Contribution >= '2099235' )
    
begin Exec [dbo].[_JobCoins]  @charid , @eventid  
    end 

مش ناقص غير انك تعمل تراد وتخش تشوف الهديه مش هتجيلك غير لما تقفل الاكونت وتفتحه تانى بعد التراد اتمنى ان تكونوا فهمتوا حاجه من الشرح ومتكنوش نقلتوا وخلاص للداتا بيز من غير ما تفهم انت بتنقل اى ولو فى حاجه وقفت سيب كومنت وانا هبقى ارد عليك وشكرا
والسلام عليكم ورحمه الله

Mr Z!dane 17-04-2015 09:41 AM

رد: Job system
 
#Approved
+ تم تغير عنوان الموضوع
الي Job system

HangoverS 17-04-2015 01:05 PM

رد: Job system
 
شكرا ( ياريت الالتزام بالادات العامة ) جارى التجربة

pop2009 17-04-2015 02:12 PM

رد: Job system
 
تمام استمر انا لسه مجربتوش بس باين عليه انو شغال

M.HADAD 17-04-2015 04:14 PM

رد: Job system
 
تسلم ايدك يا كبير دا انا كنت مستنى الموضوع دا من زمان
بس انا قابلنى مشكلة
Msg 208, Level 16, State 6, Procedure _JobCoins, Line 3
Invalid object name 'dbo._JobCoins'.

gotsha 17-04-2015 07:19 PM

رد: Job system
 
اقتباس:

المشاركة الأصلية كتبت بواسطة _Striker_Mobs_ (المشاركة 5187219)
تسلم ايدك يا كبير دا انا كنت مستنى الموضوع دا من زمان
بس انا قابلنى مشكلة
Msg 208, Level 16, State 6, Procedure _JobCoins, Line 3
Invalid object name 'dbo._JobCoins'.

عشان انت مغيرتش الحته دة
كود PHP:

ALTER   procedure [dbo].[_JobCoins

هتخليها كدة
كود PHP:

CREATE   procedure [dbo].[_JobCoins


HangoverS 17-04-2015 08:15 PM

رد: Job system
 
انا حطيط السيستم من امبارح والله و مكسل افتح الجيم :D

Hamza FiGo 17-04-2015 08:58 PM

رد: Job system
 
تسلم ايدك تم التقييم ممتاز

بس سؤال رفيع. لو عايز احددها علي star معين . زي مثلا التراد 4 ستار بس. منين؟

والهدية هتروح للبارتي كلة ولا صاحب الترايد بس. والثيفات نظامهم اية في النظام دة ^^

Mr Z!dane 18-04-2015 03:38 AM

رد: Job system
 
اقتباس:

المشاركة الأصلية كتبت بواسطة Hamza FiGo (المشاركة 5187293)
تسلم ايدك تم التقييم ممتاز

بس سؤال رفيع. لو عايز احددها علي star معين . زي مثلا التراد 4 ستار بس. منين؟

والهدية هتروح للبارتي كلة ولا صاحب الترايد بس. والثيفات نظامهم اية في النظام دة ^^

الشغل كله هنا علي ال Contribution
حتت تحديد ال thief او hunter
دي عن طريق انك بتحدد لكل Jobtype
Contributionو Reward

CritYouDown 18-04-2015 04:10 AM

رد: Job system
 
على فكره السيستم دا فيه bug
جرب كدا اطلع Trade اياً كان عدد الـ Starts
و اول ما توصل الـ Town متسلمش الـ Trade
-- امال اعمل ابه ؟
ارمى الـ Trade على الارض و اعمل relog
و كل ما تفتح نزل Pet ليم Good 1 و بيعها و اعمل Relog و هتلاقى الـ reward
و تفضل على كدا تفتح تاخد 1 Good تبيعها و تقفل
من الاخر سيسم بايظ
لو حد خد بالوا من الـ Bug دا و استعملوا يبقى باظ السيرفر
ارجو انى اكون افتكم

HangoverS 18-04-2015 04:22 AM

رد: Job system
 
جربته ؟

M.HADAD 18-04-2015 02:43 PM

رد: Job system
 
طيب يا جماعة حد عمل السيستم دا يشوف Bugg اللى هوا بيقول علية دا موجود ولا اية قبل ما حد تانى يعملها

gotsha 18-04-2015 05:54 PM

رد: Job system
 
اقتباس:

المشاركة الأصلية كتبت بواسطة CritYouDown (المشاركة 5187391)
على فكره السيستم دا فيه bug
جرب كدا اطلع Trade اياً كان عدد الـ Starts
و اول ما توصل الـ Town متسلمش الـ Trade
-- امال اعمل ابه ؟
ارمى الـ Trade على الارض و اعمل relog
و كل ما تفتح نزل Pet ليم Good 1 و بيعها و اعمل Relog و هتلاقى الـ reward
و تفضل على كدا تفتح تاخد 1 Good تبيعها و تقفل
من الاخر سيسم بايظ
لو حد خد بالوا من الـ Bug دا و استعملوا يبقى باظ السيرفر
ارجو انى اكون افتكم

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

gotsha 18-04-2015 06:20 PM

رد: Job system
 
اقتباس:

المشاركة الأصلية كتبت بواسطة Hamza FiGo (المشاركة 5187293)
تسلم ايدك تم التقييم ممتاز

بس سؤال رفيع. لو عايز احددها علي star معين . زي مثلا التراد 4 ستار بس. منين؟

والهدية هتروح للبارتي كلة ولا صاحب الترايد بس. والثيفات نظامهم اية في النظام دة ^^

حتت انك تحددها للتراد بس بتتعمل من jobtype زى ما الراجل قايل كدة بس طبعا يفضل انك تعملها بروسيديور لوحدها
لاكن حتت الهديه لو مثلا بارتي طلع مع بعضه تراد كل واحد فيهم لو عمل التريد هيجيله يعنى مش بتبقي لصاحب التريد بس
والمفروض بعد ما بتعمل التريد البيت الى بيبقى معاك بيتمسح باردوا وبتفتح تانى تاخد الهديه عادى

Dev. iLegend 18-04-2015 06:53 PM

رد: Job system
 
حمزة البروسيدور دا شغال على
كود PHP:

Contribution 

من جدول dbo._CharTriJob بمعني أصح ان البارتي لو طلع كله مع بعضه تريد وقفل وفتح تاني لو الـ Contribution دي وصلت للقيمة اللى انت محددها هياخد الريوارد لو موصلتش مش هياخد الريوارد ،،
بس السيستم دا انا شوفته على مواقع اجنبية قبل كدا بس تعليقى عليه كان انه مينفعش انه يتعمل للتريد 5 * بس ، بمعني اني لو عملت 5 تريد 1 * هاخد نفس ريوارد الـتريد الـ 5* عشان هو مش بيدي الريوارد على كلاس التريد دا بيدي على قيمة الـ

Contribution اللى انت بتحددها وكان ليا تعليق أخر عليه ، هو انك ليه تشيل ال Pet من البلاير فى EventID 6 اللى هو بتاع الـ Log off طيب أفرض انا وصلت التريد قبل المدينة وخدت Dc أخسر انا المسافة دي كلها ، عشان النت قطع وجه مثلاً ؟
وعلى فكرة الموضوع دا قديم وانت نسيت تكتب منقول ،


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

Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2024, vBulletin Solutions, Inc.