USE SRO_VT_SHARD /* ITEMS TO MALL FOR SILK by Caipi */
Declare @CodeName varchar (74)
Declare @yourPrice int
Declare @WhichTAB varchar(74)
SET @CodeName = 'ITEM_MALL_AVATAR_M_DRAGONDRESS' /* The Spawncode of the item you want to add */
SET @yourPrice = 130 /* Silkprice */
SET @WhichTAB = 'MALL_AVATAR_DRESS' /* To which Tab of the Item Mall do you want to add the Item*/
Declare @Data varchar(15) SET @Data = '0' /*Leave '0' as long as you're adding Avatars - otherwise Quantity of Item*/
IF exists(SELECT CodeName128 FROM _RefObjCommon WHERE CodeName128 = @CodeName)
BEGIN
/*Only Avatar Tabs possible at the moment*/IF (@WhichTAB = 'MALL_AVATAR_ATTACH' OR @WhichTAB = 'MALL_AVATAR_DRESS' OR @WhichTAB = 'MALL_AVATAR_HAT') /*To make sure that the Tab is correct (in order to missspellings)*/
BEGIN
/* Codename instead of the ID */
Declare @ItemID int SET @ItemID = (SELECT ID FROM _RefObjCommon WHERE CodeName128 = @CodeName)
/* Which Itemdata.txt is affected in the Media.pk2*/
Declare @newItemID varchar(5)
IF (@ItemID < 5000) SET @newItemID = 5000
else if (@ItemID < 10000) SET @newItemID = 10000
else if (@ItemID < 15000) SET @newItemID = 15000
else if (@ItemID < 20000) SET @newItemID = 20000
else if (@ItemID < 25000) SET @newItemID = 25000
else if (@ItemID < 30000) SET @newItemID = 30000
else if (@ItemID < 35000) SET @newItemID = 35000
else if (@ItemID < 40000) SET @newItemID = 40000
else SET @newItemID = 45000
print ''
print @CodeName + ' from Media\server_dep\silkroad\textdata\itemdata_'+@newItemID+'.txt'
print ''
/*END which Itemdata.txt*/
/* for _RefPackageItem */
IF EXISTS (SELECT CodeName128 FROM _RefPackageItem WHERE CodeName128 = 'Package_'+@CodeName)
BEGIN
Declare @SN1 varchar(74) SET @SN1 = (SELECT NameStrID FROM _RefPackageItem WHERE CodeName128 = 'PACKAGE_'+@CodeName)
Declare @DESC1 varchar(74) SET @Desc1 = (SELECT DescStrID FROM _RefPackageItem WHERE CodeName128 = 'PACKAGE_'+@CodeName)
Declare @DDJ1 varchar(74) SET @DDJ1 = (SELECT AssocFileIcon FROM _RefPackageItem WHERE CodeName128 = 'PACKAGE_'+@CodeName)
Declare @TOPID1 varchar (10) SET @TOPID1 = (SELECT ID FROM _RefPackageItem WHERE CodeName128 = 'PACKAGE_'+@CodeName)
print '##Check the following lines @ refpackageitem.txt!'
print '1 15 '+@TOPID1+' PACKAGE_'+@CodeName+' 0 EXPAND_TERM_ALL '+@SN1+' '+@DESC1+' '+@DDJ1+' -1 xxx -1 xxx -1 xxx -1 xxx'
print ''
END
ELSE BEGIN
Declare @SN varchar(74) SET @SN = (SELECT NameStrID128 FROM _RefObjCommon WHERE ID = @ItemID)
Declare @DESC varchar(74) SET @Desc = (SELECT DescStrID128 FROM _RefObjCommon WHERE ID = @ItemID)
Declare @DDJ varchar(74) SET @DDJ = (SELECT AssocFileIcon128 FROM _RefObjCommon WHERE ID = @ItemID)
INSERT INTO _RefPackageItem (Service,Country,CodeName128,SaleTag,ExpandTerm,NameStrID,DescStrID,AssocFileIcon,Param1,Param1_Desc128,Param2,Param2_Desc128,Param3,Param3_Desc128,Param4,Param4_Desc128)
VALUES (1,15,'PACKAGE_'+@CodeName,0,'EXPAND_TERM_ALL',@SN,@Desc,@DDJ,-1,'xxx',-1,'xxx',-1,'xxx',-1,'xxx')
Declare @TOPID varchar (10) SET @TOPID = (SELECT MAX(ID) FROM _RefPackageItem)
print ''
print 'Add the following line @ refpackageitem.txt'
print '1 15 '+@TOPID+' PACKAGE_'+@CodeName+' 0 EXPAND_TERM_ALL '+@SN+' '+@DESC+' '+@DDJ+' -1 xxx -1 xxx -1 xxx -1 xxx'
print ''
END
/* for _RefPricePolicyOfItem */
IF EXISTS (SELECT RefPackageItemCodeName FROM _RefPricePolicyOfItem WHERE RefPackageItemCodeName = 'Package_'+@CodeName)
BEGIN
print '##Check the following lines @ RefPricePolicyOfItem.txt!'
Declare @NEWPRICE1 varchar(15) SET @NEWPRICE1 = (SELECT Cost FROM _RefPricePolicyOfItem WHERE RefPackageItemCodeName = 'Package_'+@CodeName AND PaymentDevice = 2)
print '1 15 PACKAGE_'+@CodeName+' 2 0 '+@NEWPRICE1+' -1 xxx -1 xxx -1 xxx -1 xxx'
print '1 15 PACKAGE_'+@CodeName+' 4 0 0 -1 xxx -1 xxx -1 xxx -1 xxx'
print '1 15 PACKAGE_'+@CodeName+' 16 0 0 -1 xxx -1 xxx -1 xxx -1 xxx'
print ''
END
ELSE BEGIN
INSERT INTO _RefPricePolicyOfItem (Service,Country,RefPackageItemCodeName,PaymentDevice,PreviousCost,Cost,Param1,Param1_Desc128,Param2,Param2_Desc128,Param3,Param3_Desc128,Param4,Param4_Desc128)
VALUES (1,15,'PACKAGE_'+@CodeName,2,0,@yourPrice,-1,'xxx',-1,'xxx',-1,'xxx',-1,'xxx')
INSERT INTO _RefPricePolicyOfItem (Service,Country,RefPackageItemCodeName,PaymentDevice,PreviousCost,Cost,Param1,Param1_Desc128,Param2,Param2_Desc128,Param3,Param3_Desc128,Param4,Param4_Desc128)
VALUES (1,15,'PACKAGE_'+@CodeName,4,0,0,-1,'xxx',-1,'xxx',-1,'xxx',-1,'xxx')
INSERT INTO _RefPricePolicyOfItem (Service,Country,RefPackageItemCodeName,PaymentDevice,PreviousCost,Cost,Param1,Param1_Desc128,Param2,Param2_Desc128,Param3,Param3_Desc128,Param4,Param4_Desc128)
VALUES (1,15,'PACKAGE_'+@CodeName,16,0,0,-1,'xxx',-1,'xxx',-1,'xxx',-1,'xxx')
Declare @NEWPRICE varchar(15) SET @NEWPRICE = @yourPrice
print ''
print 'Add the following lines @ refpricepolicyofitem.txt'
print '1 15 PACKAGE_'+@CodeName+' 2 0 '+@NEWPRICE+' -1 xxx -1 xxx -1 xxx -1 xxx'
print '1 15 PACKAGE_'+@CodeName+' 4 0 0 -1 xxx -1 xxx -1 xxx -1 xxx'
print '1 15 PACKAGE_'+@CodeName+' 16 0 0 -1 xxx -1 xxx -1 xxx -1 xxx'
print ''
END
/* for _RefShopGoods */
IF EXISTS (SELECT RefPackageItemCodeName FROM _RefShopGoods WHERE RefPackageItemCodeName = 'Package_'+@CodeName AND RefTabCodeName = @WhichTAB)
BEGIN
print '##Check the following lines @ RefShopGoods.txt!'
Declare @WhichTAB1 varchar(74) SET @WhichTAB1 = (SELECT RefTabCodeName FROM _RefShopGoods WHERE RefPackageItemCodeName = 'PACKAGE_'+@CodeName)
Declare @newSLOTINDEX1 varchar(15) SET @newSLOTINDEX1 = (SELECT SlotIndex FROM _RefShopGoods WHERE RefPackageItemCodeName = 'PACKAGE_'+@CodeName AND RefTabCodeName = @WhichTAB1)
print '1 15 '+@WhichTAB1+' '+'PACKAGE_'+@CodeName+' '+@newSLOTINDEX1+' -1 xxx -1 xxx -1 xxx -1 xxx'
print ''
END
ELSE BEGIN
Declare @newSLOTINDEX varchar(15) SET @newSLOTINDEX = (SELECT MAX(SlotIndex) FROM _RefShopGoods WHERE RefTabCodeName = @WhichTAB)+1
INSERT INTO _RefShopGoods (Service,Country,RefTabCodeName,RefPackageItemCodeName,SlotIndex,Param1,Param1_Desc128,Param2,Param2_Desc128,Param3,Param3_Desc128,Param4,Param4_Desc128)
VALUES (1,15,@WhichTAB,'PACKAGE_'+@CodeName,@newSLOTINDEX,-1,'xxx',-1,'xxx',-1,'xxx',-1,'xxx')
print ''
print 'Add the following line @ refshopgoods.txt'
print '1 15 '+@WhichTAB+' '+'PACKAGE_'+@CodeName+' '+@newSLOTINDEX+' -1 xxx -1 xxx -1 xxx -1 xxx'
print ''
END
/* for _RefScrapOfPackageItem */
IF EXISTS (SELECT RefPackageItemCodeName FROM _RefScrapOfPackageItem WHERE RefPackageItemCodeName = 'Package_'+@CodeName AND RefItemCodeName = @CodeName)
BEGIN
print '##Check the following lines @ RefScrapOfPackageItem.txt!'
Declare @ScrapIndex1 varchar(15)
SET @ScrapIndex1 = (SELECT [Index] FROM _RefScrapOfPackageItem WHERE RefItemCodeName = @CodeName)
Declare @Data1 varchar(15) SET @Data1 = (SELECT Data FROM _RefScrapOfPackageItem WHERE RefItemCodeName = @CodeName)
print '1 15 '+'PACKAGE_'+@CodeName+' '+@CodeName+' 0 0 '+@Data1+' 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 xxx -1 xxx -1 xxx -1 xxx '+@ScrapIndex1
print ''
END
ELSE BEGIN
INSERT INTO _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)
VALUES (1,15,'PACKAGE_'+@CodeName,@CodeName,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-1,'xxx',-1,'xxx',-1,'xxx',-1,'xxx')
Declare @ScrapIndex varchar(15)
SET @ScrapIndex = (SELECT [Index] FROM _RefScrapOfPackageItem WHERE RefItemCodeName = @CodeName)
print ''
print 'Add the following line @ refscrapofpackageitem.txt'
print '1 15 '+'PACKAGE_'+@CodeName+' '+@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 '+@ScrapIndex
print ''
END
print ''
print ''
print 'Done!'
END
ELSE BEGIN
print 'The @WhichTAB value is incorrect!'
END
END
else begin
print '@CodeName value does not exist.'
end
لما بخلصو بيجبلى كده
كود PHP:
ITEM_MALL_AVATAR_M_MUMMY from Media\server_dep\silkroad\textdata\itemdata_45000.txt
##Check the following lines @ RefShopGoods.txt!
Msg 512, Level 16, State 1, Line 92
Subquery returned more than 1 value. This is not permitted when the subquery follows =, !=, <, <= , >, >= or when the subquery is used as an expression.
##Check the following lines @ RefShopGoods.txt! Msg 512, Level 16, State 1, Line 92 Subquery returned more than 1 value. This is not permitted when the subquery follows =, !=, <, <= , >, >= or when the subquery is used as an expression.