USE [SRO_VT_SHARD]
GO
/****** Object: StoredProcedure [dbo].[_AddNewChar] Script Date: 22/08/2022 6:26:06 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER OFF
GO
ALTER PROCEDURE [dbo].[_AddNewChar] @

JID INT,
--@CharSlot INT, @

CharID INT,
@CharName varchar (64),
@CharScale tinyINT, @

RegionID INT, @

Pos_X real, @

Pos_Y real, @

Pos_Z real,
@DefaultTeleport INT, @

MailID INT, @

PantsID INT, @

BootsID INT, @

WeaponID INT, @

hield INT, @

il tinyINT, @

ants tinyINT,
@DurBoots tinyINT,
@DurWeapon tinyINT, @

hield tinyINT,
@DefaultArrow INT
AS
SET NOCOUNT ON
DECLARE @

INT
DECLARE @

INT
DECLARE @

ID INT
SET @

ID = 0
-- Initial Equip Edit by LemoniscooL
DECLARE @

HandID INT
DECLARE @

HatID INT
DECLARE @

houlderID INT
DECLARE @

ringID INT
DECLARE @

ngID INT
DECLARE @

NeckID INT
DECLARE @DurHand INT
DECLARE @DurHat INT
DECLARE @

houlder INT
DECLARE @DurEarring INT
DECLARE @

ng INT
DECLARE @

eck INT
--Male Clothes Chinese
IF @

MailID = 3643) BEGIN
SET @

HandID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_M_CLOTHES_01_AA_A_RARE')
SET @

MailID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_M_CLOTHES_01_BA_A_RARE')
SET @

BootsID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_M_CLOTHES_01_FA_A_RARE')
SET @

HatID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_M_CLOTHES_01_CA_A_RARE')
SET @

PantsID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_M_CLOTHES_01_LA_A_RARE')
SET @

houlderID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_M_CLOTHES_01_SA_A_RARE')
SET @

ringID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_EARRING_01_A_RARE')
SET @

NeckID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_NECKLACE_01_A_RARE')
SET @

ngID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_RING_01_A_RARE')
END
--Male Heavy Armor Chinese
IF @

MailID = 3637) BEGIN
SET @

HandID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_M_HEAVY_01_AA_A_RARE')
SET @

MailID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_M_HEAVY_01_BA_A_RARE')
SET @

BootsID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_M_HEAVY_01_FA_A_RARE')
SET @

HatID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_M_HEAVY_01_CA_A_RARE')
SET @

PantsID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_M_HEAVY_01_LA_A_RARE')
SET @

houlderID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_M_HEAVY_01_SA_A_RARE')
SET @

ringID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_EARRING_01_A_RARE')
SET @

NeckID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_NECKLACE_01_A_RARE')
SET @

ngID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_RING_01_A_RARE')
END
--Male Light Armor Chinese
IF @

MailID = 3640) BEGIN
SET @

HandID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_M_LIGHT_01_AA_A_RARE')
SET @

MailID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_M_LIGHT_01_BA_A_RARE')
SET @

BootsID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_M_LIGHT_01_FA_A_RARE')
SET @

HatID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_M_LIGHT_01_CA_A_RARE')
SET @

PantsID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_M_LIGHT_01_LA_A_RARE')
SET @

houlderID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_M_LIGHT_01_SA_A_RARE')
SET @

ringID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_EARRING_01_A_RARE')
SET @

NeckID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_NECKLACE_01_A_RARE')
SET @

ngID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_RING_01_A_RARE')
END
--Female Clothes Chinese
IF @

MailID = 3652) BEGIN
SET @

HandID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_W_CLOTHES_01_AA_A_RARE')
SET @

MailID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_W_CLOTHES_01_BA_A_RARE')
SET @

BootsID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_W_CLOTHES_01_FA_A_RARE')
SET @

HatID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_W_CLOTHES_01_CA_A_RARE')
SET @

PantsID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_W_CLOTHES_01_LA_A_RARE')
SET @

houlderID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_W_CLOTHES_01_SA_A_RARE')
SET @

ringID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_EARRING_01_A_RARE')
SET @

NeckID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_NECKLACE_01_A_RARE')
SET @

ngID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_RING_01_A_RARE')
END
--Female Heavy Armor Chinese
IF @

MailID = 3646) BEGIN
SET @

HandID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_W_HEAVY_01_AA_A_RARE')
SET @

MailID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_W_HEAVY_01_BA_A_RARE')
SET @

BootsID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_W_HEAVY_01_FA_A_RARE')
SET @

HatID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_W_HEAVY_01_CA_A_RARE')
SET @

PantsID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_W_HEAVY_01_LA_A_RARE')
SET @

houlderID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_W_HEAVY_01_SA_A_RARE')
SET @

ringID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_EARRING_01_A_RARE')
SET @

NeckID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_NECKLACE_01_A_RARE')
SET @

ngID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_RING_01_A_RARE')
END
--Female Light Armor Chinese
IF @

MailID = 3649) BEGIN
SET @

HandID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_W_LIGHT_01_AA_A_RARE')
SET @

MailID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_W_LIGHT_01_BA_A_RARE')
SET @

BootsID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_W_LIGHT_01_FA_A_RARE')
SET @

HatID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_W_LIGHT_01_CA_A_RARE')
SET @

PantsID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_W_LIGHT_01_LA_A_RARE')
SET @

houlderID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_W_LIGHT_01_SA_A_RARE')
SET @

ringID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_EARRING_01_A_RARE')
SET @

NeckID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_NECKLACE_01_A_RARE')
SET @

ngID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_RING_01_A_RARE')
END
--Male Clothes Europe
IF @

MailID = 11623) BEGIN
SET @

HandID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_M_CLOTHES_01_AA_A_RARE')
SET @

MailID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_M_CLOTHES_01_BA_A_RARE')
SET @

BootsID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_M_CLOTHES_01_FA_A_RARE')
SET @

HatID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_M_CLOTHES_01_CA_A_RARE')
SET @

PantsID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_M_CLOTHES_01_LA_A_RARE')
SET @

houlderID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_M_CLOTHES_01_SA_A_RARE')
SET @

ringID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_EARRING_01_A_RARE')
SET @

NeckID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_NECKLACE_01_A_RARE')
SET @

ngID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_RING_01_A_RARE')
END
--Male Heavy Armor Europe
IF @

MailID = 11617) BEGIN
SET @

HandID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_M_HEAVY_01_AA_A_RARE')
SET @

MailID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_M_HEAVY_01_BA_A_RARE')
SET @

BootsID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_M_HEAVY_01_FA_A_RARE')
SET @

HatID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_M_HEAVY_01_CA_A_RARE')
SET @

PantsID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_M_HEAVY_01_LA_A_RARE')
SET @

houlderID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_M_HEAVY_01_SA_A_RARE')
SET @

ringID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_EARRING_01_A_RARE')
SET @

NeckID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_NECKLACE_01_A_RARE')
SET @

ngID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_RING_01_A_RARE')
END
--Male Light Armor Europe
IF @

MailID = 11620) BEGIN
SET @

HandID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_M_LIGHT_01_AA_A_RARE')
SET @

MailID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_M_LIGHT_01_BA_A_RARE')
SET @

BootsID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_M_LIGHT_01_FA_A_RARE')
SET @

HatID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_M_LIGHT_01_CA_A_RARE')
SET @

PantsID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_M_LIGHT_01_LA_A_RARE')
SET @

houlderID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_M_LIGHT_01_SA_A_RARE')
SET @

ringID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_EARRING_01_A_RARE')
SET @

NeckID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_NECKLACE_01_A_RARE')
SET @

ngID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_RING_01_A_RARE')
END
--Female Clothes Europe
IF @

MailID = 11632) BEGIN
SET @

HandID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_W_CLOTHES_01_AA_A_RARE')
SET @

MailID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_W_CLOTHES_01_BA_A_RARE')
SET @

BootsID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_W_CLOTHES_01_FA_A_RARE')
SET @

HatID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_W_CLOTHES_01_CA_A_RARE')
SET @

PantsID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_W_CLOTHES_01_LA_A_RARE')
SET @

houlderID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_W_CLOTHES_01_SA_A_RARE')
SET @

ringID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_EARRING_01_A_RARE')
SET @

NeckID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_NECKLACE_01_A_RARE')
SET @

ngID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_RING_01_A_RARE')
END
--Female Heavy Armor Europe
IF @

MailID = 11626) BEGIN
SET @

HandID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_W_HEAVY_01_AA_A_RARE')
SET @

MailID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_W_HEAVY_01_BA_A_RARE')
SET @

BootsID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_W_HEAVY_01_FA_A_RARE')
SET @

HatID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_W_HEAVY_01_CA_A_RARE')
SET @

PantsID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_W_HEAVY_01_LA_A_RARE')
SET @

houlderID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_W_HEAVY_01_SA_A_RARE')
SET @

ringID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_EARRING_01_A_RARE')
SET @

NeckID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_NECKLACE_01_A_RARE')
SET @

ngID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_RING_01_A_RARE')
END
--Female Light Armor Europe
IF @

MailID = 11629) BEGIN
SET @

HandID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_W_LIGHT_01_AA_A_RARE')
SET @

MailID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_W_LIGHT_01_BA_A_RARE')
SET @

BootsID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_W_LIGHT_01_FA_A_RARE')
SET @

HatID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_W_LIGHT_01_CA_A_RARE')
SET @

PantsID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_W_LIGHT_01_LA_A_RARE')
SET @

houlderID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_W_LIGHT_01_SA_A_RARE')
SET @

ringID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_EARRING_01_A_RARE')
SET @

NeckID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_NECKLACE_01_A_RARE')
SET @

ngID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_RING_01_A_RARE')
END
--Shield Chinese
IF @

hield = 10886) BEGIN
SET @

hield = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_SHIELD_01_A_RARE')
END
--Shield Europe
IF @

hield = 10896) BEGIN
SET @

hield = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_SHIELD_01_A_RARE')
END
--Blade Chinese
IF @

WeaponID = 3633) BEGIN
SET @

WeaponID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_BLADE_01_A_RARE')
END
--Bow Chinese
IF @

WeaponID = 3636) BEGIN
SET @

WeaponID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_BOW_01_A_RARE')
END
--Spear Chinese
IF @

WeaponID = 3634) BEGIN
SET @

WeaponID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_SPEAR_01_A_RARE')
END
--Sword Chinese
IF @

WeaponID = 3632) BEGIN
SET @

WeaponID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_SWORD_01_A_RARE')
END
--Glavie Chinese
IF @

WeaponID = 3635) BEGIN
SET @

WeaponID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_CH_TBLADE_01_A_RARE')
END
--Axe Europe
IF @

WeaponID = 10890) BEGIN
SET @

WeaponID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_AXE_01_A_RARE')
END
--XBow Europe
IF @

WeaponID = 10891) BEGIN
SET @

WeaponID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_CROSSBOW_01_A_RARE')
END
--Dagger Europe
IF @

WeaponID = 10887) BEGIN
SET @

WeaponID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_DAGGER_01_A_RARE')
END
--Darkstaff Europe
IF @

WeaponID = 10892) BEGIN
SET @

WeaponID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_DARKSTAFF_01_A_RARE')
END
--Harp Europe
IF @

WeaponID = 10894) BEGIN
SET @

WeaponID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_HARP_01_A_RARE')
END
--Cleric Rod Europe
IF @

WeaponID = 10895) BEGIN
SET @

WeaponID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_STAFF_01_A_RARE')
END
--Sword Europe
IF @

WeaponID = 10888) BEGIN
SET @

WeaponID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_SWORD_01_A_RARE')
END
--Staff Europe
IF @

WeaponID = 10893) BEGIN
SET @

WeaponID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_TSTAFF_01_A_RARE')
END
--Twohand Sword Europe
IF @

WeaponID = 10889) BEGIN
SET @

WeaponID = (SELECT ID FROM _RefObjCommon WHERE CodeName128='ITEM_EU_TSWORD_01_A_RARE')
END
--Select Durability
SET @DurHand = (Select Dur_L from _RefObjItem where ID in (Select Link from _RefObjCommon where ID = @

HandID))
SET @

il = (Select Dur_L from _RefObjItem where ID in (Select Link from _RefObjCommon where ID = @

MailID))
SET @DurBoots = (Select Dur_L from _RefObjItem where ID in (Select Link from _RefObjCommon where ID = @

BootsID))
SET @DurHat = (Select Dur_L from _RefObjItem where ID in (Select Link from _RefObjCommon where ID = @

HatID))
SET @

ants = (Select Dur_L from _RefObjItem where ID in (Select Link from _RefObjCommon where ID = @

PantsID))
SET @

houlder = (Select Dur_L from _RefObjItem where ID in (Select Link from _RefObjCommon where ID = @

houlderID))
SET @DurWeapon = (Select Dur_L from _RefObjItem where ID in (Select Link from _RefObjCommon where ID = @

WeaponID))
SET @

hield = (Select Dur_L from _RefObjItem where ID in (Select Link from _RefObjCommon where ID = @

hield))
SET @DurEarring = (Select Dur_L from _RefObjItem where ID in (Select Link from _RefObjCommon where ID = @

ringID))
SET @

ng = (Select Dur_L from _RefObjItem where ID in (Select Link from _RefObjCommon where ID = @

ngID))
SET @

eck = (Select Dur_L from _RefObjItem where ID in (Select Link from _RefObjCommon where ID = @

NeckID))
-- Initial Equip Edit by LemoniscooL
--set @

RegionID=25000
-----------------------------------------------------------------------------
-- 1. ??? ?? ??? valid? ???, ??? ???? ??? ?? ????.
-----------------------------------------------------------------------------
-- start by novice.
SELECT @

= count(CharID) FROM _User WITH (NOLOCK) WHERE UserJID = @

JID
IF @

>= 4)
BEGIN
-- 너무 많자나
RETURN -2
END
-- finish by novice.
-----------------------------------------------------------------------------
-- 2. 캐릭터 추가하기
-----------------------------------------------------------------------------
IF (@CharScale > 68) -- 0100 0100 --> 68 이다!
BEGIN
-- 캐릭터 생성 실패! 스케일 값이 이상하다!
RETURN -3
END
EXEC @

= _IsExistingCharName @CharName
IF @

<> 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 @

CharID, @CharName, @CharScale, 20, 20, @

RegionID, @

Pos_X, @

Pos_Y, @

Pos_Z, @DefaultTeleport, 109,
GetDate(), 1, 1, 30000000, 0, 3000000, 200,200, 1, 1, 1, 1)
SET @

ID = @@IDENTITY
IF (@@ERROR <> 0 OR @@ROWCOUNT = 0)
BEGIN
-- 캐릭터 생성 실패!
ROLLBACK TRANSACTION
RETURN -5
END
-- start by novice.
-- 이제 Slot 안쓴다.. 그냥 Insert 만..
INSERT INTO _User VALUES @

JID, @

ID)
-- 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 @

ID, 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,
*/
-- Initial Equip Edit by LemoniscooL
DECLARE @

