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

مشاهدة النسخة كاملة : مشكله Query Add Item To NPC


Mohamed Yakout
23-06-2015, 02:11 PM
كنت عايز احط Adv فى ال Npc
لما جيت احطه بيقولى
There's No Item With This CodeName
FAILED
و ادى صوره بردو
http://epvpimg.com/eI2Yd

GM] MOHAMED]
23-06-2015, 02:31 PM
حط با لبرنامج الى فى الموضوع دا هو معا الشرح اتفضل

http://www.silkroad4arab.com/vb/showthread.php?t=564086

:vincent:

Mohamed Yakout
24-06-2015, 02:55 AM
MOHAMED];5203621']حط با لبرنامج الى فى الموضوع دا هو معا الشرح اتفضل

http://www.silkroad4arab.com/vb/showthread.php?t=564086

:vincent:

انت فهمتنى غلط .. انا مش عايز برامج انا عارف البرنامج ده
بس انا عايز حل للمشكله لأن اللى بيحصل ده بيتكرر مع اى حاجه بحاول احطها ف Npc

Hamza FiGo
24-06-2015, 03:38 AM
بيقولك ياباشا مفيش ايتم بالكود دا. اكتب الكود صح او امشي ورا الموضوع دا احسن

http://www.silkroad4arab.com/vb/showthread.php?t=514213

Mohamed Yakout
24-06-2015, 04:35 AM
بيقولك ياباشا مفيش ايتم بالكود دا. اكتب الكود صح او امشي ورا الموضوع دا احسن

http://www.silkroad4arab.com/vb/showthread.php?t=514213

بس انا جربت الكود فى اللعبه من جوا و طلع شغال
و جربت ب اكواد تانيه معروفه زى كود arena coin
و premium و بردو بيقولى نفس الكلام

Mahm0ud
24-06-2015, 05:27 AM
بُص حضرتك مش هيجيلك كدآآ
الا فـ حالتين
الاولى ان الكود ممكن يكون غلط
الثانية ان الايتم دى مش موجودة فـ الـ Database


احسن لك اشتغل بـ برنـآمج VSRO NPC PROGRAM

Mohamed Yakout
24-06-2015, 05:55 AM
بُص حضرتك مش هيجيلك كدآآ
الا فـ حالتين
الاولى ان الكود ممكن يكون غلط
الثانية ان الايتم دى مش موجودة فـ الـ Database


احسن لك اشتغل بـ برنـآمج VSRO NPC PROGRAM

طيب لو الايتم مش موجوده ف ال database و ده احتمال كبير لأن الكود صح
ممكن بقى تقولى ازاى احط ايتم فى ال database ؟

Mahm0ud
24-06-2015, 06:27 AM
شبه اضافة اي حـآجة فـ الـ Database
مثلاً عـآيز تضيف Premium 30 %
لازم يكون ليها Lines فـ الـ Database

_RefObjCommon
1 50000 ITEM_MALL_PREMIUM_GLOBAL_GOLDTIME_PLUS ???? ???? ??? (???) xxx SN_ITEM_MALL_PREMIUM_GLOBAL_GOLDTIME_PLUS SN_ITEM_MALL_PREMIUM_GLOBAL_GOLDTIME_PLUS_TT_DESC 1 0 3 3 13 14 180000 3 0 1 1 1 255 0 1 0 0 129 0 0 0 0 0 0 0 -1 0 -1 0 -1 0 -1 0 -1 0 0 0 0 0 0 0 100 0 0 0 xxx itemetcdrop_mall_scroll.bsr itemetcmall_premium_global_goldtime.ddj xxx xxx 40000


_RefObjItem

