| pop2009 |
03-09-2015 03:14 PM |
رد: PET / GOD
1-بخصوص ال God Bless انت هتضفها عادي جدا في ال npc زي ما بتضفها عادي المشكله في line RefObjCommon هتروح علي line God Bless و تمشي بي العرض كده لحد ما هتلاقي CanTrade - CanSell - CanBuy هتخليهم 1 مكان ما هما 0 و ال Game Server هتفتح عادي جدا
2- بخصوص ال Grap Pet خود ال Produce ده حطو عندك في AddNewCos
المسار اهو
SRO_VT_SHARD/Stored Produce / dbo.AddNewCOS
كود PHP:
USE [SRO_VT_SHARD]
GO
/****** Object: StoredProcedure [dbo].[_AddNewCOS] Script Date: 03/09/2015 02:09:27 م ******/
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
IF (
exists (SELECT RefCharID FROM dbo._CharCOS WHERE OwnerCharID = @OwnerCharID AND OwnerCharID != 0 AND RefCharID in (SELECT ID FROM _RefObjCommon with(NOLOCK) WHERE TypeID1 = 1 AND TypeID2 = 2 AND TypeID3 = 3 AND TypeID4 = 2))
)AND
(
@RefObjID in (SELECT ID FROM _RefObjCommon with(NOLOCK) WHERE TypeID1 = 1 AND TypeID2 = 2 AND TypeID3 = 3 AND TypeID4 = 2)
)
BEGIN
RETURN -1337;
END
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
/* IF EXISTS (SELECT ID FROM _Exceptionz WHERE ID=@RefObjID) begin
IF (@HP = 109 and @HGP = 10000)
BEGIN
DECLARE @Serial64 bigint
DECLARE @NewTime int
SET @NewTime = DATEDIFF(s, '1970-01-01 00:00:00', GETUTCDATE())
SET @NewTime = @NewTime+28*24*3600
SELECT @Serial64 = Serial64 FROM [_Items] WHERE [Data] = @COS_ID
EXEC _AddTimedJobForPet @COS_ID, 5, 22926, @NewTime, 1111708465, 1, 84, 0, 0, 0, 0, 0, @Serial64
END
--BEGIN ADDITIONAL 112 SLOT IN GRAB PETS FOR 28 DAYS
end*/
end
commit tran
return @COS_ID
هتمسح الي عندك و تحط ده مكانو
|