ID BIGINT
SET @

ID = 0
-- Chest
IF @

MailID <> 0) BEGIN
EXEC @

ID = _FN_ADD_INITIAL_EQUIP @

ID, 1, @

MailID, @

il
IF @

ID <= 0) BEGIN
ROLLBACK TRANSACTION
RETURN -8
END
END
-- Hand
IF @

HandID <> 0) BEGIN
EXEC @

ID = _FN_ADD_INITIAL_EQUIP @

ID, 3, @

HandID, @DurHand
IF @

ID <= 0) BEGIN
ROLLBACK TRANSACTION
RETURN -8
END
END
-- Hat
IF @

HatID <> 0) BEGIN
EXEC @

ID = _FN_ADD_INITIAL_EQUIP @

ID, 0, @

HatID, @DurHat
IF @

ID <= 0) BEGIN
ROLLBACK TRANSACTION
RETURN -8
END
END
-- Shoulder
IF @

houlderID <> 0) BEGIN
EXEC @

ID = _FN_ADD_INITIAL_EQUIP @

ID, 2, @

houlderID, @

houlder
IF @

ID <= 0) BEGIN
ROLLBACK TRANSACTION
RETURN -8
END
END
-- Pants
IF @

PantsID <> 0) BEGIN
EXEC @

ID = _FN_ADD_INITIAL_EQUIP @

