Files
LGram16 dd97ddec92 Restructure repository to include all source folders
Move git root from Client/ to src/ to track all source code:
- Client: Game client source (moved to Client/Client/)
- Server: Game server source
- GameTools: Development tools
- CryptoSource: Encryption utilities
- database: Database scripts
- Script: Game scripts
- rylCoder_16.02.2008_src: Legacy coder tools
- GMFont, Game: Additional resources

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 20:17:20 +09:00

135 lines
3.4 KiB
Transact-SQL

declare @UID as int
declare @CID as int
declare @Char1 as int
declare @Char2 as int
declare @Char3 as int
declare @Char4 as int
declare @Char5 as int
declare @OldServerGroupID as tinyint
declare @Count as tinyint
declare @CID_Temp as int
SELECT @CID = MAX(CID) + 1 FROM CharInfo WITH (UPDLOCK)
declare cursor1 cursor for
Select UID, OldServerGroupID, Char1, Char2, Char3, Char4, Char5 From Part2_New.dbo.UserInfo
open cursor1
FETCH NEXT FROM cursor1 INTO @UID, @OldServerGroupID, @Char1, @Char2, @Char3, @Char4, @Char5
WHILE @@FETCH_STATUS = 0
BEGIN
Set @Count = 5
WHILE (@Count > 0)
BEGIN
if @Count = 5
Begin
Set @CID_Temp = @Char1
End
else if @Count = 4
Begin
Set @CID_Temp = @Char2
End
else if @Count = 3
Begin
Set @CID_Temp = @Char3
End
else if @Count = 2
Begin
Set @CID_Temp = @Char4
End
else if @Count = 1
Begin
Set @CID_Temp = @Char5
End
If @CID_Temp <> 0
Begin
-- 캐릭터 정보 --
Insert into CharInfo Select @CID, T.Name, T.Sex, T.Hair, T.Face, T.Race, T.Class, T.Fame, T.Mileage, T.Guild, T.Party, T.Level, T.Equip, T.Gold, T.IP, T.STR, T.DEX, T.CON, T.Intell, T.WIS, T.HP, T.MP, T.Exp, T.Chance From Part2_New.dbo.CharInfo T Where CID = @CID_Temp
-- 캐릭터 정보 Ex --
Insert Into CharInfoEx Select @CID, T.Total, T.ServerID, T.Config, T.NameChangeCount, T.AdminFlag, T.RealmPoint, T.RealmCheckPoint, T.RealmMinute, T.LogoutTime, T.GuildWarFlag, T.RealmWarFlag From Part2_New.dbo.CharInfoEx T Where CID = @CID_Temp
-- 퀘스트 --
Insert Into Quest Select @CID, T.Quest, T.History From Part2_New.dbo.Quest T Where CID = @CID_Temp
-- 캐릭터 아이템 --
Insert Into CharItem Select @CID , T.Quick, T.Equip, T.Inventory, T.Extra From Part2_New.dbo.CharItem T Where CID = @CID_Temp
-- 캐릭터 아이템 Ex --
Insert Into CharItemEx Select @CID, T.Exchange, T.TempInven From Part2_New.dbo.CharItemEx T Where CID = @CID_Temp
-- 캐릭터 스킬 --
Insert Into CharSkill Select @CID, T.Skill From Part2_New.dbo.CharSkill T Where CID = @CID_Temp
-- 캐릭터 좌표 --
Insert Into CharPos Select @CID, T.LastPointX, T.LastPointY, T.LastPointZ, T.SavePointX, T.SavePointY, T.SavePointZ From Part2_New.dbo.CharPos T Where CID = @CID_Temp
-- 캐릭터 생성 시간 --
Insert Into CharInfo_Time Select @CID, T.CreateTime, T.UpdateTime From Part2_New.dbo.CharInfo_Time T Where CID = @CID_Temp
-- 캐릭터 친구 정보 --
Insert Into Friend Values(@CID, NULL, NULL, NULL, NULL)
-- 통합 캐릭터 리스트 --
Insert Into TblUnifiedCharList Select T.UID, T.OldServerGroupID, T.BeforeCID, @CID, T.BeforeCharName From Part2_New.dbo.TblUnifiedCharList T Where UID = @UID And OldServerGroupID = @OldServerGroupID And NewCID = @CID_Temp
-- UserInfo 업데이트 --
if @Count = 5
Begin
Update Part2_New.dbo.UserInfo Set Char1 = @CID Where UID = @UID And OldServerGroupID = @OldServerGroupID
End
else if @Count = 4
Begin
Update Part2_New.dbo.UserInfo Set Char2 = @CID Where UID = @UID And OldServerGroupID = @OldServerGroupID
End
else if @Count = 3
Begin
Update Part2_New.dbo.UserInfo Set Char3 = @CID Where UID = @UID And OldServerGroupID = @OldServerGroupID
End
else if @Count = 2
Begin
Update Part2_New.dbo.UserInfo Set Char4 = @CID Where UID = @UID And OldServerGroupID = @OldServerGroupID
End
else if @Count = 1
Begin
Update Part2_New.dbo.UserInfo Set Char5 = @CID Where UID = @UID And OldServerGroupID = @OldServerGroupID
End
Set @CID = @CID + 1
End
Set @Count = @Count - 1
End
FETCH NEXT FROM cursor1 INTO @UID, @OldServerGroupID, @Char1, @Char2, @Char3, @Char4, @Char5
End
CLOSE cursor1
DEALLOCATE cursor1