I need default procedure

Results 1 to 2 of 2
  1. #1
    Member izzani85 is offline
    MemberRank
    Mar 2007 Join Date
    81Posts

    I need default procedure

    Anybody can help me post default procedure for cabal_sp_newchar?

    Thank you very much


  2. #2
    The Dinosaur chumpywumpy is offline
    MemberRank
    Jun 2008 Join Date
    /f451/Location
    5,127Posts

    Re: I need default procedure

    Here you go...

    Code:
    SET QUOTED_IDENTIFIER ON 
    GO
    SET ANSI_NULLS ON 
    GO
    
    
    /****** Object:  Stored Procedure dbo.cabal_sp_newchar    Script Date: 2008-4-14 5:52:47 ******/
    
    
    
    
    
    
    ALTER   PROCEDURE [dbo].[cabal_sp_newchar] (@charname varchar(16), @characteridx  int, @style int, @stylemast int)
    AS
    begin
    SET NOCOUNT ON
    	if( exists ( select * from cabal_badwoard where badword=@charname ) ) select convert(int,0x04)	
    	else if( exists ( select * from cabal_character_table where Name=@charname ) ) select convert(int,0x03)
    	else if( exists ( select * from cabal_character_table where characteridx=@characteridx ) ) select convert(int,0x02)
    	else if( @stylemast < 0x01 or @stylemast > 0x06 ) select convert(int,0x02)
    	else 
    	begin
    		-----------------------------------------------------------------------------------------------
    		declare @RegTime dateTime, @userNum int, @serverIdx int, @result int
    		set @userNum = @characterIdx/8
    		set @serverIdx = dbo.getServerIdx() 
    		set @RegTime = getDate()
    		set @result = convert(int, 0xA0) + @stylemast
    		------------------------------------------------------------------------------------------------
    
    		select charTable.*, etcTable.equipmentData, etcTable.inventoryData, etcTable.skillData,
    			   etcTable.quickSlotData, etcTable.questData, etcTable.questFlagsData
    		into #tempTable
    		from ACCOUNT.dbo.cabal_newCharData_table as charTable, 
    			 ACCOUNT.dbo.cabal_newEtcData_table as etcTable,
    			( select top 1 charDataIdx, etcDataIdx from ACCOUNT.dbo.cabal_newFlagData_table
    			  where channel = @serverIdx) as flagTable
    		where flagTable.etcDataIdx = etcTable.dataIdx and flagTable.charDataIdx = charTable.dataIdx
    			  and charTable.classType = etcTable.classType and charTable.classType = @stylemast
    		
    		IF( NOT EXISTS ( select * from #tempTable)) 
    		BEGIN
    			select convert(int, 0x01)
    			drop table #tempTable
    			return
    		END
    		-----------------------------------------------------------------------------------------------		
    		-- 캐릭터 카운트 증가
    		EXEC ACCOUNT.dbo.cabal_sp_update_character_count @userNum, @serverIdx, 1
    		
    		--캐릭터 생성
    		insert into cabal_character_table( CharacterIdx, Name, LEV, [EXP], [STR], DEX, [INT], PNT, Rank, Alz,
    			WorldIdx, [Position], Style, HP, MP, SP, SwdPNT, MagPNT, RankEXP, Flags, WarpBField, MapsBField, Reputation, Reserved1 )
    		select  @characteridx, @charname, LEV, [EXP], [STR], [DEX], [INT], [PNT], Rank, Alz,
    				WorldIdx, Position, @style, HP, MP, SP, SwdPNT, MagPNT, RankEXP, Flags, WarpBField, MapsBField, Reputation, Reserved1
    		from #TempTable
    		
    		begin tran 
    		insert into cabal_equipment_table (characterIdx, data) select @characteridx, equipmentData from #TempTable
    		insert into cabal_inventory_table (characterIdx, data) select @characteridx, inventoryData from #TempTable
    		insert into cabal_skilllist_table (characterIdx, data) select @characteridx, skillData from #TempTable
    		insert into cabal_quickslot_table (characterIdx, data) select @characteridx, quickSlotData from #TempTable
    		insert into cabal_questdata_table (characterIdx, data, flags) select @characteridx, questData, questFlagsData from #TempTable
    		commit tran
    		----------------------------------------------------------------------------------------------
    
    		-- 리턴값 0xA1 ~ 0xA6
    		drop table #tempTable
    		select convert(int, @result)
    		-----------------------------------------------------------------------------------------------	
    	end
    
    SET NOCOUNT OFF
    end
    
    GO
    SET QUOTED_IDENTIFIER OFF 
    GO
    SET ANSI_NULLS ON 
    GO



Advertisement