server-re/decomp/schema/RustyHearts/procs/skill_learn_base.sql

195 lines
7.1 KiB
Transact-SQL

CREATE PROCEDURE [dbo].[skill_learn_base]
@char_id [uniqueidentifier],
@class int
as
begin
set nocount on
declare @skillid00 nvarchar(50),
@skillid01 nvarchar(50),
@skillid02 nvarchar(50),
@skillid03 nvarchar(50),
@skillid04 nvarchar(50),
@skillid05 nvarchar(50),
@skillid06 nvarchar(50),
@skillid07 nvarchar(50),
@skillid08 nvarchar(50);
set @skillid00 = convert( nvarchar(50), newid() );
set @skillid01 = convert( nvarchar(50), newid() );
set @skillid02 = convert( nvarchar(50), newid() );
set @skillid03 = convert( nvarchar(50), newid() );
set @skillid04 = convert( nvarchar(50), newid() );
set @skillid05 = convert( nvarchar(50), newid() );
set @skillid06 = convert( nvarchar(50), newid() );
set @skillid07 = convert( nvarchar(50), newid() );
set @skillid08 = convert( nvarchar(50), newid() );
declare @updatesql nvarchar(2500),
@char_char_id nvarchar(50);
set @char_char_id = convert( nvarchar(50), @char_id );
if @class = 1 or @class = 101 or @class = 102
begin
SET @updatesql = 'insert into [dbo].SkillTable values ( ''' + @skillid00 + ''',''' + @char_char_id + ''', 0, -1, 20001, 1, GetDate(), 1 )'
EXEC sp_executesql @updatesql
SET @updatesql = 'insert into [dbo].SkillTable values ( ''' + @skillid01 + ''',''' + @char_char_id + ''', 0, -1, 20051, 1, GetDate(), 1 )'
EXEC sp_executesql @updatesql
SET @updatesql = 'insert into [dbo].SkillTable values ( ''' + @skillid02 + ''',''' + @char_char_id + ''', 0, 0, 10001, 1, GetDate(), 1 )';
EXEC sp_executesql @updatesql
SET @updatesql = 'insert into [dbo].SkillTable values ( ''' + @skillid03 + ''',''' + @char_char_id + ''', 0, 1, 10002, 1, GetDate(), 1 )';
EXEC sp_executesql @updatesql
SET @updatesql = 'insert into [dbo].SkillTable values ( ''' + @skillid04 + ''',''' + @char_char_id + ''', 0, -1, 10051, 1, GetDate(), 1 )';
EXEC sp_executesql @updatesql
SET @updatesql = 'insert into [dbo].SkillTable values ( ''' + @skillid05 + ''',''' + @char_char_id + ''', 0, -1, 10052, 1, GetDate(), 1 )';
EXEC sp_executesql @updatesql
end
else if @class = 2 or @class = 201 or @class = 202
begin
SET @updatesql = 'insert into [dbo].SkillTable values ( ''' + @skillid00 + ''',''' + @char_char_id + ''', 0, -1, 20051, 1, GetDate(), 1 )';
EXEC sp_executesql @updatesql
SET @updatesql = 'insert into [dbo].SkillTable values ( ''' + @skillid01 + ''',''' + @char_char_id + ''', 0, -1, 60001, 1, GetDate(), 1 )';
EXEC sp_executesql @updatesql
SET @updatesql = 'insert into [dbo].SkillTable values ( ''' + @skillid02 + ''',''' + @char_char_id + ''', 0, 0, 10001, 1, GetDate(), 1 )';
EXEC sp_executesql @updatesql
SET @updatesql = 'insert into [dbo].SkillTable values ( ''' + @skillid03 + ''',''' + @char_char_id + ''', 0, 1, 10002, 1, GetDate(), 1 )';
EXEC sp_executesql @updatesql
SET @updatesql = 'insert into [dbo].SkillTable values ( ''' + @skillid04 + ''',''' + @char_char_id + ''', 0, -1, 10051, 1, GetDate(), 1 )';
EXEC sp_executesql @updatesql
SET @updatesql = 'insert into [dbo].SkillTable values ( ''' + @skillid05 + ''',''' + @char_char_id + ''', 0, -1, 10052, 1, GetDate(), 1 )';
EXEC sp_executesql @updatesql
end
else if @class = 3 or @class = 301 or @class = 302
begin
SET @updatesql = 'insert into [dbo].SkillTable values ( ''' + @skillid00 + ''',''' + @char_char_id + ''', 0, -1, 20001, 1, GetDate(), 1 )';
EXEC sp_executesql @updatesql
SET @updatesql = 'insert into [dbo].SkillTable values ( ''' + @skillid01 + ''',''' + @char_char_id + ''', 0, -1, 20002, 1, GetDate(), 1 )';
EXEC sp_executesql @updatesql
SET @updatesql = 'insert into [dbo].SkillTable values ( ''' + @skillid02 + ''',''' + @char_char_id + ''', 0, 0, 10001, 1, GetDate(), 1 )';
EXEC sp_executesql @updatesql
SET @updatesql = 'insert into [dbo].SkillTable values ( ''' + @skillid03 + ''',''' + @char_char_id + ''', 0, 1, 10002, 1, GetDate(), 1 )';
EXEC sp_executesql @updatesql
SET @updatesql = 'insert into [dbo].SkillTable values ( ''' + @skillid04 + ''',''' + @char_char_id + ''', 0, -1, 10051, 1, GetDate(), 1 )';
EXEC sp_executesql @updatesql
SET @updatesql = 'insert into [dbo].SkillTable values ( ''' + @skillid05 + ''',''' + @char_char_id + ''', 0, -1, 10052, 1, GetDate(), 1 )';
EXEC sp_executesql @updatesql
end
else if @class = 4 or @class = 401 or @class = 402
begin
SET @updatesql = 'insert into [dbo].SkillTable values ( ''' + @skillid00 + ''',''' + @char_char_id + ''', 0, -1, 40001, 1, GetDate(), 1 )';
EXEC sp_executesql @updatesql
SET @updatesql = 'insert into [dbo].SkillTable values ( ''' + @skillid01 + ''',''' + @char_char_id + ''', 0, -1, 50001, 1, GetDate(), 1 )';
EXEC sp_executesql @updatesql
SET @updatesql = 'insert into [dbo].SkillTable values ( ''' + @skillid02 + ''',''' + @char_char_id + ''', 0, 0, 10001, 1, GetDate(), 1 )';
EXEC sp_executesql @updatesql
SET @updatesql = 'insert into [dbo].SkillTable values ( ''' + @skillid03 + ''',''' + @char_char_id + ''', 0, 1, 10002, 1, GetDate(), 1 )';
EXEC sp_executesql @updatesql
SET @updatesql = 'insert into [dbo].SkillTable values ( ''' + @skillid04 + ''',''' + @char_char_id + ''', 0, -1, 10051, 1, GetDate(), 1 )';
EXEC sp_executesql @updatesql
SET @updatesql = 'insert into [dbo].SkillTable values ( ''' + @skillid05 + ''',''' + @char_char_id + ''', 0, -1, 10052, 1, GetDate(), 1 )';
EXEC sp_executesql @updatesql
end
insert into dbo.QuickSlotExTable
values
( @char_id, --0
0,
NULL, --1
0, --2
NULL, --3
0, --4
NULL, --5
0, --6
NULL, --7
0, --8
NULL, --9
0, --10
NULL, --11
0, --12
NULL, --13
0, --14
NULL, --15
2, --16
convert( [uniqueidentifier], @skillid00 ), --17
2, --18
convert( [uniqueidentifier], @skillid01 ), --19
0, --20
NULL, --21
0, --22
NULL, --23
0, --24
NULL, --25
0, --26
NULL, --1
0, --2
NULL, --3
0, --4
NULL, --5
0, --6
NULL, --7
0, --8
NULL, --9
0, --10
NULL, --11
0, --12
NULL, --13
0, --14
NULL, --15
0, --16
NULL, --17
0, --18
NULL, --19
0, --20
NULL, --21
0, --22
NULL, --23
0, --24
NULL, --25
0, --22
NULL, --23
0, --22
NULL, --23
0, --22
NULL, --23
0, --22
NULL, --23
0, --22
NULL, --23
0, --24
NULL
);
end