المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : Job Coin System


DenDaryYy
19-05-2021, 05:18 AM
السلام عليكم
بعد اذنكو كنت محتاج اعمل job coin system
بس جربتhttps://www.silkroad4arab.com/vb/showthread.php?t=605901
للاسف مش شغال

ف كنت حابب اعملو جدا ب نفس الطريقه اللي ف اللينك فوق بس انا مش قادر اوصل ليه لما برستر مش باخد ال reward ولا حتي بيعمل reset contribution

ف هل من مساعده ؟

انا محتاج اعملو يدي gold/silver coin + honor point علي ال 5***** فقط لا غير

trader = 4/4 + 3 honor
hunter = 1/1 + 1 honor
Thief = 2/2 + 2 honor ( solo sell ) بمعني انو لازم يبقي لوحدو لو في بارتي مياخدوش كوين

انا عامل ال route عندي من hotan to samerkand و العكس فقط
trade contribution = 8001241

هل من مساعده ان حد بس يعدلي علي السطور ؟

و انا هكمل ال hunter + thief مفيش مشاكل
بس محتاج السيستم يشتغل و يدي reward ل ال trade

data name
SRO_VT_ACCOUNT
SRO_VT_SHARD
SRO_VT_LOG

شكرا مقدما

Kyuubi
19-05-2021, 08:13 AM
انت عملت الكويري بتاع ال DefaultContributionHunter ؟

DenDaryYy
19-05-2021, 08:37 AM
انت عملت الكويري بتاع ال DefaultContributionHunter ؟

لا انا بعمل add ل ال contribution بتاع ال trade علي سبيل اني اجرب ال trade بس ف البدايه اشوف شغال ولا لا و مش بيشتغل.. هل لازم احط ال Hunter معاه ؟

Kyuubi
19-05-2021, 08:40 AM
لا انا بعمل add ل ال contribution بتاع ال trade علي سبيل اني اجرب ال trade بس ف البدايه اشوف شغال ولا لا و مش بيشتغل.. هل لازم احط ال Hunter معاه ؟

انت لازم تعمل الكويري علي حسب لفل التريدا عندك

DenDaryYy
19-05-2021, 09:15 AM
انت لازم تعمل الكويري علي حسب لفل التريدا عندك

لا معلش ممكن توضيح اكتر ؟

DenDaryYy
19-05-2021, 09:20 AM
طيب انا في الوقت الحالي عملت كل ال contributions
https://www5.0zz0.com/2021/05/19/09/395100137.png
و برضو مش بيجي اي reward
و دا باقي ال Query's اللي عملتها و معموله ب المنظر دا
-- _JayTradingReward --
USE [SRO_VT_LOG]
GO
/****** Object: StoredProcedure [dbo].[_JayTradingReward] Script Date: 5/19/2021 8:18:58 AM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: Jayden
-- Create date: 10-10-2016
-- Description: Giving reward after trade
-- =============================================
ALTER PROCEDURE [dbo].[_JayTradingReward]
@CharID INT
AS
BEGIN
SET NOCOUNT ON;
SET XACT_ABORT ON;
--DECLARES
DECLARE @CL INT, @JID int,@JT TINYINT,@CN varchar(128),@RL int,@CNT real,@DCT real,@DCF real,@DCH real,@CCT int,@CCF int,@CCH int,@ICT int,@ICF int,
@ICH int,@SCT int,@SCF int,@SCH int,@GCT int,@GCF int,@GCH int,@ACT int,@ACF int,@ACH int,@SKT int,@SKF int,@SKH int,@SGT int,@SGF int,
@SGH int,@SPT int,@SPF int,@SPH int,@GT int,@GF int,@GH int,@GLT int,@GLF int,@GLH int,@RET int,@REF int,@REH int,@RST int,@RSF int,@RSH int,@HNT int,@HNF int,@HNH int
DECLARE @CampID int = (SELECT CampID from SRO_VT_SHARD.._TrainingCampMember WHERE CharID = @CharID)
SELECT @CN = Charname16 FROM SRO_VT_SHARD.dbo._Char WHERE CharID = @CharID
SELECT @CL = C.CurLevel,@JID = U.UserJID,@JT = J.JobType,@CNT = J.Contribution
FROM SRO_VT_SHARD.._Char C INNER JOIN SRO_VT_SHARD.._CharTrijob J ON J.CharID = C.CharID
INNER JOIN SRO_VT_SHARD.._User U ON U.CharID = C.CharID WHERE C.CharID = @CharID
/*Not any shit*/
IF @JT = 0 BEGIN RETURN END ELSE
DECLARE @Star int
/* Calculating Shit */
--Trader
IF @JT = 1
BEGIN
DECLARE @DCT1 real = (SELECT DefaultContributionTrader FROM _JayTradingConfig WHERE Star = 1)
, @DCT2 real = (SELECT DefaultContributionTrader FROM _JayTradingConfig WHERE Star = 2)
, @DCT3 real = (SELECT DefaultContributionTrader FROM _JayTradingConfig WHERE Star = 3)
, @DCT4 real = (SELECT DefaultContributionTrader FROM _JayTradingConfig WHERE Star = 4)
, @DCT5 real = (SELECT DefaultContributionTrader FROM _JayTradingConfig WHERE Star = 5)
BEGIN
IF @CNT <= @DCT1 BEGIN SET @Star = 1 END
ELSE IF @CNT <= @DCT2 and @CNT > @DCT1 BEGIN SET @Star = 2 END
ELSE IF @CNT <= @DCT3 and @CNT > @DCT2 BEGIN SET @Star = 3 END
ELSE IF @CNT <= @DCT4 and @CNT > @DCT3 BEGIN SET @Star = 4 END
ELSE IF @CNT <= @DCT5 and @CNT > @DCT4 BEGIN SET @Star = 5 END
END END
-- Thief
ELSE IF @JT = 1
BEGIN
DECLARE @DCF1 real = (SELECT DefaultContributionThief FROM _JayTradingConfig WHERE Star = 1)
, @DCF2 real = (SELECT DefaultContributionThief FROM _JayTradingConfig WHERE Star = 2)
, @DCF3 real = (SELECT DefaultContributionThief FROM _JayTradingConfig WHERE Star = 3)
, @DCF4 real = (SELECT DefaultContributionThief FROM _JayTradingConfig WHERE Star = 4)
, @DCF5 real = (SELECT DefaultContributionThief FROM _JayTradingConfig WHERE Star = 5)
BEGIN
IF @CNT <= @DCF1 BEGIN SET @Star = 1 END
ELSE IF @CNT <= @DCF2 and @CNT > @DCF1 BEGIN SET @Star = 2 END
ELSE IF @CNT <= @DCF3 and @CNT > @DCF2 BEGIN SET @Star = 3 END
ELSE IF @CNT <= @DCF4 and @CNT > @DCF3 BEGIN SET @Star = 4 END
ELSE IF @CNT <= @DCF5 and @CNT > @DCF4 BEGIN SET @Star = 5 END
END END
-- Hunter
ELSE IF @JT = 1
BEGIN
DECLARE @DCH1 real = (SELECT DefaultContributionHunter FROM _JayTradingConfig WHERE Star = 1)
, @DCH2 real = (SELECT DefaultContributionHunter FROM _JayTradingConfig WHERE Star = 2)
, @DCH3 real = (SELECT DefaultContributionHunter FROM _JayTradingConfig WHERE Star = 3)
, @DCH4 real = (SELECT DefaultContributionHunter FROM _JayTradingConfig WHERE Star = 4)
, @DCH5 real = (SELECT DefaultContributionHunter FROM _JayTradingConfig WHERE Star = 5)
BEGIN
IF @CNT <= @DCH1 BEGIN SET @Star = 1 END
ELSE IF @CNT <= @DCH2 and @CNT > @DCH1 BEGIN SET @Star = 2 END
ELSE IF @CNT <= @DCH3 and @CNT > @DCH2 BEGIN SET @Star = 3 END
ELSE IF @CNT <= @DCH4 and @CNT > @DCH3 BEGIN SET @Star = 4 END
ELSE IF @CNT <= @DCH5 and @CNT > @DCH4 BEGIN SET @Star = 5 END
END END
SELECT @RL = ReqLevel,@DCT = DefaultContributionTrader,@DCF=DefaultContribution Thief,@DCH=DefaultContributionHunter
,@CCT=CopperCoinTrader,@CCF=CopperCoinThief,@CCH=C opperCoinHunter,@ICT=IronCoinTrader,@ICF=IronCoinT hief,@ICH=IronCoinHunter
,@SCT=SilverCoinTrader,@SCF=SilverCoinThief,@SCH=S ilverCoinHunter,@GCT=GoldCoinTrader,@GCF=GoldCoinT hief
,@GCH=GoldCoinHunter,@ACT=ArenaCoinTrader,@ACF=Are naCoinThief,@ACH=ArenaCoinHunter,@SKT=SilkTrader,@ SKF=SilkThief
,@SKH=SilkHunter,@SGT=SilkGiftTrader,@SGF=SilkGift Thief,@SGH=SilkGiftHunter,@SPT=SilkPointTrader,@SP F=SilkPointThief
,@SPH=SilkPointHunter,@GT=GoldTrader,@GF=GoldThief ,@GH=GoldHunter,@GLT=GlobalTrader,@GLF=GlobalThief
,@GLH=GlobalHunter,@RET=ReverseTrader,@REF=Reverse Thief,@REH=ReverseHunter,@RST=ResurrectionTrader
,@RSF=ResurrectionThief,@RSH=ResurrectionHunter,@H NT=HonorPointTrader,@HNF=HonorPointThief,@HNH=Hono rPointHunter
FROM _JayTradingConfig WHERE Star = @Star

