Register for your free account! | Forgot your password?

Go Back   elitepvpers > Popular Games > Silkroad Online > SRO Private Server
You last visited: Today at 00:46

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



i have big problem please help

Discussion on i have big problem please help within the SRO Private Server forum part of the Silkroad Online category.

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Jun 2009
Posts: 242
Received Thanks: 2
i have big problem please help

when i buy anythings from itemmall or npc get DC and when i back login i found my item but i need fix this DC please help
ashrafsadam2 is offline  
Old 12/09/2014, 14:24   #2
 
KingDollar's Avatar
 
elite*gold: 857
Join Date: Dec 2013
Posts: 857
Received Thanks: 679
try this
Code:
USE [SRO_VT_SHARD]
GO
/****** Object:  StoredProcedure [dbo].[_UPDATE_COST]    Script Date: 12/09/2014 15:23:48 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

--@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  
--  »óÁ¡°³Æí (ÃÖ¼±È£)  
--@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  
  
ALTER PROCEDURE [dbo].[_UPDATE_COST]  
	@Operation   		tinyint,  
	@CharID   		int,  
	@PaymentDevice  	int,  
	@PackageItemCodeName 	varchar(129),  
	@RemainGold   		bigint,  
	@OwnSilkToPay  		int,  
	@GiftSilkToPay  	int,  
	@OffsetOptionalPoint 	int,  
	@MileageToPay  		int  
AS

	SET NOCOUNT ON

	declare @PaymentDeviceTemp 	int
	declare @RemainOwnSilk		int
	declare @RemainGiftSilk 	int
	declare @RemainMileage 		int
	declare @Result 		int
    
	set @RemainOwnSilk = 0  
	set @RemainGiftSilk = 0  
	set @RemainMileage = 0   
    
	IF (@RemainGold < 0 or  @MileageToPay < 0  or @OwnSilkToPay < 0 or @GiftSilkToPay < 0 or @OffsetOptionalPoint < 0)  
	BEGIN  
		RETURN -2001
	END  
   
	DECLARE @PC_ID INT  
	set @PC_ID = @CharID  
	----------------------------------------------------------  
	-- Operation¿¡ µû¶ó¼* À¯Àú ij¸¯ÅÍ ¾ÆÀ̵𰡠³Ñ¾î ¿Ã¼öµµ ÀÖ°í, cos ¾ÆÀ̵𰡠³Ñ¾î ¿Ã ¼öµµ ÀÖ´Ù.  
	-- ij¸¯ÅÍ ¾ÆÀ̵𸦠¾î¶´ø ¾Ë¾Æ³»¾ß ÇÏ°Ú´Ù.  
	----------------------------------------------------------   
	if (@Operation = 19)  
	begin  
		-- COS ¿ë ¹°Ç°À» ±¸ÀÔÇѰŴϱñ... ij¸¯ ã¾Æ¼* µ· »©Áà¾ßÁö...  
		SELECT @PC_ID = OwnerCharID FROM _CharCOS WHERE ID = @PC_ID  
		IF (@@ERROR <> 0 OR @@ROWCOUNT = 0)  
		BEGIN      
			RETURN -2002  
		END  
	end  
	/*  
	#define EXPAND_DEVICE_GOLDPRICE 1  
	#define EXPAND_DEVICE_SILKPRICE 2  
	#define EXPAND_DEVICE_GIFTSILKPRICE 4  
	#define EXPAND_DEVICE_GUILDPOINT 8  
	#define EXPAND_DEVICE_MILEAGE 16  
	*/  

	if  ((@PaymentDevice & (2 | 4 | 16 )) > 0)  
	begin   
		-- ½ÇÅ©, ¼±¹°½ÇÅ©, ¸¶Àϸ®Áö¸¦ ±î¾ß Çϴ±¸¸¸.  
		-- ´Ü, ¸¶Àϸ®Áö´Â ¿É¼ÇÀÌ´Ù.  
     
		-- ij¸¯ÅÍÀÇ JID¸¦ ¾ò¾î¿À³Ê¶ó.  
		declare @JID 		int  
		select top 1 @JID = UserJID  from _User  
		where CharID = @PC_ID  
		IF (@@ROWCOUNT = 0 OR @@ERROR <> 0)  
		BEGIN  
			RETURN -2006  
		END   
    
		DECLARE @PackageItemID int  
		select @PackageItemID = ID from dbo._RefPackageItem where codename128 = @PackageItemCodeName  
  
		DECLARE @rvalue int  
		-- EXEC @rvalue = SRO_VT_ACCOUNT.DBO._ConsumeSilkByGameServer @JID, @OwnSilkToPay OUTPUT, @GiftSilkToPay OUTPUT, @MileageToPay output, 1, @CharID  
		EXEC @rvalue = SRO_VT_ACCOUNT.DBO._ConsumeSilkByGameServer @JID, @OwnSilkToPay OUTPUT, @GiftSilkToPay OUTPUT, @MileageToPay output,  0, @CharID, @PackageItemID  , 0  
   
		IF (@rvalue < 0 OR @@ERROR <> 0)  
		BEGIN  
			RETURN -2012  
		END  
