|
• الانـتـسـاب » Jul 2013
|
• رقـم العـضـويـة » 112689
|
• المشـــاركـات » 1,050
|
• الـدولـة » Egypt - Tanta
|
• الـهـوايـة » always try for a best features
|
• اسـم الـسـيـرفـر » Private Server
|
• الـجـنـس » Male
|
• نقـاط التقييم » 34
|
|
|
رد: طلب how to add items
مفيش شرح الكلام اللى بتقول عليه دا ،، عشان اللى بيتعلمه مش بيتعب نفسه ويعمل شرح !
عشان باختصار هو مش محتاج شرح الفكرة كلها انك بتجيب اخر ID فى RefObjCommon وبتضيف السطر في الجدول وبعدين تجيب اخر ID فى RefObjItem وتضيف السطر فى الجدول ،، وتاخد ID اللى انت ضيفت بيه فى RefObjItem وتحطه فى خانة Link أخر خانة فى جدول RefObjCommon
انت عشان تضيف اي حاجة لازم تعرف الارتباطات بين الجداول وبعضها ودي اهم من تعليم ال SQL نفسه
كريت عندك الـ Procedure ده
كود PHP:
USE [SRO_VT_SHARD] GO /****** Object: StoredProcedure [dbo].[_GetMediaLines] Script Date: 12/07/2015 01:51:51 ص ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO Create Procedure [dbo].[_GetMediaLines]
@Type SMALLINT, @CodeName VARCHAR(30)
AS
IF(@Type=1) BEGIN SELECT _RefObjCommon.Service,_RefObjCommon.ID,_RefObjCommon.CodeName128,_RefObjCommon.ObjName128,_RefObjCommon.OrgObjCodeName128,_RefObjCommon.NameStrID128,_RefObjCommon.DescStrID128,_RefObjCommon.CashItem,_RefObjCommon.Bionic,_RefObjCommon.TypeID1,_RefObjCommon.TypeID2,_RefObjCommon.TypeID3,_RefObjCommon.TypeID4,_RefObjCommon.DecayTime,_RefObjCommon.Country,_RefObjCommon.Rarity,_RefObjCommon.CanTrade,_RefObjCommon.CanSell,_RefObjCommon.CanBuy,_RefObjCommon.CanBorrow,_RefObjCommon.CanDrop,_RefObjCommon.CanPick,_RefObjCommon.CanRepair,_RefObjCommon.CanRevive,_RefObjCommon.CanUse,_RefObjCommon.CanThrow,_RefObjCommon.Price,_RefObjCommon.CostRepair,_RefObjCommon.CostRevive,_RefObjCommon.CostBorrow,_RefObjCommon.KeepingFee,_RefObjCommon.SellPrice,_RefObjCommon.ReqLevelType1,_RefObjCommon.ReqLevel1,_RefObjCommon.ReqLevelType2,_RefObjCommon.ReqLevel2,_RefObjCommon.ReqLevelType3,_RefObjCommon.ReqLevel3,_RefObjCommon.ReqLevelType4,_RefObjCommon.ReqLevel4,_RefObjCommon.MaxContain,_RefObjCommon.RegionID,_RefObjCommon.Dir,_RefObjCommon.OffsetX,_RefObjCommon.OffsetY,_RefObjCommon.OffsetZ,_RefObjCommon.Speed1,_RefObjCommon.Speed2,_RefObjCommon.Scale,_RefObjCommon.BCHeight,_RefObjCommon.BCRadius,_RefObjCommon.EventID,_RefObjCommon.AssocFileObj128,_RefObjCommon.AssocFileDrop128,_RefObjCommon.AssocFileIcon128,_RefObjCommon.AssocFile1_128,_RefObjCommon.AssocFile2_128, _RefObjItem.MaxStack,_RefObjItem.ReqGender,_RefObjItem.ReqStr,_RefObjItem.ReqInt,_RefObjItem.ItemClass,_RefObjItem.SetID,_RefObjItem.Dur_L,_RefObjItem.Dur_U,_RefObjItem.PD_L,_RefObjItem.PD_U,_RefObjItem.PDInc,_RefObjItem.ER_L,_RefObjItem.ER_U,_RefObjItem.ERInc,_RefObjItem.PAR_L,_RefObjItem.PAR_U,_RefObjItem.PARInc,_RefObjItem.BR_L,_RefObjItem.BR_U,_RefObjItem.MD_L,_RefObjItem.MD_U,_RefObjItem.MDInc,_RefObjItem.MAR_L,_RefObjItem.MAR_U,_RefObjItem.MARInc,_RefObjItem.PDStr_L,_RefObjItem.PDStr_U,_RefObjItem.MDInt_L,_RefObjItem.MDInt_U,_RefObjItem.Quivered,_RefObjItem.Ammo1_TID4,_RefObjItem.Ammo2_TID4,_RefObjItem.Ammo3_TID4,_RefObjItem.Ammo4_TID4,_RefObjItem.Ammo5_TID4,_RefObjItem.SpeedClass,_RefObjItem.TwoHanded,_RefObjItem.Range,_RefObjItem.PAttackMin_L,_RefObjItem.PAttackMin_U,_RefObjItem.PAttackMax_L,_RefObjItem.PAttackMax_U,_RefObjItem.PAttackInc,_RefObjItem.MAttackMin_L,_RefObjItem.MAttackMin_U,_RefObjItem.MAttackMax_L,_RefObjItem.MAttackMax_U,_RefObjItem.MAttackInc,_RefObjItem.PAStrMin_L,_RefObjItem.PAStrMin_U,_RefObjItem.PAStrMax_L,_RefObjItem.PAStrMax_U,_RefObjItem.MAInt_Min_L,_RefObjItem.MAInt_Min_U,_RefObjItem.MAInt_Max_L,_RefObjItem.MAInt_Max_U,_RefObjItem.HR_L,_RefObjItem.HR_U,_RefObjItem.HRInc,_RefObjItem.CHR_L,_RefObjItem.CHR_U,_RefObjItem.Param1,_RefObjItem.Desc1_128,_RefObjItem.Param2,_RefObjItem.Desc2_128,_RefObjItem.Param3,_RefObjItem.Desc3_128,_RefObjItem.Param4,_RefObjItem.Desc4_128,_RefObjItem.Param5,_RefObjItem.Desc5_128,_RefObjItem.Param6,_RefObjItem.Desc6_128,_RefObjItem.Param7,_RefObjItem.Desc7_128,_RefObjItem.Param8,_RefObjItem.Desc8_128,_RefObjItem.Param9,_RefObjItem.Desc9_128,_RefObjItem.Param10,_RefObjItem.Desc10_128,_RefObjItem.Param11,_RefObjItem.Desc11_128,_RefObjItem.Param12,_RefObjItem.Desc12_128,_RefObjItem.Param13,_RefObjItem.Desc13_128,_RefObjItem.Param14,_RefObjItem.Desc14_128,_RefObjItem.Param15,_RefObjItem.Desc15_128,_RefObjItem.Param16,_RefObjItem.Desc16_128,_RefObjItem.Param17,_RefObjItem.Desc17_128,_RefObjItem.Param18,_RefObjItem.Desc18_128,_RefObjItem.Param19,_RefObjItem.Desc19_128,_RefObjItem.Param20,_RefObjItem.Desc20_128,_RefObjItem.MaxMagicOptCount,_RefObjItem.ChildItemCount FROM _RefObjCommon INNER JOIN _RefObjItem ON _RefObjCommon.Link=_RefObjItem.ID WHERE _RefObjCommon.CodeName128 LIKE @CodeName AND _RefObjCommon.Service=1 ORDER BY _RefObjCommon.ID ASC END IF(@Type=2) BEGIN SELECT _RefObjCommon.Service,_RefObjCommon.ID,_RefObjCommon.CodeName128,_RefObjCommon.ObjName128,_RefObjCommon.OrgObjCodeName128,_RefObjCommon.NameStrID128,_RefObjCommon.DescStrID128,_RefObjCommon.CashItem,_RefObjCommon.Bionic,_RefObjCommon.TypeID1,_RefObjCommon.TypeID2,_RefObjCommon.TypeID3,_RefObjCommon.TypeID4,_RefObjCommon.DecayTime,_RefObjCommon.Country,_RefObjCommon.Rarity,_RefObjCommon.CanTrade,_RefObjCommon.CanSell,_RefObjCommon.CanBuy,_RefObjCommon.CanBorrow,_RefObjCommon.CanDrop,_RefObjCommon.CanPick,_RefObjCommon.CanRepair,_RefObjCommon.CanRevive,_RefObjCommon.CanUse,_RefObjCommon.CanThrow,_RefObjCommon.Price,_RefObjCommon.CostRepair,_RefObjCommon.CostRevive,_RefObjCommon.CostBorrow,_RefObjCommon.KeepingFee,_RefObjCommon.SellPrice,_RefObjCommon.ReqLevelType1,_RefObjCommon.ReqLevel1,_RefObjCommon.ReqLevelType2,_RefObjCommon.ReqLevel2,_RefObjCommon.ReqLevelType3,_RefObjCommon.ReqLevel3,_RefObjCommon.ReqLevelType4,_RefObjCommon.ReqLevel4,_RefObjCommon.MaxContain,_RefObjCommon.RegionID,_RefObjCommon.Dir,_RefObjCommon.OffsetX,_RefObjCommon.OffsetY,_RefObjCommon.OffsetZ,_RefObjCommon.Speed1,_RefObjCommon.Speed2,_RefObjCommon.Scale,_RefObjCommon.BCHeight,_RefObjCommon.BCRadius,_RefObjCommon.EventID,_RefObjCommon.AssocFileObj128,_RefObjCommon.AssocFileDrop128,_RefObjCommon.AssocFileIcon128,_RefObjCommon.AssocFile1_128,_RefObjCommon.AssocFile2_128, _RefObjChar.Lvl,_RefObjChar.CharGender,_RefObjChar.MaxHP,_RefObjChar.MaxMP,_RefObjChar.InventorySize,_RefObjChar.CanStore_TID1,_RefObjChar.CanStore_TID2,_RefObjChar.CanStore_TID3,_RefObjChar.CanStore_TID4,_RefObjChar.CanBeVehicle,_RefObjChar.CanControl,_RefObjChar.DamagePortion,_RefObjChar.MaxPassenger,_RefObjChar.AssocTactics,_RefObjChar.PD,_RefObjChar.MD,_RefObjChar.PAR,_RefObjChar.MAR,_RefObjChar.ER,_RefObjChar.BR,_RefObjChar.HR,_RefObjChar.CHR,_RefObjChar.ExpToGive,_RefObjChar.CreepType,_RefObjChar.Knockdown,_RefObjChar.KO_RecoverTime,_RefObjChar.DefaultSkill_1,_RefObjChar.DefaultSkill_2,_RefObjChar.DefaultSkill_3,_RefObjChar.DefaultSkill_4,_RefObjChar.DefaultSkill_5,_RefObjChar.DefaultSkill_6,_RefObjChar.DefaultSkill_7,_RefObjChar.DefaultSkill_8,_RefObjChar.DefaultSkill_9,_RefObjChar.DefaultSkill_10,_RefObjChar.TextureType,_RefObjChar.Except_1,_RefObjChar.Except_2,_RefObjChar.Except_3,_RefObjChar.Except_4,_RefObjChar.Except_5,_RefObjChar.Except_6,_RefObjChar.Except_7,_RefObjChar.Except_8,_RefObjChar.Except_9,_RefObjChar.Except_10 FROM _RefObjCommon INNER JOIN _RefObjChar ON _RefObjCommon.Link=_RefObjChar.ID WHERE CodeName128 LIKE @CodeName AND _RefObjCommon.Service=1 ORDER BY _RefObjCommon.ID ASC END
IF(@Type!=1 OR @Type!=2) BEGIN PRINT 'The Type must be 1 OR 2!' PRINT 'Use @Type=1 for Items' PRINT 'Use @Type=2 for Characters' END
وبعد ميتكريت ،، عايز تجيب اي سطر من سطور الميديا من RefObjCommon اللى هيتحط فى itemdata_xxxx.txt استخدك الكيوري دي بالكود نيم بتاع الأيتم
كود PHP:
Exec [dbo].[_GetMediaLines] 1,'ITEM_CODE_NAME'
|