/* Rewarding */
-- Trader
IF @JT = 1 AND @CL = @RL
BEGIN
IF @CCT IS NOT NULL OR @CCT != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_ETC_SD_TOKEN_01',@CCT,0 END
IF @ICT IS NOT NULL OR @ICT != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_ETC_SD_TOKEN_02',@ICT,0 END
IF @SCT IS NOT NULL OR @SCT != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_ETC_SD_TOKEN_03',@SCT,0 END
IF @GCT IS NOT NULL OR @GCT != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_ETC_SD_TOKEN_04',@GCT,0 END
IF @ACT IS NOT NULL OR @ACT != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_ETC_ARENA_COIN',@ACT,0 END
IF @SKT IS NOT NULL OR @SKT != 0 BEGIN UPDATE SRO_VT_ACCOUNT..SK_Silk SET silk_own = silk_own + @SKT WHERE JID = @JID END
IF @SGT IS NOT NULL OR @SGT != 0 BEGIN UPDATE SRO_VT_ACCOUNT..SK_Silk SET silk_gift = silk_gift + @SGT WHERE JID = @JID END
IF @SPT IS NOT NULL OR @SPT != 0 BEGIN UPDATE SRO_VT_ACCOUNT..SK_Silk SET silk_point = silk_point + @SPT WHERE JID = @JID END
IF @GT IS NOT NULL OR @GT != 0 BEGIN UPDATE SRO_VT_SHARD.._Char SET RemainGold = RemainGold + @GT END
IF @GLT IS NOT NULL OR @GLT != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_MALL_GLOBAL_CHATTING',@GLT,0 END
IF @RET IS NOT NULL OR @RET != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_MALL_REVERSE_RETURN_SCROLL',@RET,0 END
IF @RST IS NOT NULL OR @RST != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_MALL_RESURRECTION_100P_SCROLL',@RST,0 END
IF @HNT IS NOT NULL OR @HNT != 0 BEGIN
IF @CampID IS NULL or @CampID = 0
BEGIN EXEC SRO_VT_SHARD.._TRAINING_CAMP_CREATE @CharID END
ELSE IF @CampID IS NOT NULL or @CampID != 0 BEGIN
Update SRO_VT_SHARD.._TrainingCamp SET GraduateCount = GraduateCount +1 , EvaluationPoint = EvaluationPoint +1 WHERE ID = @CampID END END
END
--Thief
IF @JT = 2 AND @CL = @RL
BEGIN
IF @CCF IS NOT NULL OR @CCF != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_ETC_SD_TOKEN_01',@CCF,0 END
IF @ICF IS NOT NULL OR @ICF != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_ETC_SD_TOKEN_02',@ICF,0 END
IF @SCF IS NOT NULL OR @SCF != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_ETC_SD_TOKEN_03',@SCF,0 END
IF @GCF IS NOT NULL OR @GCF != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_ETC_SD_TOKEN_04',@GCF,0 END
IF @ACF IS NOT NULL OR @ACF != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_ETC_ARENA_COIN',@ACF,0 END
IF @SKF IS NOT NULL OR @SKF != 0 BEGIN UPDATE SRO_VT_ACCOUNT..SK_Silk SET silk_own = silk_own + @SKF WHERE JID = @JID END
IF @SGF IS NOT NULL OR @SGF != 0 BEGIN UPDATE SRO_VT_ACCOUNT..SK_Silk SET silk_gift = silk_gift + @SGF WHERE JID = @JID END
IF @SPF IS NOT NULL OR @SPF != 0 BEGIN UPDATE SRO_VT_ACCOUNT..SK_Silk SET silk_point = silk_point + @SPF WHERE JID = @JID END
IF @GF IS NOT NULL OR @GF != 0 BEGIN UPDATE SRO_VT_SHARD.._Char SET RemainGold = RemainGold + @GF END
IF @GLF IS NOT NULL OR @GLF != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_MALL_GLOBAL_CHATTING',@GLF,0 END
IF @REF IS NOT NULL OR @REF != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_MALL_REVERSE_RETURN_SCROLL',@REF,0 END
IF @RSF IS NOT NULL OR @RSF != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_MALL_RESURRECTION_100P_SCROLL',@RSF,0 END
IF @HNF IS NOT NULL OR @HNF != 0 BEGIN IF @CampID IS NULL or @CampID = 0 BEGIN EXEC SRO_VT_SHARD.._TRAINING_CAMP_CREATE @CharID END
ELSE IF @CampID IS NOT NULL or @CampID != 0 BEGIN
Update SRO_VT_SHARD.._TrainingCamp SET GraduateCount = GraduateCount +1 , EvaluationPoint = EvaluationPoint +1 WHERE ID = @CampID END END
END
--Hunter
IF @JT = 3 AND @CL = @RL
BEGIN
IF @CCH IS NOT NULL OR @CCH != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_ETC_SD_TOKEN_01',@CCH,0 END
IF @ICH IS NOT NULL OR @ICH != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_ETC_SD_TOKEN_02',@ICH,0 END
IF @SCH IS NOT NULL OR @SCH != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_ETC_SD_TOKEN_03',@SCH,0 END
IF @GCH IS NOT NULL OR @GCH != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_ETC_SD_TOKEN_04',@GCH,0 END
IF @ACH IS NOT NULL OR @ACH != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_ETC_ARENA_COIN',@ACH,0 END
IF @SKH IS NOT NULL OR @SKH != 0 BEGIN UPDATE SRO_VT_ACCOUNT..SK_Silk SET silk_own = silk_own + @SKH WHERE JID = @JID END
IF @SGH IS NOT NULL OR @SGH != 0 BEGIN UPDATE SRO_VT_ACCOUNT..SK_Silk SET silk_gift = silk_gift + @SGH WHERE JID = @JID END
IF @SPH IS NOT NULL OR @SPH != 0 BEGIN UPDATE SRO_VT_ACCOUNT..SK_Silk SET silk_point = silk_point + @SPH WHERE JID = @JID END
IF @GH IS NOT NULL OR @GH != 0 BEGIN UPDATE SRO_VT_SHARD.._Char SET RemainGold = RemainGold + @GH END
IF @GLH IS NOT NULL OR @GLH != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_MALL_GLOBAL_CHATTING',@GLH,0 END
IF @REH IS NOT NULL OR @REH != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_MALL_REVERSE_RETURN_SCROLL',@REH,0 END
IF @RSH IS NOT NULL OR @RSH != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_MALL_RESURRECTION_100P_SCROLL',@RSH,0 END
IF @HNH IS NOT NULL OR @HNH != 0 BEGIN
IF @CampID IS NULL or @CampID = 0 BEGIN EXEC SRO_VT_SHARD.._TRAINING_CAMP_CREATE @CharID END
ELSE IF @CampID IS NOT NULL or @CampID != 0 BEGIN
Update SRO_VT_SHARD.._TrainingCamp SET GraduateCount = GraduateCount +1 , EvaluationPoint = EvaluationPoint +1 WHERE ID = @CampID END END
END
UPDATE SRO_VT_SHARD.._CharTriJob SET Contribution = 0 WHERE CHarID = @CharID
END

