الموضوع: طلب صغير اوى
عرض مشاركة واحدة
قديم 09-03-2013, 02:03 AM   #2

Midget1337
عضو سوبر



الصورة الرمزية Midget1337


• الانـتـسـاب » May 2012
• رقـم العـضـويـة » 100773
• المشـــاركـات » 2,355
• الـدولـة »
• الـهـوايـة »
• اسـم الـسـيـرفـر » No Server
• الـجـنـس » Male
• نقـاط التقييم » 62
Midget1337 جـيـد

Midget1337 غير متواجد حالياً



افتراضي



كود:
USE [SRO_VT_SHARD]
GO
/****** Object:  StoredProcedure [dbo].[_AddNewCOS]    Script Date: 03/09/2013 01:00:40 ******/
SET ANSI_NULLS OFF
GO
SET QUOTED_IDENTIFIER ON
GO

ALTER PROCEDURE [dbo].[_AddNewCOS]
	@OwnerCharID	int,
	@RefObjID	int,
	@Level		int,
	@HP		int,
	@MP		int,
	@HGP		int,
	@KeeperNPC	int,
	@State		int,
	@InventorySize  int,
	@itemID		int,
	@PickItemConfig tinyint,
	@RentEndTime 	smalldatetime
as

begin tran

	declare @COS_ID	int
--@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
--		pet_skill_item (أض¼±ب£)		
--@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

	declare @MaxInventorySize tinyint
	select @MaxInventorySize = InventorySize
	from _RefObjCommon, _RefObjChar
	where _RefObjCommon.ID = @RefObjID and _RefObjCommon.Link = _RefObjChar.ID
	
	if( @@rowcount = 0 or @MaxInventorySize < @InventorySize )
	begin
		rollback tran
		return -5
	end

	insert into _CharCOS values (@OwnerCharID, @RefObjID, @HP, @MP, @KeeperNPC, @State, NULL, @Level, 0, @HGP, @PickItemConfig, @RentEndTime)
--@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
--@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
	set @COS_ID = @@identity
	if (@COS_ID = 0 OR @@error <> 0)
	begin
		rollback tran
		return -1
	end

--@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
--		pet_skill_item (أض¼±ب£)		
--@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
	if (@MaxInventorySize > 0)
--@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
--@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
	begin
		declare @Slot  int
		set @Slot = 0
--@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
--		pet_skill_item (أض¼±ب£)		
--@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
		while (@Slot < @MaxInventorySize)
--@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
--@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
		begin
			insert into _InvCOS values(@COS_ID, @Slot, 0)
			if (@@error <> 0)
			begin
				-- ہخ؛¥إن¸® »‎¼؛ ½ائذ!
				rollback tran
				return -2
			end	
		
			set @Slot = @Slot + 1
		end
	end
	
/*	--´ُ ہج»َ ہج ؤأ·³؟،´آ µ¥ہجإح¸¦ ³ضءِ ¾ت´آ´ظ!
	UPDATE _Char SET EngagedCOS = @COS_ID WHERE CharID = @OwnerCharID
	IF (@@ERROR <> 0 OR @@ROWCOUNT = 0)
	BEGIN
		ROLLBACK TRANSACTION
		RETURN -3
	END
*/
	if( @itemID <> 0 )
	begin
		update _Items set Data = @COS_ID where ID64 = @itemID
		if( @@error <> 0 or @@rowcount = 0 )
		begin
			rollback transaction
			return -4
		end
	end

	commit tran

return @COS_ID




رد مع اقتباس