40000 1 2 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2419200 ????(?) 1 [UIU1:ITEM_PRE_GOLTAM_4W],[UIL1:ITEM_MALL_RESURRECTION_100P_SCROLL, A, 86400, 1],[USU1:SKILL_MALL_PRE_APRU_GLOBAL_4W_PLUS_01] 1 [UIL1:ITEM_MALL_REVERSE_RETURN_SCROLL, A, 86400, 10],[UIL1:ITEM_MALL_RETURN_SCROLL_HIGH_SPEED, A, 86400, 10] 1 [BFI1:ITEM_MALL_BOOTH_MOB_MANGYANG,A,2419200],[UQL1:QSP_ALL_POTION_3, A, 2419200, 4] -1 xxx -1 CashRank:4 -1 xxx -1 xxx -1 xxx -1 xxx -1 xxx -1 xxx -1 xxx -1 xxx -1 xxx -1 xxx -1 xxx -1 xxx -1 xxx -1 xxx 0 0 0
و طبعاً زى مـ فيه Lines فـ الـ Database فيه Lines فـ الـ Media.pk2
وارجوا أن حضرتك تكون فهمتنى
تقبل مرورى ^^

Mohamed Yakout
24-06-2015, 01:02 PM
طب ما انا معيش غير كود الايتم .. هجيب الحاجات التانيه دى ازاى