-- _AddLogChar --

USE [SRO_VT_LOG]
GO
/****** Object: StoredProcedure [dbo].[_AddLogChar] Script Date: 5/19/2021 8:20:13 AM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

ALTER procedure [dbo].[_AddLogChar]
@CharID int,
@EventID tinyint,
@Data1 int,
@Data2 int,
@strPos varchar(64),
@Desc varchar(128)
as
declare @len_pos int
declare @len_desc int
set @len_pos = len(@strPos)
set @len_desc = len(@Desc)
if (@len_pos > 0 and @len_desc > 0)
begin
return -1
end
else if (@len_pos > 0 and @len_desc = 0)
begin
return -2
end
else if (@len_pos = 0 and @len_desc > 0)
begin
return -3
end
else
begin
return -4
end

-- Trade Coin
IF @EventID = 6
BEGIN
EXEC _JayTradingReward @CharID
END

--_AddLogItem --

USE [SRO_VT_LOG]
GO
/****** Object: StoredProcedure [dbo].[_AddLogItem] Script Date: 5/19/2021 8:20:25 AM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

-------------------------------------------------------------------------------------------------------------------
-- Step 2
-- ±âأپ¸ ¾أ†أ€أŒأ…أ› ·أژ±× أ€أ”·أ‚ Stored procedure ¼أ¶أپ¤
-- DataBase : Shard Log
ALTER procedure [dbo].[_AddLogItem]
@CharID int,
@ItemRefID int,
@ItemSerial bigint,
@dwData int,
@TargetStorage tinyint,
@Operation tinyint,
@Slot_From tinyint,
@Slot_To tinyint,
@EventPos varchar(64),
@strDesc varchar(128),
@Gold bigint -- #ifdef EXTEND_GOLD_TYPE »ؤںأ€أ”
as
declare @len_pos int
declare @len_desc int
set @len_pos = len(@EventPos)
set @len_desc = len(@strDesc)
if (@len_pos > 0 and @len_desc > 0)
begin
return -1
end
else if (@len_pos > 0 and @len_desc = 0)
begin
return -1
end
else if (@len_pos = 0 and @len_desc > 0)
begin
return -1
end
else if (@len_pos = 0 and @len_desc = 0)
begin
return -1
end
-- أ€¯·أ، ¾أ†أ€أŒأ…أ› ±¸أ€أ”أ€أŒ¸é!
-- #define LOG_ITEMEVENT_BUY_CASHITEM (BYTE)35
if (@Operation = 35)
begin
return -1
end

-- Thief anti cheat

IF (@Operation = 41)
BEGIN
IF (@ItemRefID = 2128) -- Bandit den return scroll (ITEM_ETC_SCROLL_RETURN_THIEFDEN_01), will work only when MaxStack is 1
BEGIN
/*
* Get latest region of character
*/
DECLARE @IsBattleField BIT
SELECT @IsBattleField = IsBattleField
FROM [SRO_VT_SHARD].[dbo].[_Char]
INNER JOIN [SRO_VT_SHARD].[dbo].[_RefRegion]
ON [SRO_VT_SHARD].[dbo].[_Char].LatestRegion = [SRO_VT_SHARD].[dbo].[_RefRegion].wRegionID
WHERE [SRO_VT_SHARD].[dbo].[_Char].CharID = @CharID
/*
* Scroll is used inside town
*/
IF (@IsBattleField = 0)
BEGIN
DECLARE @COSID BIGINT
DECLARE @ReFCharID INT
DECLARE @TypeID4 INT
/*
* Get any summoned COS by current character
*
* It's actually fine not to use CURSOR, so far I noticed that any summoned COS
* won't set "OwnerCharID", except for transport COS.
* But just to be sure, I put CURSOR in use.
*/
SET NOCOUNT ON;
DECLARE CurCOS CURSOR FOR SELECT ID, RefCharID FROM [SRO_VT_SHARD].[dbo].[_CharCOS] WHERE OwnerCharID = @CharID ORDER BY ID ASC;
OPEN CurCOS;
FETCH NEXT FROM CurCOS INTO @COSID, @ReFCharID;
WHILE @@FETCH_STATUS = 0
BEGIN
SELECT @TypeID4 = TypeID4 FROM [SRO_VT_SHARD].[dbo].[_RefObjCommon] WHERE ID = @ReFCharID
/*
* If current COS is a transport COS, erase all items
* TypeID4 = 2 = Transport COS
*/
IF (@TypeID4 = 2)
BEGIN
UPDATE [SRO_VT_SHARD].[dbo].[_InvCOS] SET ItemID = 0 WHERE COSID = @COSID
END
FETCH NEXT FROM CurCOS INTO @COSID, @ReFCharID;
END;
CLOSE CurCOS;
DEALLOCATE CurCOS;
END
END
END

في عندي ف ال Procedure جايب ب المنظر دا invalid column name و دا اللي اعتقد مسبب مشكله
https://www13.0zz0.com/2021/05/19/09/256088178.png