ID, 4, @

PantsID, @

ants
IF @

ID <= 0) BEGIN
ROLLBACK TRANSACTION
RETURN -9
END
END
-- Boots
IF @

BootsID <> 0) BEGIN
EXEC @

ID = _FN_ADD_INITIAL_EQUIP @

ID, 5, @

BootsID, @DurBoots
IF @

ID <= 0) BEGIN
ROLLBACK TRANSACTION
RETURN -10
END
END
-- Weapon
IF @

WeaponID <> 0) BEGIN
EXEC @

ID = _FN_ADD_INITIAL_EQUIP @

ID, 6, @

WeaponID, @DurWeapon
IF @

ID <= 0) BEGIN
ROLLBACK TRANSACTION
RETURN -11
END
END
-- Shield
IF @

hield <> 0) BEGIN
EXEC @

ID = _FN_ADD_INITIAL_EQUIP @

ID, 7, @

hield, @

hield
IF @

ID <= 0) BEGIN
ROLLBACK TRANSACTION
RETURN -12
END
END
-- Arror/Bolt
IF (@DefaultArrow <> 0) BEGIN
EXEC @

ID = _FN_ADD_INITIAL_EQUIP @

ID, 7, @DefaultArrow, 250
IF @

ID <= 0) BEGIN
ROLLBACK TRANSACTION
RETURN -13
END
END
-- Earring
IF @

