|
• ÇáÇäÜÊÜÓÜÇÈ » May 2015
|
• ÑÞÜã ÇáÚÜÖÜæíÜÉ » 122322
|
• ÇáãÔÜÜÜÇÑßÜÇÊ » 1,109
|
• ÇáÜÏæáÜÉ » Qena
|
• ÇáÜåÜæÇíÜÉ » Game Developer -Designer Unity 3D
|
• ÇÓÜã ÇáÜÓÜíÜÑÝÜÑ » Private Server
|
• ÇáÜÌÜäÜÓ » Male
|
• äÞÜÇØ ÇáÊÞííã » 12
|
|
|
ÑÏ: ÚÇæÒ Çí ÔÎÕíÉ ÊäÒá íßæä ãÚÇåÇ title name ÌäÈ ÇÓãåÇ ÇÒÇí ããßä ÔÑÍ
ÇáÝ ÔßÑÇ áíßã ÈÓ ÇäÇ áÞíÊ ÇáÍá ....
ÇáÍãÏááå ßá ÍÇÌÉ ÈÊÚÈ ÈäÝÓí áæ ÞÚÏÊ ÇÓÊäÇ ÑÏ æÇÍÏ æÇÍÏ Ýíßã ãÔ ÑÍ ÇÚãá ÇááÚÈÉ ÇáßæÏ Ïå ãäí áíßã íßãä äÇÓ ÊÍÊÇÌå æ ÇäÇ ÚÇÑÝ Çä Ýí äÇÓ ÑÍ ÊÍÊÇÌå
ßæÏ PHP:
USE [SRO_VT_SHARD] GO /****** Object: StoredProcedure [dbo].[_AddNewChar] Script Date: 07/03/2015 20:34:15 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO
ALTER PROCEDURE [dbo].[_AddNewChar] @UserJID INT, --@CharSlot INT, @RefCharID INT, @CharName varchar (64), @CharScale tinyINT, @StartRegionID INT, @StartPos_X real, @StartPos_Y real, @StartPos_Z real, @DefaultTeleport INT, @RefMailID INT, @RefPantsID INT, @RefBootsID INT, @RefWeaponID INT, @RefShield INT, @DurMail tinyINT, @DurPants tinyINT, @DurBoots tinyINT, @DurWeapon tinyINT, @DurShield tinyINT, @DefaultArrow INT AS SET NOCOUNT ON
DECLARE @Slot INT DECLARE @temp INT DECLARE @NewCharID INT SET @NewCharID = 0 ----------------------------------------------------------------------------- -- 1. ij¸¯ÅÍ ½½·Ô ³Ñ¹ö°¡ validÇÑ °ÍÀÎÁö, ±×¸®°í ºó½½·ÔÀÌ ¸Â´ÂÁö ¸ÕÀú üũÇÑ´Ù. ----------------------------------------------------------------------------- -- start by novice. SELECT @temp = count(CharID) FROM _User WITH (NOLOCK) WHERE UserJID = @UserJID IF (@temp >= 4) BEGIN -- ³Ê¹« ¸¹ÀÚ³ª RETURN -2 END -- finish by novice. ----------------------------------------------------------------------------- -- 2. ij¸¯ÅÍ Ãß°¡Çϱâ ----------------------------------------------------------------------------- IF (@CharScale > 68) -- 0100 0100 --> 68 ÀÌ´Ù! BEGIN -- ij¸¯ÅÍ »ý¼º ½ÇÆÐ! ½ºÄÉÀÏ °ªÀÌ ÀÌ»óÇÏ´Ù! RETURN -3 END EXEC @temp = _IsExistingCharName @CharName IF (@temp <> 0) BEGIN -- ÀÌ¹Ì »ç¿ëÁßÀÎ À̸§À̶ó´Âµ¥? RETURN -4 END BEGIN TRANSACTION -- Àδø½Ã½ºÅÛÀÌ Àû¿ëµÇ¸é¼* ¸¶Áö¸·¿¡ WorldID¿Í 1°ªÀ» ´õ ³Ö¾î ÁÖ¾ú´Ù! INSERT INTO _Char (RefObjID, CharName16, Scale, Strength, Intellect, LatestRegion,PosX, PosY, PosZ, AppointedTeleport, InventorySize, LastLogout, CurLevel, MaxLevel, RemainGold, RemainStatPoint, RemainSkillPoint, HP, MP, JobLvl_Trader, JobLvl_Hunter, JobLvl_Robber, WorldID) VALUES (@RefCharID, @CharName, @CharScale, 20, 20, @StartRegionID, @StartPos_X, @StartPos_Y, @StartPos_Z, @DefaultTeleport, 109, GetDate(), 1, 1, 15000000, 0, 10000000, 200,200, 1, 1, 1, 1) SET @NewCharID = @@IDENTITY IF (@@ERROR <> 0 OR @@ROWCOUNT = 0) BEGIN -- ij¸¯ÅÍ »ý¼º ½ÇÆÐ! ROLLBACK TRANSACTION RETURN -5 END -- start by novice. -- ÀÌÁ¦ Slot ¾È¾´´Ù.. ±×³É Insert ¸¸.. INSERT INTO _User VALUES (@UserJID, @NewCharID) -- finish by novice. ----------------------------------------------------------------------------- -- 3-1. Àåºñ ½½·Ô ä¿ì±â -- [Àκ¥Å丮 ½½·Ô 96°³] + [Àåºñ½½·Ô 13°³] <- Àκ¥Å丮 È®Àå ¼*ºñ½º ÈÄ 48°³¿¡¼* 96°³·Î Áõ°¡!!!(woos0) ----------------------------------------------------------------------------- --PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!! INSERT INTO _Inventory(CharID, Slot, ItemID) SELECT @NewCharID, cnt, 0 FROM _RefDummySlot with( nolock ) WHERE cnt < 109
IF (@@ERROR <> 0) BEGIN -- Àκ¥Å丮 »ý¼º ½ÇÆÐ! ROLLBACK TRANSACTION RETURN -7 END
--PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!! -- µðÆúÆ®·Î ¼±ÅÃÇÑ ¾ÆÀÌÅÛÀ» ´Ù½Ã ³Ö¾îÁÖÀÚ... /* ¿ä·± ¼ø¼*·Î Á¤ÀǵǾî ÀÖ´Ù. 0: EQUIP_SLOT_HELM 1: EQUIP_SLOT_MAIL, 2: EQUIP_SLOT_SHOULDERGUARD, 3: EQUIP_SLOT_GAUNTLET, 4: EQUIP_SLOT_PANTS, 5: EQUIP_SLOT_BOOTS, 6: EQUIP_SLOT_WEAPON, 7: EQUIP_SLOT_SHIELD or ARROW, 8: EQUIP_SLOT_EARRING, 9: EQUIP_SLOT_NECKLACE, 10: EQUIP_SLOT_L_RING, 11: EQUIP_SLOT_R_RING, */ DECLARE @ItemID BIGINT SET @ItemID = 0 -- »ó°© IF (@RefMailID <> 0) BEGIN EXEC @ItemID = _FN_ADD_INITIAL_EQUIP @NewCharID, 1, @RefMailID, @DurMail IF (@ItemID <= 0) BEGIN ROLLBACK TRANSACTION RETURN -8 END END -- ¹ÙÁö IF (@RefPantsID <> 0) BEGIN EXEC @ItemID = _FN_ADD_INITIAL_EQUIP @NewCharID, 4, @RefPantsID, @DurPants IF (@ItemID <= 0) BEGIN ROLLBACK TRANSACTION RETURN -9 END END -- Boots IF (@RefBootsID <> 0) BEGIN EXEC @ItemID = _FN_ADD_INITIAL_EQUIP @NewCharID, 5, @RefBootsID, @DurBoots IF (@ItemID <= 0) BEGIN ROLLBACK TRANSACTION RETURN -10 END END -- Weapon IF (@RefWeaponID <> 0) BEGIN EXEC @ItemID = _FN_ADD_INITIAL_EQUIP @NewCharID, 6, @RefWeaponID, @DurWeapon IF (@ItemID <= 0) BEGIN ROLLBACK TRANSACTION RETURN -11 END END -- ¹æÆÐ IF (@RefShield <> 0) BEGIN EXEC @ItemID = _FN_ADD_INITIAL_EQUIP @NewCharID, 7, @RefShield, @DurShield IF (@ItemID <= 0) BEGIN ROLLBACK TRANSACTION RETURN -12 END END -- Ȥ½Ã default·Î ¼±ÅÃÇÑ ¹«±â°¡ ȰÀ̶ó¸é È*»ì 250°³µéÀÌ È°Åëµµ ÇÔ²² ÁØ´Ù. ÁÒÄ¡? IF (@DefaultArrow <> 0) BEGIN EXEC @ItemID = _FN_ADD_INITIAL_EQUIP @NewCharID, 7, @DefaultArrow, 250 IF (@ItemID <= 0) BEGIN ROLLBACK TRANSACTION RETURN -13 END END
----------------------------------------------------------------------------- -- 3-2. ¾Æ¹ÙŸ Inventory ½½·Ô ä¿ì±â -- [¾Æ¹ÙŸ Àκ¥Å丮 ½½·Ô 5°³] -- APPLY_AVATAR_SYSTEMÀÌ Àû¿ëµÇ¸é¼* Ãß°¡µÇ´Â ºÎºÐ ----------------------------------------------------------------------------- --PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!! INSERT INTO _InventoryForAvatar(CharID, Slot, ItemID) SELECT @NewCharID, cnt, 0 FROM _RefDummySlot with( nolock ) WHERE cnt < 5
IF (@@ERROR <> 0) BEGIN -- ¾Æ¹ÙŸ Àκ¥Å丮 »ý¼º ½ÇÆÐ! ROLLBACK TRANSACTION RETURN -14 END --PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!! ----------------------------------------------------------------------------- -- default skill³Ö¾îÁÖ±â ----------------------------------------------------------------------------- DECLARE @country tinyINT EXEC @country = _GetObjCountry @RefCharID INSERT INTO _CharSkillMastery (CharID, MasteryID, Level) SELECT @NewCharID, MasteryID, 0 FROM _RefCharDefault_SkillMastery with(nolock) WHERE Race = @country or Race = 3 IF (@@error <> 0) BEGIN ROLLBACK TRANSACTION RETURN -15 END INSERT INTO _CharSkill (CharID,SkillID,Enable) SELECT @NewCharID, SkillID, 1 FROM _RefCharDefault_Skill with(nolock) WHERE Race = @country or Race = 3 IF (@@error <> 0) BEGIN ROLLBACK TRANSACTION RETURN -16 END ----------------------------------------------------------------------------- -- ±âº» Äù½ºÆ® ³Ö¾îÁÖ±â ----------------------------------------------------------------------------- INSERT INTO _CharQuest (CharID, QuestID, Status, AchievementCount, StartTime, EndTime, QuestData1, QuestData2) SELECT @NewCharID, ID, 1, 0, getdate(), getdate(), 0, 0 FROM _RefQuest WHERE CodeName in (SELECT CodeName FROM _RefCharDefault_Quest with(nolock) WHERE (Race = @country or Race = 3) and RequiredLevel = 1 and Service = 1) IF (@@error <> 0) BEGIN ROLLBACK TRANSACTION RETURN -17 END ----------------------------------------------------------------------------- -- Static Avatar Initial Record ³Ö±â ----------------------------------------------------------------------------- INSERT INTO _StaticAvatar(CharID) values(@NewCharID) IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN -18 END ----------------------------------------------------------------------------- -- Trijob ä¿ö³Ö±â!!!!! ----------------------------------------------------------------------------- INSERT INTO _CharTrijob VALUES (@NewCharID, 0, 1, 0, 0, 0) IF (@@ERROR <> 0) BEGIN -- Àκ¥Å丮 »ý¼º ½ÇÆÐ! ROLLBACK TRANSACTION RETURN -19 END ----------------------------------------------------------------------------- -- CharList¿¡ ID ³Ö¾îÁÖ±â ----------------------------------------------------------------------------- INSERT _CharNameList VALUES(@CharName, @NewCharID) exec _ADD_ITEM_EXTERN @CharName,'ITEM_EVENT_HP_SUPERSET_5_BAG',8000,1 exec _ADD_ITEM_EXTERN @CharName,'ITEM_EVENT_MP_SUPERSET_5_BAG',8000,1 exec _ADD_ITEM_EXTERN @CharName,'ITEM_EVENT_COS_C_PEGASUS_SCROLL',20,1 exec _ADD_ITEM_EXTERN @CharName,'ITEM_ETC_ARCHEMY_POTION_SPEED_11',10,1 exec _ADD_ITEM_EXTERN @CharName,'ITEM_MALL_AVATAR_M_KNIGHT',1,1 exec _ADD_ITEM_EXTERN @CharName,'ITEM_MALL_AVATAR_M_KNIGHT_HAT',1,1 exec _ADD_ITEM_EXTERN @CharName,'ITEM_MALL_AVATAR_W_HALLOWEEN',1,1 exec _ADD_ITEM_EXTERN @CharName,'ITEM_MALL_AVATAR_W_KNIGHT_HAT',1,1 exec _ADD_ITEM_EXTERN @CharName,'ITEM_EVENT_COS_P_MYOWON_SCROLL',1,1 exec _ADD_ITEM_EXTERN @CharName,'ITEM_MALL_REVERSE_RETURN_SCROLL',50,1 exec _ADD_ITEM_EXTERN @CharName,'ITEM_ETC_ARENA_COIN',200,1 exec _ADD_ITEM_EXTERN @CharName,'ITEM_MALL_GLOBAL_CHATTING',5,1 UPDATE [dbo].[_Char] set HwanLevel='9' where CharName16=@CharName
-- Quick Slot Á¤º¸ ÀúÀå¿ë!!! exec _AddNewClientConfig @NewCharID -- by novice...... for saving client configurations...
COMMIT TRANSACTION RETURN @NewCharID
##íÜ##ÛÜ###á####ÜÞ###
|