Kyuubi
19-05-2021, 09:37 AM
طيب انا في الوقت الحالي عملت كل ال contributions
https://www5.0zz0.com/2021/05/19/09/395100137.png
و برضو مش بيجي اي reward
و دا باقي ال Query's اللي عملتها و معموله ب المنظر دا
-- _JayTradingReward --
USE [SRO_VT_LOG]
GO
/****** Object: StoredProcedure [dbo].[_JayTradingReward] Script Date: 5/19/2021 8:18:58 AM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: Jayden
-- Create date: 10-10-2016
-- Description: Giving reward after trade
-- =============================================
ALTER PROCEDURE [dbo].[_JayTradingReward]
@CharID INT
AS
BEGIN
SET NOCOUNT ON;
SET XACT_ABORT ON;
--DECLARES
DECLARE @CL INT, @JID int,@JT TINYINT,@CN varchar(128),@RL int,@CNT real,@DCT real,@DCF real,@DCH real,@CCT int,@CCF int,@CCH int,@ICT int,@ICF int,
@ICH int,@SCT int,@SCF int,@SCH int,@GCT int,@GCF int,@GCH int,@ACT int,@ACF int,@ACH int,@SKT int,@SKF int,@SKH int,@SGT int,@SGF int,
@SGH int,@SPT int,@SPF int,@SPH int,@GT int,@GF int,@GH int,@GLT int,@GLF int,@GLH int,@RET int,@REF int,@REH int,@RST int,@RSF int,@RSH int,@HNT int,@HNF int,@HNH int
DECLARE @CampID int = (SELECT CampID from SRO_VT_SHARD.._TrainingCampMember WHERE CharID = @CharID)
SELECT @CN = Charname16 FROM SRO_VT_SHARD.dbo._Char WHERE CharID = @CharID
SELECT @CL = C.CurLevel,@JID = U.UserJID,@JT = J.JobType,@CNT = J.Contribution
FROM SRO_VT_SHARD.._Char C INNER JOIN SRO_VT_SHARD.._CharTrijob J ON J.CharID = C.CharID
INNER JOIN SRO_VT_SHARD.._User U ON U.CharID = C.CharID WHERE C.CharID = @CharID
/*Not any shit*/
IF @JT = 0 BEGIN RETURN END ELSE
DECLARE @Star int
/* Calculating Shit */
--Trader
IF @JT = 1
BEGIN
DECLARE @DCT1 real = (SELECT DefaultContributionTrader FROM _JayTradingConfig WHERE Star = 1)
, @DCT2 real = (SELECT DefaultContributionTrader FROM _JayTradingConfig WHERE Star = 2)
, @DCT3 real = (SELECT DefaultContributionTrader FROM _JayTradingConfig WHERE Star = 3)
, @DCT4 real = (SELECT DefaultContributionTrader FROM _JayTradingConfig WHERE Star = 4)
, @DCT5 real = (SELECT DefaultContributionTrader FROM _JayTradingConfig WHERE Star = 5)
BEGIN
IF @CNT <= @DCT1 BEGIN SET @Star = 1 END
ELSE IF @CNT <= @DCT2 and @CNT > @DCT1 BEGIN SET @Star = 2 END
ELSE IF @CNT <= @DCT3 and @CNT > @DCT2 BEGIN SET @Star = 3 END
ELSE IF @CNT <= @DCT4 and @CNT > @DCT3 BEGIN SET @Star = 4 END
ELSE IF @CNT <= @DCT5 and @CNT > @DCT4 BEGIN SET @Star = 5 END
END END
-- Thief
ELSE IF @JT = 1
BEGIN
DECLARE @DCF1 real = (SELECT DefaultContributionThief FROM _JayTradingConfig WHERE Star = 1)
, @DCF2 real = (SELECT DefaultContributionThief FROM _JayTradingConfig WHERE Star = 2)
, @DCF3 real = (SELECT DefaultContributionThief FROM _JayTradingConfig WHERE Star = 3)
, @DCF4 real = (SELECT DefaultContributionThief FROM _JayTradingConfig WHERE Star = 4)
, @DCF5 real = (SELECT DefaultContributionThief FROM _JayTradingConfig WHERE Star = 5)
BEGIN
IF @CNT <= @DCF1 BEGIN SET @Star = 1 END
ELSE IF @CNT <= @DCF2 and @CNT > @DCF1 BEGIN SET @Star = 2 END
ELSE IF @CNT <= @DCF3 and @CNT > @DCF2 BEGIN SET @Star = 3 END
ELSE IF @CNT <= @DCF4 and @CNT > @DCF3 BEGIN SET @Star = 4 END
ELSE IF @CNT <= @DCF5 and @CNT > @DCF4 BEGIN SET @Star = 5 END
END END
-- Hunter
ELSE IF @JT = 1
BEGIN
DECLARE @DCH1 real = (SELECT DefaultContributionHunter FROM _JayTradingConfig WHERE Star = 1)
, @DCH2 real = (SELECT DefaultContributionHunter FROM _JayTradingConfig WHERE Star = 2)
, @DCH3 real = (SELECT DefaultContributionHunter FROM _JayTradingConfig WHERE Star = 3)
, @DCH4 real = (SELECT DefaultContributionHunter FROM _JayTradingConfig WHERE Star = 4)
, @DCH5 real = (SELECT DefaultContributionHunter FROM _JayTradingConfig WHERE Star = 5)
BEGIN
IF @CNT <= @DCH1 BEGIN SET @Star = 1 END
ELSE IF @CNT <= @DCH2 and @CNT > @DCH1 BEGIN SET @Star = 2 END
ELSE IF @CNT <= @DCH3 and @CNT > @DCH2 BEGIN SET @Star = 3 END
ELSE IF @CNT <= @DCH4 and @CNT > @DCH3 BEGIN SET @Star = 4 END
ELSE IF @CNT <= @DCH5 and @CNT > @DCH4 BEGIN SET @Star = 5 END
END END
SELECT @RL = ReqLevel,@DCT = DefaultContributionTrader,@DCF=DefaultContribution Thief,@DCH=DefaultContributionHunter
,@CCT=CopperCoinTrader,@CCF=CopperCoinThief,@CCH=C opperCoinHunter,@ICT=IronCoinTrader,@ICF=IronCoinT hief,@ICH=IronCoinHunter
,@SCT=SilverCoinTrader,@SCF=SilverCoinThief,@SCH=S ilverCoinHunter,@GCT=GoldCoinTrader,@GCF=GoldCoinT hief
,@GCH=GoldCoinHunter,@ACT=ArenaCoinTrader,@ACF=Are naCoinThief,@ACH=ArenaCoinHunter,@SKT=SilkTrader,@ SKF=SilkThief
,@SKH=SilkHunter,@SGT=SilkGiftTrader,@SGF=SilkGift Thief,@SGH=SilkGiftHunter,@SPT=SilkPointTrader,@SP F=SilkPointThief
,@SPH=SilkPointHunter,@GT=GoldTrader,@GF=GoldThief ,@GH=GoldHunter,@GLT=GlobalTrader,@GLF=GlobalThief
,@GLH=GlobalHunter,@RET=ReverseTrader,@REF=Reverse Thief,@REH=ReverseHunter,@RST=ResurrectionTrader
,@RSF=ResurrectionThief,@RSH=ResurrectionHunter,@H NT=HonorPointTrader,@HNF=HonorPointThief,@HNH=Hono rPointHunter
FROM _JayTradingConfig WHERE Star = @Star