aw_elkady
25-06-2015, 05:35 AM
ممكن تجيب الكويري ال انت شغال بيه ؟؟
أو جرب الكويري دا
--1 = Gold
--2 = Silk
--4 = Gift Silk (Received Silk)
--16 = Point (vSRO); Premium Silk (iSRO & kSRO)
--32 = Honor Point
--64 = Copper Coin(ctp)
--128 = Iron Coin(ctf)
--256 = Silver Coin (IR)
--512 = Gold Coin
--1024 = Arena Coin
--==========================================
/*
*/
USE SRO_VT_SHARD
GO
DECLARE @ID int
DECLARE @INDEX int
DECLARE @CodeName varchar(128)
DECLARE @PackageName varchar(128)
DECLARE @DescSTRID varchar(128)
DECLARE @File varchar(128)
DECLARE @Price int
DECLARE @SilkPrice int
DECLARE @Slot tinyint
DECLARE @TAB varchar(128)
DECLARE @Data int
DECLARE @SkipScrapOfPackageItem int = 0
DECLARE @SkipPackageItem int = 0
DECLARE @SkipPricePolicyOfItem int = 0
--- Set Variables
SET @CodeName = 'ITEM_MALL_AVATAR_W_GHOST_CAPTAIN' -- Item CodeName in RefObjCommon
SET @Price = 100000000 -- Set 0 if you don't want to set Gold Price
SET @SilkPrice = 250 -- Set 0 if you don't want to set Silk Price
SET @TAB = 'STORE_New_Ava_TAB1' -- Tab name in NPC, For _RefShopGoods
SET @PackageName = 'PACKAGE_'+@CodeName -- Do not edit if you don't know what are you doing.
--- you don't need to touch here...
IF (@CodeName = '')
BEGIN
PRINT 'You have to edit CodeName..!'
PRINT 'FAILED.'
RETURN
END
IF ((SELECT COUNT(ID) FROM _RefObjCommon WHERE CodeName128 = @CodeName) < 1)
BEGIN
PRINT 'There is no item with this CodeName..!'
PRINT 'FAILED.'
RETURN
END
IF (@Price < 0)
BEGIN
PRINT 'Price is not VALID..!'
PRINT 'FAILED.'
RETURN
END
IF (@SilkPrice < 0)
BEGIN
PRINT 'Silk Price is not VALID..!'
PRINT 'FAILED.'
RETURN
END
IF ((SELECT COUNT(ID) FROM _RefShopTab WHERE CodeName128 = @TAB) < 1)
BEGIN
PRINT 'TAB VALUE IS NOT VALID..!'
PRINT 'FAILED.'
RETURN
END
IF ((SELECT COUNT (RefPackageItemCodeName) FROM _RefShopGoods WHERE RefPackageItemCodeName = @PackageName AND RefTabCodeName = @TAB) > 0)
BEGIN
PRINT 'There is already same item in same tab..!'
PRINT 'FAILED.'
RETURN
END
IF ((SELECT COUNT (RefPackageItemCodeName) FROM _RefScrapOfPackageItem WHERE RefPackageItemCodeName = @PackageName) > 0)
BEGIN
PRINT 'There is already an entry for this item, skipping @_RefScrapOfPackageItem table..!'
SET @SkipScrapOfPackageItem = 1
END
IF ((SELECT COUNT (CodeName128) FROM _RefPackageItem WHERE CodeName128 = @PackageName) > 0)
BEGIN
PRINT 'There is already an entry for this item, skipping @_RefPackageItem table..!'
SET @SkipPackageItem = 1
END
IF ((SELECT COUNT (PaymentDevice) FROM _RefPricePolicyOfItem WHERE RefPackageItemCodeName = @PackageName AND PaymentDevice = '1') > 0)
BEGIN
PRINT 'There is already an entry for this item with same PaymentDevice, skipping @_RefPricePolicyOfItem table..! (Gold)'
SET @SkipPricePolicyOfItem = 1
END
IF ((SELECT COUNT (PaymentDevice) FROM _RefPricePolicyOfItem WHERE RefPackageItemCodeName = @PackageName AND PaymentDevice = '2') > 0)
BEGIN
PRINT 'There is already an entry for this item with same PaymentDevice, skipping @_RefPricePolicyOfItem table..! (Silk)'
IF (@SkipPricePolicyOfItem = 1)
BEGIN
SET @SkipPricePolicyOfItem = 3
END
ELSE
BEGIN
SET @SkipPricePolicyOfItem = 2
END
END
IF (@SilkPrice = 0) AND (@Price = 0)
BEGIN
PRINT 'You need to set a price, at least one !'
PRINT 'FAILED.'
RETURN
END
SELECT TOP 1 @ID = ID FROM _RefPackageItem ORDER BY ID DESC
SET @ID = @ID + 1
SELECT TOP 1 @INDEX = [Index] FROM _RefScrapOfPackageItem ORDER BY [Index] DESC
SET @INDEX = @INDEX + 1
SELECT TOP 1 @Slot = SlotIndex FROM _RefShopGoods WHERE RefTabCodeName = @TAB ORDER BY SlotIndex DESC
IF (@Slot = 0)
BEGIN
SET @Slot = @Slot + 1
END
ELSE IF (@Slot > 0)
BEGIN
SET @Slot = @Slot + 1
END
ELSE
BEGIN
SET @Slot = 0
END
SET @DescSTRID = 'SN_' + @CodeName + '_TT_DESC'
SELECT @File = AssocFileIcon128 FROM _RefObjCommon WHERE CodeName128 = @CodeName
IF (@CodeName LIKE '%RING%' OR @CodeName LIKE '%NECKLACE%' OR @CodeName LIKE '%ARCHEMY%')
BEGIN
SET @Data = 1
END
ELSE
BEGIN
SELECT @Data = Dur_U FROM _RefObjItem WHERE ID = (SELECT Link FROM _RefObjCommon WHERE CodeName128 = @CodeName)
END
BEGIN TRANSACTION
IF (@SkipPackageItem = 0)
BEGIN
--SET IDENTITY_INSERT _RefPackageItem ON
INSERT _RefPackageItem ([Service], Country, ID, CodeName128, SaleTag, ExpandTerm, NameStrID, DescStrID, AssocFileIcon, Param1, Param1_Desc128, Param2, Param2_Desc128, Param3, Param3_Desc128, Param4, Param4_Desc128) VALUES (1, 15, @ID, @PackageName, 0, 'EXPAND_TERM_ALL', 'SN_'+@CodeName, @DescSTRID, @File, -1, 'xxx', -1, 'xxx', -1, 'xxx', -1, 'xxx')
IF (@@ERROR <> 0)
BEGIN
PRINT 'AN ERROR HAPPENED WHILE ADDING TO _RefPackageItem, Rolling back...'
ROLLBACK TRANSACTION
RETURN
END
PRINT 'Added to _RefPackageItem !'
--SET IDENTITY_INSERT _RefPackageItem OFF
END
IF (@SkipScrapOfPackageItem = 0)
BEGIN
INSERT _RefScrapOfPackageItem (Service, Country, RefPackageItemCodeName, RefItemCodeName, OptLevel, Variance, Data, MagParamNum, MagParam1, MagParam2, MagParam3, MagParam4, MagParam5, MagParam6, MagParam7, MagParam8, MagParam9, MagParam10, MagParam11, MagParam12, Param1, Param1_Desc128, Param2, Param2_Desc128, Param3, Param3_Desc128, Param4, Param4_Desc128, [Index]) VALUES (1, 15, @PackageName, @CodeName, 0, 0, @Data, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, 'xxx', -1, 'xxx', -1, 'xxx', -1, 'xxx', @INDEX)
IF (@@ERROR <> 0)
BEGIN
PRINT 'AN ERROR HAPPENED WHILE ADDING TO _RefScrapOfPackageItem, Rolling back...'
ROLLBACK TRANSACTION
RETURN
END
PRINT 'Added to _RefScrapOfPackageItem !'
END
IF (@SkipPricePolicyOfItem = 2 OR @SkipPricePolicyOfItem = 0 AND @Price > 0)
BEGIN
INSERT _RefPricePolicyOfItem (Service, Country, RefPackageItemCodeName, PaymentDevice, PreviousCost, Cost, Param1, Param1_Desc128, Param2, Param2_Desc128, Param3, Param3_Desc128, Param4, Param4_Desc128) VALUES (1, 15, @PackageName, 1, 0, @Price, -1, 'xxx', -1, 'xxx', -1, 'xxx', -1, 'xxx')
IF (@@ERROR <> 0)
BEGIN
PRINT 'AN ERROR HAPPENED WHILE ADDING TO _RefPricePolicyOfItem, Rolling back...'
ROLLBACK TRANSACTION
RETURN
END
PRINT 'Added to _RefPricePolicyOfItem, PaymentDevice = 1 (Gold)'
END
IF (@SkipPricePolicyOfItem = 1 OR @SkipPricePolicyOfItem = 0 AND @SilkPrice > 0)
BEGIN
INSERT _RefPricePolicyOfItem (Service, Country, RefPackageItemCodeName, PaymentDevice, PreviousCost, Cost, Param1, Param1_Desc128, Param2, Param2_Desc128, Param3, Param3_Desc128, Param4, Param4_Desc128) VALUES (1, 15, @PackageName, 2, 0, @SilkPrice, -1, 'xxx', -1, 'xxx', -1, 'xxx', -1, 'xxx')
IF (@@ERROR <> 0)
BEGIN
PRINT 'AN ERROR HAPPENED WHILE ADDING TO _RefPricePolicyOfItem, Rolling back...'
ROLLBACK TRANSACTION
RETURN
END
PRINT 'Added to _RefPricePolicyOfItem, PaymentDevice = 2 (Silk)'
END
ELSE
BEGIN
PRINT 'There is already silk / gold price, skipping _RefPricePolicyOfItem table...'
END
INSERT _RefShopGoods (Service, Country, RefTabCodeName, RefPackageItemCodeName, SlotIndex, Param1, Param1_Desc128, Param2, Param2_Desc128, Param3, Param3_Desc128, Param4, Param4_Desc128) VALUES (1, 15, @TAB, @PackageName, @Slot, -1, 'xxx', -1, 'xxx', -1, 'xxx', -1, 'xxx')
IF (@@ERROR <> 0)
BEGIN
PRINT 'An error happened while adding to _RefShopGoods table'
PRINT 'FAILED.'
ROLLBACK TRANSACTION
RETURN
END
PRINT 'Added to _RefShopGoods, DONE!'
COMMIT TRANSACTION