vSRO - Toplama
Merhaba Arkadaşlar;
Bazı Db' lerde Petin 5 sayfası açılmıştır. Bu oyun içi bazı hatalarda, buglarda hatta oyunun kapanmasına kadar yol açan bazen sorunlar meydana gelmiştir. Sayfalarca açık olan peti sadece tek pet sayyfası olarak indirmek için ve petin yol açtığı buglara sebep olmaması içinde aşağıda yer alan 2 queryi ayrı ayrı okutun.
Kolay Gelsin
Merhaba Arkadaşlar;
Bazı Db' lerde Petin 5 sayfası açılmıştır. Bu oyun içi bazı hatalarda, buglarda hatta oyunun kapanmasına kadar yol açan bazen sorunlar meydana gelmiştir. Sayfalarca açık olan peti sadece tek pet sayyfası olarak indirmek için ve petin yol açtığı buglara sebep olmaması içinde aşağıda yer alan 2 queryi ayrı ayrı okutun.
Kolay Gelsin
Kod:
USE [SRO_VT_SHARD]
GO
/****** Object: StoredProcedure [dbo].[_AddNewCOS] Script Date: 15.07.2016 13:31:41 ******/
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
declare @bla varchar(max);
select @bla = codename128 from _refobjcommon where ID = @ReFObjID
if @bla like '%COS_T%'
begin
WAITFOR DELAY '0:00:00.5' --süre
END
return @CoS_ID
Kod:
USE [SRO_VT_SHARD]
GO
/****** Object: StoredProcedure [dbo].[_AddTimedJobForPet] Script Date: 15.07.2016 13:31:48 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
--@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
-- pet_skill_item (ÃÖ¼±È£)
--@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
ALTER PROCEDURE [dbo].[_AddTimedJobForPet]
@CharID int,
@Category tinyint,
@JobID int,
@TimeToKeep int,
@Data1 int,
@Data2 int,
@Data3 int,
@Data4 int,
@Data5 int,
@Data6 int,
@Data7 int,
@Data8 int,
@Serial64 bigint
as
if (not exists (select ID from _CharCOS with (nolock) where ID = @CharID))
return -1
if (@TimeToKeep <= 0)
return -2
declare @NewJobID int
set @NewJobID = 0
insert into _TimedJobForPet values(@CharID, @Category, @JobID, @TimeToKeep, @Data1, @Data2, @Data3, @Data4, @Data5, @Data6, @Data7, @Data8, @Serial64, 0)
set @NewJobID = @@identity
if (@@error <> 0 or @@rowcount = 0)
return -3
return @NewJobID
--@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
--@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@