/* Rewarding */
-- Trader
IF @JT = 1 AND @CL = @RL
BEGIN
IF @CCT IS NOT NULL OR @CCT != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_ETC_SD_TOKEN_01',@CCT,0 END
IF @ICT IS NOT NULL OR @ICT != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_ETC_SD_TOKEN_02',@ICT,0 END
IF @SCT IS NOT NULL OR @SCT != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_ETC_SD_TOKEN_03',@SCT,0 END
IF @GCT IS NOT NULL OR @GCT != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_ETC_SD_TOKEN_04',@GCT,0 END
IF @ACT IS NOT NULL OR @ACT != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_ETC_ARENA_COIN',@ACT,0 END
IF @SKT IS NOT NULL OR @SKT != 0 BEGIN UPDATE SRO_VT_ACCOUNT..SK_Silk SET silk_own = silk_own + @SKT WHERE JID = @JID END
IF @SGT IS NOT NULL OR @SGT != 0 BEGIN UPDATE SRO_VT_ACCOUNT..SK_Silk SET silk_gift = silk_gift + @SGT WHERE JID = @JID END
IF @SPT IS NOT NULL OR @SPT != 0 BEGIN UPDATE SRO_VT_ACCOUNT..SK_Silk SET silk_point = silk_point + @SPT WHERE JID = @JID END
IF @GT IS NOT NULL OR @GT != 0 BEGIN UPDATE SRO_VT_SHARD.._Char SET RemainGold = RemainGold + @GT END
IF @GLT IS NOT NULL OR @GLT != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_MALL_GLOBAL_CHATTING',@GLT,0 END
IF @RET IS NOT NULL OR @RET != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_MALL_REVERSE_RETURN_SCROLL',@RET,0 END
IF @RST IS NOT NULL OR @RST != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_MALL_RESURRECTION_100P_SCROLL',@RST,0 END
IF @HNT IS NOT NULL OR @HNT != 0 BEGIN
IF @CampID IS NULL or @CampID = 0
BEGIN EXEC SRO_VT_SHARD.._TRAINING_CAMP_CREATE @CharID END
ELSE IF @CampID IS NOT NULL or @CampID != 0 BEGIN
Update SRO_VT_SHARD.._TrainingCamp SET GraduateCount = GraduateCount +1 , EvaluationPoint = EvaluationPoint +1 WHERE ID = @CampID END END
END
--Thief
IF @JT = 2 AND @CL = @RL
BEGIN
IF @CCF IS NOT NULL OR @CCF != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_ETC_SD_TOKEN_01',@CCF,0 END
IF @ICF IS NOT NULL OR @ICF != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_ETC_SD_TOKEN_02',@ICF,0 END
IF @SCF IS NOT NULL OR @SCF != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_ETC_SD_TOKEN_03',@SCF,0 END
IF @GCF IS NOT NULL OR @GCF != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_ETC_SD_TOKEN_04',@GCF,0 END
IF @ACF IS NOT NULL OR @ACF != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_ETC_ARENA_COIN',@ACF,0 END
IF @SKF IS NOT NULL OR @SKF != 0 BEGIN UPDATE SRO_VT_ACCOUNT..SK_Silk SET silk_own = silk_own + @SKF WHERE JID = @JID END
IF @SGF IS NOT NULL OR @SGF != 0 BEGIN UPDATE SRO_VT_ACCOUNT..SK_Silk SET silk_gift = silk_gift + @SGF WHERE JID = @JID END
IF @SPF IS NOT NULL OR @SPF != 0 BEGIN UPDATE SRO_VT_ACCOUNT..SK_Silk SET silk_point = silk_point + @SPF WHERE JID = @JID END
IF @GF IS NOT NULL OR @GF != 0 BEGIN UPDATE SRO_VT_SHARD.._Char SET RemainGold = RemainGold + @GF END
IF @GLF IS NOT NULL OR @GLF != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_MALL_GLOBAL_CHATTING',@GLF,0 END
IF @REF IS NOT NULL OR @REF != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_MALL_REVERSE_RETURN_SCROLL',@REF,0 END
IF @RSF IS NOT NULL OR @RSF != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_MALL_RESURRECTION_100P_SCROLL',@RSF,0 END
IF @HNF IS NOT NULL OR @HNF != 0 BEGIN IF @CampID IS NULL or @CampID = 0 BEGIN EXEC SRO_VT_SHARD.._TRAINING_CAMP_CREATE @CharID END
ELSE IF @CampID IS NOT NULL or @CampID != 0 BEGIN
Update SRO_VT_SHARD.._TrainingCamp SET GraduateCount = GraduateCount +1 , EvaluationPoint = EvaluationPoint +1 WHERE ID = @CampID END END
END
--Hunter
IF @JT = 3 AND @CL = @RL
BEGIN
IF @CCH IS NOT NULL OR @CCH != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_ETC_SD_TOKEN_01',@CCH,0 END
IF @ICH IS NOT NULL OR @ICH != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_ETC_SD_TOKEN_02',@ICH,0 END
IF @SCH IS NOT NULL OR @SCH != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_ETC_SD_TOKEN_03',@SCH,0 END
IF @GCH IS NOT NULL OR @GCH != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_ETC_SD_TOKEN_04',@GCH,0 END
IF @ACH IS NOT NULL OR @ACH != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_ETC_ARENA_COIN',@ACH,0 END
IF @SKH IS NOT NULL OR @SKH != 0 BEGIN UPDATE SRO_VT_ACCOUNT..SK_Silk SET silk_own = silk_own + @SKH WHERE JID = @JID END
IF @SGH IS NOT NULL OR @SGH != 0 BEGIN UPDATE SRO_VT_ACCOUNT..SK_Silk SET silk_gift = silk_gift + @SGH WHERE JID = @JID END
IF @SPH IS NOT NULL OR @SPH != 0 BEGIN UPDATE SRO_VT_ACCOUNT..SK_Silk SET silk_point = silk_point + @SPH WHERE JID = @JID END
IF @GH IS NOT NULL OR @GH != 0 BEGIN UPDATE SRO_VT_SHARD.._Char SET RemainGold = RemainGold + @GH END
IF @GLH IS NOT NULL OR @GLH != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_MALL_GLOBAL_CHATTING',@GLH,0 END
IF @REH IS NOT NULL OR @REH != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_MALL_REVERSE_RETURN_SCROLL',@REH,0 END
IF @RSH IS NOT NULL OR @RSH != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_MALL_RESURRECTION_100P_SCROLL',@RSH,0 END
IF @HNH IS NOT NULL OR @HNH != 0 BEGIN
IF @CampID IS NULL or @CampID = 0 BEGIN EXEC SRO_VT_SHARD.._TRAINING_CAMP_CREATE @CharID END
ELSE IF @CampID IS NOT NULL or @CampID != 0 BEGIN
Update SRO_VT_SHARD.._TrainingCamp SET GraduateCount = GraduateCount +1 , EvaluationPoint = EvaluationPoint +1 WHERE ID = @CampID END END
END
UPDATE SRO_VT_SHARD.._CharTriJob SET Contribution = 0 WHERE CHarID = @CharID
END

-- _AddLogChar --

