| UnStoppable! |
01-04-2015 03:28 PM |
ÑÏ: (failed to create a character. please try to connect again.(s1030
ÇÊÝÖá ÎÏ ÇÚãá New Query æ ÍØ Ïå
ßæÏ PHP:
USE [SRO_VT_SHARD] GO /****** Object: StoredProcedure [dbo].[_AddNewChar] Script Date: 24/02/2015 06:38:48 ã ******/ 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, ExpOffSet, Strength, Intellect, LatestRegion,PosX, PosY, PosZ, AppointedTeleport, InventorySize, LastLogout, CurLevel, MaxLevel, RemainGold, RemainStatPoint, RemainSkillPoint, HP, MP, JobLvl_Trader, JobLvl_Hunter, JobLvl_Robber, WorldID, HwanLevel) VALUES (@RefCharID, @CharName, @CharScale, 4414241349, 149, 149, 25000, 1367, -30.54028, 1036, 2094, 109, GetDate(), 130, 130, 500000000, 387, 10000000, 200,200, 1, 1, 1, 1, 4) 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) -- Quick Slot Ã�¤Âº¸ ÀúÀå¿ë!!! exec _AddNewClientConfig @NewCharID -- by novice...... for saving client configurations...
COMMIT TRANSACTION RETURN @NewCharID
æ ÇÝÊÍ Constapole-Jangan
|