--------------------------
--<< 1. ¼öÁ¤ Àü ÄÚµå >> -- ÁÖÈ*
--------------------------
--		-- °ÔÀÓ ¼*¹öÂÊ¿¡¼* °»½Å ¹Þ±â À§ÇØ cost °ªÀ» °á°ú Å×ÀÌºí¿¡ ³Ö¾îµÐ´Ù.  
--		insert into _ResultOfPackageItemToMappingWithServerSide  
--		values (@Operation, @CharID, 255, @OwnSilkToPay, 2, 0, 1)  
 -- 
--		if (@@ERROR <> 0 or @@ROWCOUNT = 0)  
--		begin      
--			return -2007  
--		end  
 --   
--		insert into _ResultOfPackageItemToMappingWithServerSide  
--		values (@Operation, @CharID, 254,@GiftSilkToPay,  4, 0, 1)  
 -- 
--		if (@@ERROR <> 0 or @@ROWCOUNT = 0)  
--		begin      
--			return -2007  
--		end  
 --   
--		insert into _ResultOfPackageItemToMappingWithServerSide  
--		values (@Operation, @CharID, 253,@MileageToPay,  16, 0, 1)  
--------------------------
--<< 1. ¼öÁ¤ ÈÄ ÄÚµå >> --
--------------------------
		-- °ÔÀÓ ¼*¹öÂÊ¿¡¼* °»½Å ¹Þ±â À§ÇØ cost °ªÀ» °á°ú Å×ÀÌºí¿¡ ³Ö¾îµÐ´Ù.
		insert into _ResultOfPackageItemToMappingWithServerSide
		values (@Operation, @CharID, 255, @OwnSilkToPay, 2, 0, 1, 0)
		
		if (@@ERROR <> 0 or @@ROWCOUNT = 0)
		begin				
			return -2007
		end
			
		insert into _ResultOfPackageItemToMappingWithServerSide
		values (@Operation, @CharID, 254,@GiftSilkToPay,  4, 0, 1, 0)
			
		if (@@ERROR <> 0 or @@ROWCOUNT = 0)
		begin				
			return -2007
		end
		
		insert into _ResultOfPackageItemToMappingWithServerSide
		values (@Operation, @CharID, 253,@MileageToPay,  16, 0, 1, 0)


----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
  
		if (@@ERROR <> 0 or @@ROWCOUNT = 0)  
		begin      
			return -2007  
		end  
	end  

	-- gold  
	if ((@PaymentDevice & 1) > 0)  
	begin  
		UPDATE _Char SET RemainGold = @RemainGold WHERE CharID = @PC_ID  
		IF (@@ERROR <> 0 OR @@ROWCOUNT = 0)
		BEGIN
			RETURN -2003
		END
	end
   
	-- guildpoint  
	if ((@PaymentDevice & 8) > 0)  
	BEGIN
		-- ±æµå¸¦ ¾Ë¾Æ¿Í¶ó.  
		declare @GuildID int  
		select @GuildID = GuildID from _GuildMember  
		where CharID = @PC_ID  
    
		IF (@@ERROR <> 0 OR @@ROWCOUNT = 0)  
		BEGIN        
			RETURN -2004  
		END  
    
		-- ±æµå Æ÷ÀÎÆ® ±î¶ó.  
		update _Guild set GatheredSP = GatheredSP - @OffsetOptionalPoint  
		where GatheredSP >= @OffsetOptionalPoint and ID = @GuildID  
    
		IF (@@ERROR <> 0 OR @@ROWCOUNT = 0)  
		BEGIN  
	/*
			-- ¾øÀ»¼öµµ Àִ°ŴÙ.

			-- by novice. 2010-01-15 ¿¡·¯ÄÚµå µ¥ÀÌÅÍÇü È®Àå
			-- ¿ø·¡ ÁÖ¼®µÇ¾î ÀÖ´ø ÄÚµåÀÌÁö¸¸, ÃßÈÄ °³¹ßÇÏ´Â »ç¶÷µéÀÌ
			-- ¼öÁ¤µÇÁö ¾ÊÀº ³»¿ëÀ» º¸°í È¥¶õ½º·¯¿ö ÇÒ ¼ö ÀÖ¾î¼*
			-- ÀÌ ºÎºÐ±îÁö ¼öÁ¤Çعö¸²!
			-- declare @Slot			tinyint
			declare @Slot				int
			declare @RefItemSerial64	bigint
			declare @RefItemDBID	bigint
			declare @RefItemID		int	
			declare @Type			tinyint
	
			-- by novice. 2010-01-15 ¿¡·¯ÄÚµå µ¥ÀÌÅÍÇü È®Àå
			-- set @Slot = 0xd0	-- error_num ¼*¹ö¿¡¼* »ç¿ëÇÏ´Â ¿¡·¯

			-- MAKE_SRO_SP_ERR_TYPE(		_UPDATE_COST,						0x0004);
			-- DEFINE_SRO_SP_ERR(			SRO_SP_ERR_NOT_ENOUGH_GUILD_POINT,	_UPDATE_COST,	0x8001 );				// ==> 0x80010004
			-- BIND_SRO_SP_ERR_TO_SRO_ERR(	SRO_SP_ERR_NOT_ENOUGH_GUILD_POINT,	STRGERR_NOT_ENOUGH_GUILDPOINT );
			set @Slot = 0x80010004	-- error_num ¼*¹ö¿¡¼* »ç¿ëÇÏ´Â ¿¡·¯
			set @RefItemSerial64 = 0
			set @RefItemDBID = 0
			set @RefItemID = 0
			set @Type = 2
			select @Operation, @Slot, @RefItemSerial64, @RefItemDBID, @RefItemID, @Type
	*/
			RETURN -2005  
		END  