USE [SRO_VT_LOG]
GO
/****** Object: StoredProcedure [dbo].[_AddLogChar] Script Date: 5/19/2021 8:20:13 AM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

ALTER procedure [dbo].[_AddLogChar]
@CharID int,
@EventID tinyint,
@Data1 int,
@Data2 int,
@strPos varchar(64),
@Desc varchar(128)
as
declare @len_pos int
declare @len_desc int
set @len_pos = len(@strPos)
set @len_desc = len(@Desc)
if (@len_pos > 0 and @len_desc > 0)
begin
return -1
end
else if (@len_pos > 0 and @len_desc = 0)
begin
return -2
end
else if (@len_pos = 0 and @len_desc > 0)
begin
return -3
end
else
begin
return -4
end

-- Trade Coin
IF @EventID = 6
BEGIN
EXEC _JayTradingReward @CharID
END

--_AddLogItem --

USE [SRO_VT_LOG]
GO
/****** Object: StoredProcedure [dbo].[_AddLogItem] Script Date: 5/19/2021 8:20:25 AM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

-------------------------------------------------------------------------------------------------------------------
-- Step 2
-- ±âأپ¸ ¾أ†أ€أŒأ…أ› ·أژ±× أ€أ”·أ‚ Stored procedure ¼أ¶أپ¤
-- DataBase : Shard Log
ALTER procedure [dbo].[_AddLogItem]
@CharID int,
@ItemRefID int,
@ItemSerial bigint,
@dwData int,
@TargetStorage tinyint,
@Operation tinyint,
@Slot_From tinyint,
@Slot_To tinyint,
@EventPos varchar(64),
@strDesc varchar(128),
@Gold bigint -- #ifdef EXTEND_GOLD_TYPE »ؤںأ€أ”
as
declare @len_pos int
declare @len_desc int
set @len_pos = len(@EventPos)
set @len_desc = len(@strDesc)
if (@len_pos > 0 and @len_desc > 0)
begin
return -1
end
else if (@len_pos > 0 and @len_desc = 0)
begin
return -1
end
else if (@len_pos = 0 and @len_desc > 0)
begin
return -1
end
else if (@len_pos = 0 and @len_desc = 0)
begin
return -1
end
-- أ€¯·أ، ¾أ†أ€أŒأ…أ› ±¸أ€أ”أ€أŒ¸é!
-- #define LOG_ITEMEVENT_BUY_CASHITEM (BYTE)35
if (@Operation = 35)
begin
return -1
end

-- Thief anti cheat

IF (@Operation = 41)
BEGIN
IF (@ItemRefID = 2128) -- Bandit den return scroll (ITEM_ETC_SCROLL_RETURN_THIEFDEN_01), will work only when MaxStack is 1
BEGIN
/*
* Get latest region of character
*/
DECLARE @IsBattleField BIT
SELECT @IsBattleField = IsBattleField
FROM [SRO_VT_SHARD].[dbo].[_Char]
INNER JOIN [SRO_VT_SHARD].[dbo].[_RefRegion]
ON [SRO_VT_SHARD].[dbo].[_Char].LatestRegion = [SRO_VT_SHARD].[dbo].[_RefRegion].wRegionID
WHERE [SRO_VT_SHARD].[dbo].[_Char].CharID = @CharID
/*
* Scroll is used inside town
*/
IF (@IsBattleField = 0)
BEGIN
DECLARE @COSID BIGINT
DECLARE @ReFCharID INT
DECLARE @TypeID4 INT
/*
* Get any summoned COS by current character
*
* It's actually fine not to use CURSOR, so far I noticed that any summoned COS
* won't set "OwnerCharID", except for transport COS.
* But just to be sure, I put CURSOR in use.
*/
SET NOCOUNT ON;
DECLARE CurCOS CURSOR FOR SELECT ID, RefCharID FROM [SRO_VT_SHARD].[dbo].[_CharCOS] WHERE OwnerCharID = @CharID ORDER BY ID ASC;
OPEN CurCOS;
FETCH NEXT FROM CurCOS INTO @COSID, @ReFCharID;
WHILE @@FETCH_STATUS = 0
BEGIN
SELECT @TypeID4 = TypeID4 FROM [SRO_VT_SHARD].[dbo].[_RefObjCommon] WHERE ID = @ReFCharID
/*
* If current COS is a transport COS, erase all items
* TypeID4 = 2 = Transport COS
*/
IF (@TypeID4 = 2)
BEGIN
UPDATE [SRO_VT_SHARD].[dbo].[_InvCOS] SET ItemID = 0 WHERE COSID = @COSID
END
FETCH NEXT FROM CurCOS INTO @COSID, @ReFCharID;
END;
CLOSE CurCOS;
DEALLOCATE CurCOS;
END
END
END

في عندي ف ال Procedure جايب ب المنظر دا invalid column name و دا اللي اعتقد مسبب مشكله
https://www13.0zz0.com/2021/05/19/09/256088178.png

خد بالك من اسم الداتا علشان معموله SRO_VT_LOG

وفي كويري انك تعمل التابل هو ده العملك المشكله
USE SRO_VT_SHARDLOG
GO

/****** Object: Table [dbo].[_JayTradingConfig] Script Date: 10/10/2016 7:36:47 AM ******/
SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO

CREATE TABLE [dbo].[_JayTradingConfig](
[Star] [int] NULL,
[ReqLevel] [int] NULL,
[DefaultContributionTrader] [real] NULL,
[DefaultContributionThief] [real] NULL,
[DefaultContributionHunter] [real] NULL,
[CopperCoinTrader] [int] NULL,
[CopperCoinThief] [int] NULL,
[CopperCoinHunter] [int] NULL,
[IronCoinTrader] [int] NULL,
[IronCoinThief] [int] NULL,
[IronCoinHunter] [int] NULL,
[SilverCoinTrader] [int] NULL,
[SilverCoinThief] [int] NULL,
[SilverCoinHunter] [int] NULL,
[GoldCoinTrader] [int] NULL,
[GoldCoinThief] [int] NULL,
[GoldCoinHunter] [int] NULL,
[ArenaCoinTrader] [int] NULL,
[ArenaCoinThief] [int] NULL,
[ArenaCoinHunter] [int] NULL,
[SilkTrader] [int] NULL,
[SilkThief] [int] NULL,
[SilkHunter] [int] NULL,
[SilkGiftTrader] [int] NULL,
[SilkGiftThief] [int] NULL,
[SilkGiftHunter] [int] NULL,
[SilkPointTrader] [int] NULL,
[SilkPointThief] [int] NULL,
[SilkPointHunter] [int] NULL,
[GoldTrader] [int] NULL,
[GoldThief] [int] NULL,
[GoldHunter] [int] NULL,
[GlobalTrader] [int] NULL,
[GlobalThief] [int] NULL,
[GlobalHunter] [int] NULL,
[ReverseTrader] [int] NULL,
[ReverseThief] [int] NULL,
[ReverseHunter] [int] NULL,
[ResurrectionTrader] [int] NULL,
[ResurrectionThief] [int] NULL,
[ResurrectionHunter] [int] NULL,
[HonorPointTrader] [int] NULL,
[HonorPointThief] [int] NULL,
[HonorPointHunter] [int] NULL
) ON [PRIMARY]

GO