ringID <> 0) BEGIN
EXEC @

ID = _FN_ADD_INITIAL_EQUIP @

ID, 9, @

ringID, @DurEarring
IF @

ID <= 0) BEGIN
ROLLBACK TRANSACTION
RETURN -8
END
END
-- Ring 1
IF @

ngID <> 0) BEGIN
EXEC @

ID = _FN_ADD_INITIAL_EQUIP @

ID, 11, @

ngID, @

ng
IF @

ID <= 0) BEGIN
ROLLBACK TRANSACTION
RETURN -8
END
END
-- Ring 2
IF @

ngID <> 0) BEGIN
EXEC @

ID = _FN_ADD_INITIAL_EQUIP @

ID, 12, @

ngID, @

ng
IF @

ID <= 0) BEGIN
ROLLBACK TRANSACTION
RETURN -8
END
END
-- Necklace
IF @

NeckID <> 0) BEGIN
EXEC @

ID = _FN_ADD_INITIAL_EQUIP @

ID, 10, @

NeckID, @

eck
IF @

ID <= 0) BEGIN
ROLLBACK TRANSACTION
RETURN -8
END
END
-- Initial Equip Edit by RONALD
-----------------------------------------------------------------------------
-- 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 @

ID, 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 @

CharID
INSERT INTO _CharSkillMastery (CharID, MasteryID, Level)
SELECT @