--------------------------
--<< 2. ¼öÁ¤ Àü ÄÚµå >> --
--------------------------
		-- °ÔÀÓ ¼*¹öÂÊ¿¡¼* °»½Å ¹Þ±â À§ÇØ cost °ªÀ» °á°ú Å×ÀÌºí¿¡ ³Ö¾îµÐ´Ù.  
--		insert into _ResultOfPackageItemToMappingWithServerSide  
--		values (@Operation, @CharID, 252, @OffsetOptionalPoint, 8, 0, 1)  
--------------------------
--<< 2. ¼öÁ¤ ÈÄ ÄÚµå >> --
--------------------------
		-- °ÔÀÓ ¼*¹öÂÊ¿¡¼* °»½Å ¹Þ±â À§ÇØ cost °ªÀ» °á°ú Å×ÀÌºí¿¡ ³Ö¾îµÐ´Ù.
		insert into _ResultOfPackageItemToMappingWithServerSide
		values (@Operation, @CharID, 252, @OffsetOptionalPoint, 8, 0, 1, 0)


----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------

		if (@@ERROR <> 0 or @@ROWCOUNT = 0)  
		begin      
			return -2007  
		end
	end

	-- honorpoint
	else if ((@PaymentDevice & 32) > 0)
	begin
		-- honorpoint ±î¶ó.
		update _TrainingCampMember set HonorPoint = HonorPoint - @OffsetOptionalPoint
		where HonorPoint >= @OffsetOptionalPoint and CharID = @PC_ID

		if (@@ERROR <> 0 or @@ROWCOUNT = 0)
		begin				
			return -2006
		end
--------------------------
--<< 3. ¼öÁ¤ Àü ÄÚµå >> --
--------------------------
		-- °ÔÀÓ ¼*¹öÂÊ¿¡¼* °»½Å ¹Þ±â À§ÇØ cost °ªÀ» °á°ú Å×ÀÌºí¿¡ ³Ö¾îµÐ´Ù.
--		insert into _ResultOfPackageItemToMappingWithServerSide
--		values (@Operation, @CharID, 252, @OffsetOptionalPoint, 32, 0, 1)

--------------------------
--<< 3. ¼öÁ¤ ÈÄ ÄÚµå >> --
--------------------------
		-- °ÔÀÓ ¼*¹öÂÊ¿¡¼* °»½Å ¹Þ±â À§ÇØ cost °ªÀ» °á°ú Å×ÀÌºí¿¡ ³Ö¾îµÐ´Ù.
		insert into _ResultOfPackageItemToMappingWithServerSide
		values (@Operation, @CharID, 252, @OffsetOptionalPoint, 32, 0, 1, 0)


----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------

		if (@@ERROR <> 0 or @@ROWCOUNT = 0)
		begin				
			return -2007
		end
	end	

	SET NOCOUNT OFF
  
    
 return 1  
  
--@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  
--@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
KingDollar is offline  

Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2024 elitepvpers All Rights Reserved.