وبعد ماتعمل التابل اضرب الكويري ده
USE [SRO_VT_LOG]
GO
/****** Object: StoredProcedure [dbo].[_JayTradingReward] Script Date: 5/19/2021 8:18:58 AM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: Jayden
-- Create date: 10-10-2016
-- Description: Giving reward after trade
-- =============================================
ALTER PROCEDURE [dbo].[_JayTradingReward]
@CharID INT
AS
BEGIN
SET NOCOUNT ON;
SET XACT_ABORT ON;
--DECLARES
DECLARE @CL INT, @JID int,@JT TINYINT,@CN varchar(128),@RL int,@CNT real,@DCT real,@DCF real,@DCH real,@CCT int,@CCF int,@CCH int,@ICT int,@ICF int,
@ICH int,@SCT int,@SCF int,@SCH int,@GCT int,@GCF int,@GCH int,@ACT int,@ACF int,@ACH int,@SKT int,@SKF int,@SKH int,@SGT int,@SGF int,
@SGH int,@SPT int,@SPF int,@SPH int,@GT int,@GF int,@GH int,@GLT int,@GLF int,@GLH int,@RET int,@REF int,@REH int,@RST int,@RSF int,@RSH int,@HNT int,@HNF int,@HNH int
DECLARE @CampID int = (SELECT CampID from SRO_VT_SHARD.._TrainingCampMember WHERE CharID = @CharID)
SELECT @CN = Charname16 FROM SRO_VT_SHARD.dbo._Char WHERE CharID = @CharID
SELECT @CL = C.CurLevel,@JID = U.UserJID,@JT = J.JobType,@CNT = J.Contribution
FROM SRO_VT_SHARD.._Char C INNER JOIN SRO_VT_SHARD.._CharTrijob J ON J.CharID = C.CharID
INNER JOIN SRO_VT_SHARD.._User U ON U.CharID = C.CharID WHERE C.CharID = @CharID
/*Not any shit*/
IF @JT = 0 BEGIN RETURN END ELSE
DECLARE @Star int
/* Calculating Shit */
--Trader
IF @JT = 1
BEGIN
DECLARE @DCT1 real = (SELECT DefaultContributionTrader FROM _JayTradingConfig WHERE Star = 1)
, @DCT2 real = (SELECT DefaultContributionTrader FROM _JayTradingConfig WHERE Star = 2)
, @DCT3 real = (SELECT DefaultContributionTrader FROM _JayTradingConfig WHERE Star = 3)
, @DCT4 real = (SELECT DefaultContributionTrader FROM _JayTradingConfig WHERE Star = 4)
, @DCT5 real = (SELECT DefaultContributionTrader FROM _JayTradingConfig WHERE Star = 5)
BEGIN
IF @CNT <= @DCT1 BEGIN SET @Star = 1 END
ELSE IF @CNT <= @DCT2 and @CNT > @DCT1 BEGIN SET @Star = 2 END
ELSE IF @CNT <= @DCT3 and @CNT > @DCT2 BEGIN SET @Star = 3 END
ELSE IF @CNT <= @DCT4 and @CNT > @DCT3 BEGIN SET @Star = 4 END
ELSE IF @CNT <= @DCT5 and @CNT > @DCT4 BEGIN SET @Star = 5 END
END END
-- Thief
ELSE IF @JT = 1
BEGIN
DECLARE @DCF1 real = (SELECT DefaultContributionThief FROM _JayTradingConfig WHERE Star = 1)
, @DCF2 real = (SELECT DefaultContributionThief FROM _JayTradingConfig WHERE Star = 2)
, @DCF3 real = (SELECT DefaultContributionThief FROM _JayTradingConfig WHERE Star = 3)
, @DCF4 real = (SELECT DefaultContributionThief FROM _JayTradingConfig WHERE Star = 4)
, @DCF5 real = (SELECT DefaultContributionThief FROM _JayTradingConfig WHERE Star = 5)
BEGIN
IF @CNT <= @DCF1 BEGIN SET @Star = 1 END
ELSE IF @CNT <= @DCF2 and @CNT > @DCF1 BEGIN SET @Star = 2 END
ELSE IF @CNT <= @DCF3 and @CNT > @DCF2 BEGIN SET @Star = 3 END
ELSE IF @CNT <= @DCF4 and @CNT > @DCF3 BEGIN SET @Star = 4 END
ELSE IF @CNT <= @DCF5 and @CNT > @DCF4 BEGIN SET @Star = 5 END
END END
-- Hunter
ELSE IF @JT = 1
BEGIN
DECLARE @DCH1 real = (SELECT DefaultContributionHunter FROM _JayTradingConfig WHERE Star = 1)
, @DCH2 real = (SELECT DefaultContributionHunter FROM _JayTradingConfig WHERE Star = 2)
, @DCH3 real = (SELECT DefaultContributionHunter FROM _JayTradingConfig WHERE Star = 3)
, @DCH4 real = (SELECT DefaultContributionHunter FROM _JayTradingConfig WHERE Star = 4)
, @DCH5 real = (SELECT DefaultContributionHunter FROM _JayTradingConfig WHERE Star = 5)
BEGIN
IF @CNT <= @DCH1 BEGIN SET @Star = 1 END
ELSE IF @CNT <= @DCH2 and @CNT > @DCH1 BEGIN SET @Star = 2 END
ELSE IF @CNT <= @DCH3 and @CNT > @DCH2 BEGIN SET @Star = 3 END
ELSE IF @CNT <= @DCH4 and @CNT > @DCH3 BEGIN SET @Star = 4 END
ELSE IF @CNT <= @DCH5 and @CNT > @DCH4 BEGIN SET @Star = 5 END
END END
SELECT @RL = ReqLevel,@DCT = DefaultContributionTrader,@DCF=DefaultContribution Thief,@DCH=DefaultContributionHunter
,@CCT=CopperCoinTrader,@CCF=CopperCoinThief,@CCH=C opperCoinHunter,@ICT=IronCoinTrader,@ICF=IronCoinT hief,@ICH=IronCoinHunter
,@SCT=SilverCoinTrader,@SCF=SilverCoinThief,@SCH=S ilverCoinHunter,@GCT=GoldCoinTrader,@GCF=GoldCoinT hief
,@GCH=GoldCoinHunter,@ACT=ArenaCoinTrader,@ACF=Are naCoinThief,@ACH=ArenaCoinHunter,@SKT=SilkTrader,@ SKF=SilkThief
,@SKH=SilkHunter,@SGT=SilkGiftTrader,@SGF=SilkGift Thief,@SGH=SilkGiftHunter,@SPT=SilkPointTrader,@SP F=SilkPointThief
,@SPH=SilkPointHunter,@GT=GoldTrader,@GF=GoldThief ,@GH=GoldHunter,@GLT=GlobalTrader,@GLF=GlobalThief
,@GLH=GlobalHunter,@RET=ReverseTrader,@REF=Reverse Thief,@REH=ReverseHunter,@RST=ResurrectionTrader
,@RSF=ResurrectionThief,@RSH=ResurrectionHunter,@H NT=HonorPointTrader,@HNF=HonorPointThief,@HNH=Hono rPointHunter
FROM _JayTradingConfig WHERE Star = @Star

