USE [Telecaster]
GO
/****** Object: StoredProcedure [dbo].[smp_insert_character] Script Date: 04/22/2011 00:41:15 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: NCarbon Develop
-- Create date: 21/04/11
-- Description: Character Inserting Procedure
-- =============================================
-- start of smp_insert_character
ALTER PROCEDURE [dbo].[smp_insert_character]
--@IN_SID INT OUTPUT,
@OUT_SID NCHAR(10) OUTPUT,
@IN_NAME NVARCHAR(31),
@IN_ACCOUNT VARCHAR(61),
@IN_ACCOUNT_ID INT,
@IN_SLOT INT,
@IN_X INT,
@IN_Y INT,
@IN_Z INT,
@IN_LAYER INT,
@IN_RACE INT,
@IN_SEX INT,
@IN_MAX_REACHED_LEVEL INT,
@IN_LV INT,
@IN_HP INT,
@IN_MP INT,
@IN_JLV INT,
@IN_JP INT,
@IN_CHA INT,
@IN_SKIN_COLOR INT,
@IN_MODEL_00 INT,
@IN_MODEL_01 INT,
@IN_MODEL_02 INT,
@IN_MODEL_03 INT,
@IN_MODEL_04 INT,
@IN_DEFAULT_WEAPON_SID BIGINT,
@IN_DEFAULT_WEAPON_CODE INT,
@IN_DEFAULT_ARMOR_SID BIGINT,
@IN_DEFAULT_ARMOR_CODE INT,
@IN_DEFAULT_BAG_SID BIGINT, ---------------.
@IN_DEFAULT_BAG_CODE INT -- <<<<--- Bugged Param |
---------------*
AS
--SET IDENTITY_INSERT Character ON -- <<< Trying to set SIDs on Character Table
SET NOCOUNT ON
DECLARE @RET INT
SET @RET = 0
BEGIN TRANSACTION
--DECLARE @IN_SID INT
--SET @IN_SID = 2
--BEGIN TRANSACTION --.------------------------------------------------------------.
--DECLARE @IN_DEFAULT_BAG_CODE INT --| <<< Uncomment that when @IN_DEFAULT_BAG_CODE brings errors |
--SET @IN_DEFAULT_BAG_CODE = 1 --| |
--BEGIN TRANSACTION --|____________________________________________________________|
SELECT @RET = COUNT(*) FROM Character WITH (NOLOCK) where name = @IN_NAME;
IF @RET > 0
BEGIN
ROLLBACK TRANSACTION
SET @OUT_SID = 0;
SET @RET = -1;
GOTO ON_END
END
INSERT INTO Character
(
-- sid, -- 0
name, -- 1
account, -- 2
account_id, -- 3
slot, -- 4
x, -- 5
y, -- 6
z, -- 7
layer, -- 8
race, -- 9
sex, -- 10
exp, -- 11
last_decreased_exp, -- 12
lv, -- 13
max_reached_level, -- 14
hp, -- 15
mp, -- 16
stamina, -- 17
havoc, -- 18
jlv, -- 19
jp, -- 20
total_jp, -- 21
job_0, -- 22
job_1, -- 23
job_2, -- 24
jlv_0, -- 25
jlv_1, -- 26
jlv_2, -- 27
immoral_point, -- 28
cha, -- 29
pkc, -- 30
dkc, -- 31
huntaholic_point, -- 32
create_time, -- 33
delete_time, -- 34
login_time, -- 35
logout_time, -- 36
login_count, -- 37
play_time, -- 38
belt_00, -- 39
belt_01, -- 40
belt_02, -- 41
belt_03, -- 42
belt_04, -- 43
belt_05, -- 44
permission, -- 45
skin_color, -- 46
model_00, -- 47
model_01, -- 48
model_02, -- 49
model_03, -- 50
model_04, -- 51
job, -- 52
gold, -- 53
party_id, -- 54
guild_id, -- 55
prev_guild_id, -- 56
flag_list, -- 57
client_info, -- 58
job_depth, -- 59
summon_0, -- 60
summon_1, -- 61
summon_2, -- 62
summon_3, -- 63
summon_4, -- 64
summon_5, -- 65
main_summon, -- 66
sub_summon, -- 67
remain_summon_time, -- 68
pet, -- 69
chaos, -- 70
adv_chat_count, -- 71
name_changed, -- 72
auto_used, -- 73
guild_block_time, -- 74
pkmode, -- 75
otp_value, -- 76
otp_date, -- 77
chat_block_time, -- 78
default_weapon_sid, -- 79-- BEGIN OF NCarbon Patch --
default_weapon_code, -- 80
default_armor_sid, -- 81
default_armor_code, -- 82
default_bag_sid, -- 83
default_bag_code, -- 84
ip, -- 85
huntaholic, -- 86
remain_chat_block_time, -- 87
logout_duration, -- 88
out_name_changed -- 89 -- END OF NCarbon Patch --
)
VALUES
(
-- @IN_SID, -- 0 DB°¡ ÀÚµ¿ ¹ß±Þ
@IN_NAME, -- 1
@IN_ACCOUNT, -- 2
@IN_ACCOUNT_ID, -- 3
@IN_SLOT, -- 4
@IN_X, -- 5
@IN_Y, -- 6
@IN_Z, -- 7
@IN_LAYER, -- 8
@IN_RACE, -- 9
@IN_SEX, -- 10
0, -- 11
0, -- 12
@IN_LV, -- 13
@IN_MAX_REACHED_LEVEL, -- 14
@IN_HP, -- 15
@IN_MP, -- 16
0, -- 17
0, -- 18
@IN_JLV, -- 19
@IN_JP, -- 20
0, -- 21
0, -- 22
0, -- 23
0, -- 24
0, -- 25
0, -- 26
0, -- 27
0, -- 28
@IN_CHA, -- 29
0, -- 30
0, -- 31
0, -- 32
GETDATE(), -- 33
CONVERT( DATETIME, '9999-12-31', 120 ), -- 34
0, -- 35
GETDATE(), -- 36
0, -- 37
0, -- 38
0, -- 39
0, -- 40
0, -- 41
0, -- 42
0, -- 43
0, -- 44
0, -- 45
@IN_SKIN_COLOR, -- 46
@IN_MODEL_00, -- 47
@IN_MODEL_01, -- 48
@IN_MODEL_02, -- 49
@IN_MODEL_03, -- 50
@IN_MODEL_04, -- 51
0, -- 52
0, -- 53
0, -- 54
0, -- 55
0, -- 56
'', -- 57
'QS=0,0,2,0|QS=0,1,2,2|QS=0,11,2,1|', -- 58
0, -- 59
0, -- 60
0, -- 61
0, -- 62
0, -- 63
0, -- 64
0, -- 65
0, -- 66
0, -- 67
0, -- 68
0, -- 69
0, -- 70
0, -- 71
1, -- 72
0, -- 73
0, -- 74
0, -- 75
0, -- 76
GETDATE(), -- 77
0, -- 78
@IN_DEFAULT_WEAPON_SID, -- 79 -- BEGIN OF NCarbon Patch --
@IN_DEFAULT_WEAPON_CODE, -- 80
@IN_DEFAULT_ARMOR_SID, -- 81
@IN_DEFAULT_ARMOR_CODE, -- 82
@IN_DEFAULT_BAG_SID, -- 83
@IN_DEFAULT_BAG_CODE, -- 84
0, -- 85
0, -- 86
0, -- 87
0, -- 88
0 -- 89 -- END OF NCarbon Patch --
);
IF @@ERROR <> 0
BEGIN
SET @RET = -1
ROLLBACK TRANSACTION
GOTO ON_END
END
--SET IDENTITY_INSERT Character OFF
--SET IDENTITY_INSERT dbo.Item ON --<<< Appears to be not necessary
SET @OUT_SID = SCOPE_IDENTITY();
-- ±âº» ¹«±â Áö±Þ
INSERT INTO dbo.Item
(
sid, -- 0
account_id, -- 1
owner_id, -- 2
summon_id, -- 3
auction_id, -- 4
keeping_id, -- 5
idx, -- 6
code, -- 7
flag, -- 8
cnt, -- 9
level, -- 10
enhance, -- 11
endurance, -- 12
gcode, -- 13
create_time, -- 14
wear_info, -- 15
socket_0, -- 16
socket_1, -- 17
socket_2, -- 18
socket_3, -- 19
--socket_4, -- 20 Added
--socket_5, -- 21 Added
remain_time, -- 22
elemental_effect_type, -- 23
elemental_effect_expire_time, -- 24
elemental_effect_attack_point, -- 25
elemental_effect_magic_point, -- 26
update_time -- 27
)
VALUES
(
@IN_DEFAULT_WEAPON_SID, -- 0
0, -- 1
@OUT_SID, -- 2
0, -- 3
0, -- 4
0, -- 5
0, -- 6
@IN_DEFAULT_WEAPON_CODE, -- 7
0, -- 8
1, -- 9
1, -- 10
0, -- 11
50, -- 12
6, -- 13
GETDATE(), -- 14
0, -- 15
0, -- 16
0, -- 17
0, -- 18
0, -- 19
--0, -- 20 Added
--0, -- 21 Added
0, -- 22
0, -- 23
CONVERT( DATETIME, '2000-01-01', 120 ), -- 24
0, -- 25
0, -- 26
GETDATE() -- 27
);
-- ±âº» ¾Æ¸Ó Áö±Þ
INSERT INTO dbo.Item
(
sid, -- 0
account_id, -- 1
owner_id, -- 2
summon_id, -- 3
auction_id, -- 4
keeping_id, -- 5
idx, -- 6
code, -- 7
flag, -- 8
cnt, -- 9
level, -- 10
enhance, -- 11
endurance, -- 12
gcode, -- 13
create_time, -- 14
wear_info, -- 15
socket_0, -- 16
socket_1, -- 17
socket_2, -- 18
socket_3, -- 19
--socket_4, -- 20 Added
--socket_5, -- 21 Added
remain_time, -- 22
elemental_effect_type, -- 23
elemental_effect_expire_time, -- 24
elemental_effect_attack_point, -- 25
elemental_effect_magic_point, -- 26
update_time -- 27
)
VALUES
(
@IN_DEFAULT_ARMOR_SID, -- 0
0, -- 1
@OUT_SID, -- 2
0, -- 3
0, -- 4
0, -- 5
0, -- 6
@IN_DEFAULT_ARMOR_CODE, -- 7
0, -- 8
1, -- 9
1, -- 10
0, -- 11
50, -- 12
6, -- 13
GETDATE(), -- 14
2, -- 15
0, -- 16
0, -- 17
0, -- 18
0, -- 19
--0, -- 20 Added
--0, -- 21 Added
0, -- 22
0, -- 23
CONVERT( DATETIME, '2000-01-01', 120 ), -- 24
0, -- 25
0, -- 26
GETDATE() -- 27
);
-- ±âº» °¡¹æ Áö±Þ
INSERT INTO dbo.Item
(
sid, -- 0
account_id, -- 1
owner_id, -- 2
summon_id, -- 3
auction_id, -- 4
keeping_id, -- 5
idx, -- 6
code, -- 7
flag, -- 8
cnt, -- 9
level, -- 10
enhance, -- 11
endurance, -- 12
gcode, -- 13
create_time, -- 14
wear_info, -- 15
socket_0, -- 16
socket_1, -- 17
socket_2, -- 18
socket_3, -- 19
--socket_4, -- 20 Added
--socket_5, -- 21 Added
remain_time, -- 22
elemental_effect_type, -- 23
elemental_effect_expire_time, -- 24
elemental_effect_attack_point, -- 25
elemental_effect_magic_point, -- 26
update_time -- 27
)
VALUES
(
@IN_DEFAULT_BAG_SID, -- 0
0, -- 1
@OUT_SID, -- 2
0, -- 3
0, -- 4
0, -- 5
0, -- 6
@IN_DEFAULT_BAG_CODE, -- 7
0, -- 8
1, -- 9
1, -- 10
0, -- 11
50, -- 12
6, -- 13
GETDATE(), -- 14
23, -- 15
0, -- 16
0, -- 17
0, -- 18
0, -- 19
--0, -- 20 Added
--0, -- 21 Added
0, -- 22
0, -- 23
CONVERT( DATETIME, '2000-01-01', 120 ), -- 24
0, -- 25
0, -- 26
GETDATE() -- 27
);
--SET IDENTITY_INSERT Item OFF
ON_SUCCESS:
COMMIT TRANSACTION
ON_END:
RETURN @RET
-- end of smp_insert_character