ID, 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 @

ID, 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 @

ID, 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 @

ID)
IF (@@ERROR <> 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -18
END
-----------------------------------------------------------------------------
-- Trijob 채워넣기!!!!!
-----------------------------------------------------------------------------
INSERT INTO _CharTrijob VALUES @

ID, 0, 1, 0, 0, 0)
IF (@@ERROR <> 0)
BEGIN
-- 인벤토리 생성 실패!
ROLLBACK TRANSACTION
RETURN -19
END
-----------------------------------------------------------------------------
-- CharList에 ID 넣어주기
-----------------------------------------------------------------------------
-- INSERT INTO SRO_VT_ACCOUNT.dbo.SK_Silk (JID, silk_own, silk_gift, silk_point) VALUES @

JID, 5000, 0, 0);
UPDATE _Char SET CurLevel = 1, MaxLevel = 1, Strength = 20, Intellect= 20, RemainStatPoint= 0, ExpOffset = 0, RemainGold = 50000000, RemainSkillPoint = 3000000, InventorySize = 109 WHERE _Char.CharID = @

ID
UPDATE _Items SET OptLevel=8 WHERE ID64 IN (SELECT ItemID FROM _Inventory WHERE Slot BETWEEN 0 AND 12 AND Slot Not LIKE '8' AND CharID @

ID)
INSERT _CharNameList VALUES(@CharName, @

ID)
exec _ADD_ITEM_EXTERN @CharName,'ITEM_ETC_E060118_60EXP_HELP',1,0
exec _ADD_ITEM_EXTERN @CharName,'ITEM_ETC_E060118_100EXP_HELP',1,0
exec _ADD_ITEM_EXTERN @CharName,'ITEM_ETC_HP_POTION_05',10000,0
exec _ADD_ITEM_EXTERN @CharName,'ITEM_ETC_MP_POTION_05',10000,0
exec _ADD_ITEM_EXTERN @CharName,'ITEM_QNO_WC_FERRY2_1_01',20,1
exec _ADD_ITEM_EXTERN @CharName,'ITEM_QNO_WC_POTION_4_01',10,1
exec _ADD_ITEM_EXTERN @CharName,'ITEM_QNO_WC_SMITH_3_02',20,1
exec _ADD_ITEM_EXTERN @CharName,'ITEM_COS_P_RABBIT_SCROLL',1,0
exec _ADD_ITEM_EXTERN @CharName,'ITEM_MALL_REPAIR_HAMMER',10,0
exec _ADD_ITEM_EXTERN @CharName,'ITEM_MALL_QUIVER',5000,0
exec _ADD_ITEM_EXTERN @CharName,'ITEM_MALL_BOLT',5000,0
exec _ADD_ITEM_EXTERN @CharName,'ITEM_ETC_ARCHEMY_POTION_SPEED_11',10,0
UPDATE [dbo].[_Char] set HwanLevel='0' where CharName16=@CharName
IF @

CharID >= 1907 AND @

CharID <= 1919) -- MALE CH
BEGIN
exec _ADD_ITEM_EXTERN @CharName,'ITEM_EVENT_AVATAR_M_NASRUN',1,0
END
ELSE IF @

CharID >= 14875 AND @

CharID <= 14887) -- MALE EU
BEGIN
exec _ADD_ITEM_EXTERN @CharName,'ITEM_EVENT_AVATAR_M_NASRUN',1,0
END
ELSE IF @

CharID >= 1920 AND @

CharID <= 1931) -- FEMALE CH
BEGIN
exec _ADD_ITEM_EXTERN @CharName,'ITEM_EVENT_AVATAR_W_NASRUN',1,0
END
ELSE IF @

CharID >= 14888 AND @

CharID <= 14900) -- FEMALE EU
BEGIN
exec _ADD_ITEM_EXTERN @CharName,'ITEM_EVENT_AVATAR_W_NASRUN',1,0
END
-- Quick Slot 정보 저장용!!!
exec _AddNewClientConfig @

ID -- by novice...... for saving client configurations...
COMMIT TRANSACTION
RETURN @

ID