/* Rewarding */
-- Trader
IF @JT = 1 AND @CL = @RL
BEGIN
IF @CCT IS NOT NULL OR @CCT != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_ETC_SD_TOKEN_01',@CCT,0 END
IF @ICT IS NOT NULL OR @ICT != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_ETC_SD_TOKEN_02',@ICT,0 END
IF @SCT IS NOT NULL OR @SCT != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_ETC_SD_TOKEN_03',@SCT,0 END
IF @GCT IS NOT NULL OR @GCT != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_ETC_SD_TOKEN_04',@GCT,0 END
IF @ACT IS NOT NULL OR @ACT != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_ETC_ARENA_COIN',@ACT,0 END
IF @SKT IS NOT NULL OR @SKT != 0 BEGIN UPDATE SRO_VT_ACCOUNT..SK_Silk SET silk_own = silk_own + @SKT WHERE JID = @JID END
IF @SGT IS NOT NULL OR @SGT != 0 BEGIN UPDATE SRO_VT_ACCOUNT..SK_Silk SET silk_gift = silk_gift + @SGT WHERE JID = @JID END
IF @SPT IS NOT NULL OR @SPT != 0 BEGIN UPDATE SRO_VT_ACCOUNT..SK_Silk SET silk_point = silk_point + @SPT WHERE JID = @JID END
IF @GT IS NOT NULL OR @GT != 0 BEGIN UPDATE SRO_VT_SHARD.._Char SET RemainGold = RemainGold + @GT END
IF @GLT IS NOT NULL OR @GLT != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_MALL_GLOBAL_CHATTING',@GLT,0 END
IF @RET IS NOT NULL OR @RET != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_MALL_REVERSE_RETURN_SCROLL',@RET,0 END
IF @RST IS NOT NULL OR @RST != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_MALL_RESURRECTION_100P_SCROLL',@RST,0 END
IF @HNT IS NOT NULL OR @HNT != 0 BEGIN
IF @CampID IS NULL or @CampID = 0
BEGIN EXEC SRO_VT_SHARD.._TRAINING_CAMP_CREATE @CharID END
ELSE IF @CampID IS NOT NULL or @CampID != 0 BEGIN
Update SRO_VT_SHARD.._TrainingCamp SET GraduateCount = GraduateCount +1 , EvaluationPoint = EvaluationPoint +1 WHERE ID = @CampID END END
END
--Thief
IF @JT = 2 AND @CL = @RL
BEGIN
IF @CCF IS NOT NULL OR @CCF != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_ETC_SD_TOKEN_01',@CCF,0 END
IF @ICF IS NOT NULL OR @ICF != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_ETC_SD_TOKEN_02',@ICF,0 END
IF @SCF IS NOT NULL OR @SCF != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_ETC_SD_TOKEN_03',@SCF,0 END
IF @GCF IS NOT NULL OR @GCF != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_ETC_SD_TOKEN_04',@GCF,0 END
IF @ACF IS NOT NULL OR @ACF != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_ETC_ARENA_COIN',@ACF,0 END
IF @SKF IS NOT NULL OR @SKF != 0 BEGIN UPDATE SRO_VT_ACCOUNT..SK_Silk SET silk_own = silk_own + @SKF WHERE JID = @JID END
IF @SGF IS NOT NULL OR @SGF != 0 BEGIN UPDATE SRO_VT_ACCOUNT..SK_Silk SET silk_gift = silk_gift + @SGF WHERE JID = @JID END
IF @SPF IS NOT NULL OR @SPF != 0 BEGIN UPDATE SRO_VT_ACCOUNT..SK_Silk SET silk_point = silk_point + @SPF WHERE JID = @JID END
IF @GF IS NOT NULL OR @GF != 0 BEGIN UPDATE SRO_VT_SHARD.._Char SET RemainGold = RemainGold + @GF END
IF @GLF IS NOT NULL OR @GLF != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_MALL_GLOBAL_CHATTING',@GLF,0 END
IF @REF IS NOT NULL OR @REF != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_MALL_REVERSE_RETURN_SCROLL',@REF,0 END
IF @RSF IS NOT NULL OR @RSF != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_MALL_RESURRECTION_100P_SCROLL',@RSF,0 END
IF @HNF IS NOT NULL OR @HNF != 0 BEGIN IF @CampID IS NULL or @CampID = 0 BEGIN EXEC SRO_VT_SHARD.._TRAINING_CAMP_CREATE @CharID END
ELSE IF @CampID IS NOT NULL or @CampID != 0 BEGIN
Update SRO_VT_SHARD.._TrainingCamp SET GraduateCount = GraduateCount +1 , EvaluationPoint = EvaluationPoint +1 WHERE ID = @CampID END END
END
--Hunter
IF @JT = 3 AND @CL = @RL
BEGIN
IF @CCH IS NOT NULL OR @CCH != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_ETC_SD_TOKEN_01',@CCH,0 END
IF @ICH IS NOT NULL OR @ICH != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_ETC_SD_TOKEN_02',@ICH,0 END
IF @SCH IS NOT NULL OR @SCH != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_ETC_SD_TOKEN_03',@SCH,0 END
IF @GCH IS NOT NULL OR @GCH != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_ETC_SD_TOKEN_04',@GCH,0 END
IF @ACH IS NOT NULL OR @ACH != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_ETC_ARENA_COIN',@ACH,0 END
IF @SKH IS NOT NULL OR @SKH != 0 BEGIN UPDATE SRO_VT_ACCOUNT..SK_Silk SET silk_own = silk_own + @SKH WHERE JID = @JID END
IF @SGH IS NOT NULL OR @SGH != 0 BEGIN UPDATE SRO_VT_ACCOUNT..SK_Silk SET silk_gift = silk_gift + @SGH WHERE JID = @JID END
IF @SPH IS NOT NULL OR @SPH != 0 BEGIN UPDATE SRO_VT_ACCOUNT..SK_Silk SET silk_point = silk_point + @SPH WHERE JID = @JID END
IF @GH IS NOT NULL OR @GH != 0 BEGIN UPDATE SRO_VT_SHARD.._Char SET RemainGold = RemainGold + @GH END
IF @GLH IS NOT NULL OR @GLH != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_MALL_GLOBAL_CHATTING',@GLH,0 END
IF @REH IS NOT NULL OR @REH != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_MALL_REVERSE_RETURN_SCROLL',@REH,0 END
IF @RSH IS NOT NULL OR @RSH != 0 BEGIN exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CN,'ITEM_MALL_RESURRECTION_100P_SCROLL',@RSH,0 END
IF @HNH IS NOT NULL OR @HNH != 0 BEGIN
IF @CampID IS NULL or @CampID = 0 BEGIN EXEC SRO_VT_SHARD.._TRAINING_CAMP_CREATE @CharID END
ELSE IF @CampID IS NOT NULL or @CampID != 0 BEGIN
Update SRO_VT_SHARD.._TrainingCamp SET GraduateCount = GraduateCount +1 , EvaluationPoint = EvaluationPoint +1 WHERE ID = @CampID END END
END
UPDATE SRO_VT_SHARD.._CharTriJob SET Contribution = 0 WHERE CHarID = @CharID
END

DenDaryYy
19-05-2021, 09:37 AM
خد بالك من اسم الداتا علشان معموله SRO_VT_LOG

ايوه هي عندي SRO_VT_LOG

DenDaryYy
19-05-2021, 09:43 AM
وفي كويري انك تعمل التابل هو ده العملك المشكله
USE SRO_VT_SHARDLOG
GO

/****** Object: Table [dbo].[_JayTradingConfig] Script Date: 10/10/2016 7:36:47 AM ******/
SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO

CREATE TABLE [dbo].[_JayTradingConfig](
[Star] [int] NULL,
[ReqLevel] [int] NULL,
[DefaultContributionTrader] [real] NULL,
[DefaultContributionThief] [real] NULL,
[DefaultContributionHunter] [real] NULL,
[CopperCoinTrader] [int] NULL,
[CopperCoinThief] [int] NULL,
[CopperCoinHunter] [int] NULL,
[IronCoinTrader] [int] NULL,
[IronCoinThief] [int] NULL,
[IronCoinHunter] [int] NULL,
[SilverCoinTrader] [int] NULL,
[SilverCoinThief] [int] NULL,
[SilverCoinHunter] [int] NULL,
[GoldCoinTrader] [int] NULL,
[GoldCoinThief] [int] NULL,
[GoldCoinHunter] [int] NULL,
[ArenaCoinTrader] [int] NULL,
[ArenaCoinThief] [int] NULL,
[ArenaCoinHunter] [int] NULL,
[SilkTrader] [int] NULL,
[SilkThief] [int] NULL,
[SilkHunter] [int] NULL,
[SilkGiftTrader] [int] NULL,
[SilkGiftThief] [int] NULL,
[SilkGiftHunter] [int] NULL,
[SilkPointTrader] [int] NULL,
[SilkPointThief] [int] NULL,
[SilkPointHunter] [int] NULL,
[GoldTrader] [int] NULL,
[GoldThief] [int] NULL,
[GoldHunter] [int] NULL,
[GlobalTrader] [int] NULL,
[GlobalThief] [int] NULL,
[GlobalHunter] [int] NULL,
[ReverseTrader] [int] NULL,
[ReverseThief] [int] NULL,
[ReverseHunter] [int] NULL,
[ResurrectionTrader] [int] NULL,
[ResurrectionThief] [int] NULL,
[ResurrectionHunter] [int] NULL,
[HonorPointTrader] [int] NULL,
[HonorPointThief] [int] NULL,
[HonorPointHunter] [int] NULL
) ON [PRIMARY]

GO

ال table معمول و حاطت فيه كل ال contributions
https://www5.0zz0.com/2021/05/19/09/395100137.png

Kyuubi
19-05-2021, 09:55 AM
بس انا عملت التابل وجربت الكويري والكويري اشتغل شوف انت عامل التابل في ال LOG ؟

DenDaryYy
19-05-2021, 09:58 AM
بس انا عملت التابل وجربت الكويري والكويري اشتغل شوف انت عامل التابل في ال LOG ؟

في الوقت الحالي مفيش اي ايرور حاص ب ال sql بس برضو مش بيجي اي reward علي الاكونت نهائي

Kyuubi
20-05-2021, 09:14 AM
هو هتلاقي السيستم ذات نفسه هو البايظ