USE [CHARACTER_01_DBF]
GO
/****** Object: StoredProcedure [dbo].[CHARACTER_STR] Script Date: 06/03/2014 16:25:01 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER proc [dbo].[CHARACTER_STR]
@iGu CHAR(2) = 'S1',
@im_idPlayer CHAR(7) = '0000001',
@iserverindex CHAR(2) = '01',
/**********************************************
INSERT ?
**********************************************/
-- CHARACTER_TBL
@iaccount VARCHAR(32) = '',
@im_szName VARCHAR(32) = '',
@iplayerslot INT = 0,
@idwWorldID INT = 0,
@im_dwIndex INT = 0,
@im_vPos_x REAL = 0,
@im_vPos_y REAL = 0,
@im_vPos_z REAL = 0,
@im_szCharacterKey VARCHAR(32) = '',
@im_dwSkinSet INT = 0,
@im_dwHairMesh INT = 0,
@im_dwHairColor INT = 0,
@im_dwHeadMesh INT = 0,
@im_dwSex INT = 0,
/**********************************************
UPDATE ?
**********************************************/
-- CHARACTER_TBL
@im_vScale_x REAL = 0,
@im_dwMotion INT = 0,
@im_fAngle REAL = 0,
@im_nHitPoint INT = 0,
@im_nManaPoint INT = 0,
@im_nFatiguePoint INT = 0,
@im_dwRideItemIdx INT = 0,
@im_dwGold INT = 0,
@im_nJob INT = 0,
@im_pActMover VARCHAR(50) = '',
@im_nStr INT = 0,
@im_nSta INT = 0,
@im_nDex INT = 0,
@im_nInt INT = 0,
@im_nLevel INT = 0,
@im_nExp1 BIGINT = 0,
@im_nExp2 BIGINT = 0,
@im_aJobSkill VARCHAR(500) ='',
@im_aLicenseSkill VARCHAR(500) ='',
@im_aJobLv VARCHAR(500) ='',
@im_dwExpertLv INT = 0,
@im_idMarkingWorld INT = 0,
@im_vMarkingPos_x REAL = 0,
@im_vMarkingPos_y REAL = 0,
@im_vMarkingPos_z REAL = 0,
@im_nRemainGP INT = 0,
@im_nRemainLP INT = 0,
@im_nFlightLv INT = 0,
@im_nFxp INT = 0,
@im_nTxp INT = 0,
@im_lpQuestCntArray VARCHAR(3072)= '',
@im_chAuthority CHAR(1) = '',
@im_dwMode INT = 0,
@im_idparty INT = 0,
@im_idMuerderer INT = 0,
@im_nFame INT = 0,
@im_nDeathExp BIGINT = 0,
@im_nDeathLevel INT = 0,
@im_dwFlyTime INT = 0,
@im_nMessengerState INT = 0,
@iTotalPlayTime INT = 0
-------------- (ADD : Version8-PK System)
,@im_nPKValue int=0
,@im_dwPKPropensity int=0
,@im_dwPKExp int=0
-- CARD_CUBE_TBL
,@im_Card VARCHAR(1980)= '',
@im_Index_Card VARCHAR(215) = '',
@im_ObjIndex_Card VARCHAR(215) = '',
@im_Cube VARCHAR(1980)= '',
@im_Index_Cube VARCHAR(215) = '',
@im_ObjIndex_Cube VARCHAR(215) = '',
-- INVENTORY_TBL
@im_Inventory VARCHAR(6940)= '',
@im_apIndex VARCHAR(345) = '',
@im_adwEquipment VARCHAR(135) = '',
@im_dwObjIndex VARCHAR(345) = '',
-- TASKBAR_TBL
@im_aSlotApplet VARCHAR(3100)= '',
-- TASKBAR_ITEM_TBL
@im_aSlotItem VARCHAR(6885)= '',
-- TASKBAR_TBL
@im_aSlotQueue VARCHAR(225)= '',
@im_SkillBar SMALLINT = 0,
-- BANK_TBL
@im_Bank VARCHAR(4290)= '',
@im_apIndex_Bank VARCHAR(215)= '',
@im_dwObjIndex_Bank VARCHAR(215)= '',
@im_dwGoldBank INT = 0,
@im_nFuel INT = -1,
@im_tmAccFuel INT = 0,
@im_dwSMTime VARCHAR(2560)='',
@iSkillInfluence varchar(2048) ='',
@im_dwSkillPoint INT = 0,
@im_aCompleteQuest varchar(1024) = '',
@im_extInventory varchar(2000) = '',
@im_extBank varchar(2000) = '',
@im_InventoryPiercing varchar(8000) = '',
@im_BankPiercing varchar(8000) = '',
@im_dwReturnWorldID INT = 1,
@im_vReturnPos_x REAL = 0,
@im_vReturnPos_y REAL = 0,
@im_vReturnPos_z REAL = 0,
-------------- ( Version 7 : Skill Update)
@im_SkillPoint int=0,
@im_SkillLv int=0,
@im_SkillExp bigint=0,
-------------- (?? ?? : 2006 11 13 Attendant Class)
@idwEventFlag bigint=0,
@idwEventTime int=0,
@idwEventElapsed int=0
-------------- (ADD : Version8-Angel System)
,@im_nAngelExp bigint=0
,@im_nAngelLevel int=0
--------------- Version 9 ?? ?? Pet??
,@iszInventoryPet varchar(4200) = '$'
,@iszBankPet varchar(4200) = '$'
,@im_dwPetId int = -1
,@im_nExpLog int = 0
,@im_nAngelExpLog int = 0
, @im_nCoupon int = 0
---------- Ver.13
, @im_nHonor int = -1
, @im_nLayer int = 0
---------- Ver 15
--, @im_BankPW char(4) = '0000'
, @im_aCheckedQuest varchar(100) =''
, @im_nCampusPoint int = 0
, @im_idCampus int = 0
, @im_nPvpKills int = 0
, @im_nPvpDeaths int = 0
, @im_nReb int = 0
, @im_szVipEndTime varchar(13) = 20120202
, @im_szOwnTitle varchar(20) = ''
, @im_dwMadrigalGiftExp int = 0
, @im_tmLogout bigint = 0
, @im_nHideCoat int = 0
, @im_nPvpK int = 0
, @im_nPvpD int = 0
, @im_tmNextRoulette bigint = 0
/************************************************** *****
Gu ??
S : SELECT
I : INSERT
U : UPDATE
D : DELETE
2005.04.11 updated
ALTER TABLE CHARACTER_TBL ADD m_aCompleteQuest varchar(1024) NULL
ALTER TABLE CHARACTER_TBL ALTER COLUMN m_lpQuestCntArray VARCHAR(3072) NULL
************************************************** *****/
AS
set nocount on
declare @last_connect tinyint
set @last_connect = 1
DECLARE @om_chLoginAuthority CHAR(1),@oaccount VARCHAR(32),@oplayerslot INT
IF @iGu = 'S2' -- ??? ?? ??????? ?????? ????
BEGIN
IF @iaccount = '' OR @im_szName = ''
BEGIN
SELECT m_chAuthority = '',fError = '1', fText = '????'
RETURN
END
SELECT A.dwWorldID,
A.m_szName,
A.playerslot,
A.End_Time,
A.BlockTime,
A.m_dwIndex,
A.m_idPlayer,
A.m_idparty,
A.m_dwSkinSet,
A.m_dwHairMesh,
A.m_dwHeadMesh,
A.m_dwHairColor,
A.m_dwSex,
A.m_nJob,
A.m_nLevel,
A.m_vPos_x,
A.m_vPos_y,
A.m_vPos_z,
A.m_nStr,
A.m_nSta,
A.m_nDex,
A.m_nInt,
A.m_aJobLv,
A.m_chAuthority,
A.m_idCompany,
A.m_nMessengerState,
B.m_Inventory,
B.m_apIndex,
B.m_adwEquipment,
B.m_dwObjIndex,
m_idGuild = CASE WHEN C.m_idGuild IS NULL THEN '0' ELSE C.m_idGuild END ,
m_idWar = CASE WHEN C.m_idWar IS NULL THEN '0' ELSE C.m_idWar END,
D.m_extInventory,
D.m_InventoryPiercing,
------------- ver. 13
A.m_nHonor,
last_connect = @last_connect
FROM CHARACTER_TBL A, INVENTORY_TBL B,GUILD_MEMBER_TBL C, INVENTORY_EXT_TBL D
WHERE A.m_idPlayer = B.m_idPlayer
AND A.serverindex= B.serverindex
AND B.m_idPlayer = D.m_idPlayer
AND B.serverindex = D.serverindex
AND D.m_idPlayer *= C.m_idPlayer
AND D.serverindex *= C.serverindex
AND A.isblock = 'F'
AND A.account = @iaccount
AND A.serverindex= @iserverindex
ORDER BY A.playerslot
insert into CHARACTER_TBL_penya_check (account, m_szName, m_dwGold, check_sec, serverindex)
select @iaccount, m_szName, m_dwGold, 9, @iserverindex
from CHARACTER_TBL (nolock)
where account = @iaccount and serverindex = @iserverindex and TotalPlayTime < 1 and m_dwGold >= 1
RETURN
END
/*
??? ?? ??????? ?????? ????
ex )
CHARACTER_STR 'S2',@im_idPlayer (iMode),@iserverindex,@iaccount,@im_szName (iPassword)
CHARACTER_STR 'S2','0','02','seghope','1234'
*/
ELSE
IF @iGu = 'S3' -- ??? ????? ?? ???? idPlayer? ? ????
BEGIN
SELECT m_szName, m_idPlayer,m_idCompany
FROM CHARACTER_TBL
WHERE serverindex = @iserverindex
-- AND isblock = 'F'
ORDER BY m_idPlayer
RETURN
END
/*
??? ????? ?? ???? idPlayer? ? ????
ex )
CHARACTER_STR 'S3','',@iserverindex
CHARACTER_STR 'S3','','01'
*/
ELSE
IF @iGu = 'S4' -- ??? ??? ??
BEGIN
declare @q1 nvarchar(4000)
set @q1 = '
SELECT Item_Name, Item_count, m_nAbilityOption, m_nNo, m_bItemResist, m_nResistAbilityOption,
m_bCharged, nPiercedSize, adwItemId0, adwItemId1, adwItemId2, adwItemId3, m_dwKeepTime, nRandomOptItemId,
isnull(adwItemId5, 0) as adwItemId5, isnull(adwItemId6, 0) as adwItemId6, isnull(adwItemId7, 0) as adwItemId7, isnull(adwItemId8, 0) as adwItemId8, isnull(adwItemId9, 0) as adwItemId9, isnull(nUMPiercedSize, 0) as nUMPiercedSize,
isnull(adwUMItemId0, 0) as adwUMItemId0, isnull(adwUMItemId1, 0) as adwUMItemId1, isnull(adwUMItemId2, 0) as adwUMItemId2, isnull(adwUMItemId3, 0) as adwUMItemId3, isnull(adwUMItemId4, 0) as adwUMItemId4
FROM ITEM_SEND_TBL
WHERE m_idPlayer = @im_idPlayer AND serverindex = @iserverindex AND ItemFlag = 0'
exec sp_executesql @q1, N'@im_idPlayer char(7), @iserverindex char(2)', @im_idPlayer, @iserverindex
/*
SELECT Item_Name,
Item_count,
m_nAbilityOption,
m_nNo,
m_bItemResist,
m_nResistAbilityOption,
m_bCharged,
nPiercedSize,
adwItemId0,
adwItemId1,
adwItemId2,
adwItemId3,
m_dwKeepTime
FROM ITEM_SEND_TBL
WHERE m_idPlayer = @im_idPlayer
AND serverindex = @iserverindex
AND ItemFlag = 0
*/
RETURN
END
/*
??? ??
ex )
CHARACTER_STR 'S4',@im_idPlayer,@iserverindex
CHARACTER_STR 'S4','000001','01'
*/
ELSE
IF @iGu = 'S5' -- ??? ??? ????? ??? ??
BEGIN
-- DELETE ITEM_SEND_TBL
UPDATE ITEM_SEND_TBL SET ProvideDt=getdate(), ItemFlag=1
WHERE m_nNo = @iplayerslot
IF @@ROWCOUNT = 0
SELECT fError = '0'
ELSE
SELECT fError = '1'
RETURN
END
/*
??? ??? ????? ??? ??
ex )
CHARACTER_STR 'S5',@im_idPlayer,@iserverindex,@iaccount
CHARACTER_STR 'S5','000001','01','???',1,1
*/
ELSE
IF @iGu = 'S6' -- ??? ??? ??
BEGIN
SELECT Item_Name,
Item_count,
m_nAbilityOption,
m_nNo,
State,
m_bItemResist,
m_nResistAbilityOption
FROM ITEM_REMOVE_TBL
WHERE m_idPlayer = @im_idPlayer
AND serverindex = @iserverindex
AND ItemFlag = 0
RETURN
END
/*
??? ??
ex )
CHARACTER_STR 'S6',@im_idPlayer,@iserverindex
CHARACTER_STR 'S6','000001','01'
*/
ELSE
IF @iGu = 'S7' -- ??? ??? ????? ??? ??
BEGIN
-- DELETE ITEM_REMOVE_TBL
UPDATE ITEM_REMOVE_TBL SET DeleteDt=getdate(), ItemFlag=1
WHERE m_nNo = @iplayerslot
IF @@ROWCOUNT = 0
SELECT fError = '0'
ELSE
SELECT fError = '1'
RETURN
END
/*
??? ??? ????? ??? ??
ex )
CHARACTER_STR 'S7',@im_idPlayer,@iserverindex,@iaccount
CHARACTER_STR 'S7','000001','01','???',1,1
*/
IF @iGu = 'S8' -- ??? ?? ????
BEGIN
-- ?? ?? ???? character ?
SELECT @om_chLoginAuthority = m_chLoginAuthority
FROM ACCOUNT_DBF.dbo.ACCOUNT_TBL_DETAIL
WHERE account = @iaccount
SELECT m_chLoginAuthority = @om_chLoginAuthority,
A.account,
A.m_idPlayer,
A.playerslot,
A.serverindex,
A.dwWorldID,
A.m_szName,
A.m_dwIndex,
A.m_vScale_x,
A.m_dwMotion,
A.m_vPos_x,
A.m_vPos_y,
A.m_vPos_z,
A.m_fAngle,
A.m_szCharacterKey,
A.m_idPlayer,
A.m_nHitPoint,
A.m_nManaPoint,
A.m_nFatiguePoint,
A.m_nFuel,
A.m_dwSkinSet,
A.m_dwHairMesh,
A.m_dwHairColor,
A.m_dwHeadMesh,
A.m_dwSex,
A.m_dwRideItemIdx,
A.m_dwGold,
A.m_nJob,
A.m_pActMover,
A.m_nStr,
A.m_nSta,
A.m_nDex,
A.m_nInt,
A.m_nLevel,
A.m_nMaximumLevel,
A.m_nExp1,
A.m_nExp2,
A.m_aJobSkill,
A.m_aLicenseSkill,
A.m_aJobLv,
A.m_dwExpertLv,
A.m_idMarkingWorld,
A.m_vMarkingPos_x,
A.m_vMarkingPos_y,
A.m_vMarkingPos_z,
A.m_nRemainGP,
A.m_nRemainLP,
A.m_nFlightLv,
A.m_nFxp,
A.m_nTxp,
A.m_lpQuestCntArray,
m_aCompleteQuest = ISNULL(A.m_aCompleteQuest,'$'),
A.m_chAuthority,
A.m_dwMode,
A.m_idparty,
A.m_idCompany,
A.m_idMuerderer,
A.m_nFame,
A.m_nDeathExp,
A.m_nDeathLevel,
A.m_dwFlyTime,
A.m_nMessengerState,
A.End_Time,
A.BlockTime,
A.blockby,
A.isblock,
A.TotalPlayTime,
A.CreateTime,
A.m_dwSkillPoint,
B.m_aSlotApplet,
B.m_aSlotQueue,
B.m_SkillBar,
C.m_aSlotItem,
D.m_Inventory,
D.m_apIndex,
D.m_adwEquipment,
D.m_dwObjIndex,
m_idGuild = ISNULL(G.m_idGuild,'0'),
m_idWar = ISNULL(G.m_idWar,'0'),
A.m_tmAccFuel,
A.m_tGuildMember,
m_dwSMTime = ISNULL(H.m_dwSMTime,'NULL') ,
SkillInfluence = ISNULL(E.SkillInfluence,'$'),
F.m_extInventory,
F.m_InventoryPiercing,
A.m_dwReturnWorldID,
A.m_vReturnPos_x,
A.m_vReturnPos_y,
A.m_vReturnPos_z,
last_connect = @last_connect,
A.m_SkillPoint,
A.m_SkillLv,
A.m_SkillExp,
-------------- (2006 11 13 ?? ?? : Attedant Event)
A.dwEventFlag,
A.dwEventTime,
A.dwEventElapsed
-------------- (Version8 : PK System)
,A.PKValue as m_nPKValue
,A.PKPropensity as m_dwPKPropensity
,A.PKExp as m_dwPKExp
-------------- (Version8 : Angel System)
,A.AngelExp as m_nAngelExp
,A.AngelLevel as m_nAngelLevel
------------------- Version9 Pet
,F.szInventoryPet as szInventoryPet
,A.m_dwPetId
, A.m_nExpLog, A.m_nAngelExpLog
, m_nCoupon
---------------- ver.13
, A.m_nLayer
---------- Ver 15
, A.m_aCheckedQuest
, A.m_nCampusPoint
, A.idCampus
, A.m_nPvpKills
, A.m_nPvpDeaths
, A.m_nReb
, A.m_szVipEndTime
, A.m_szOwnTitle
, A.m_dwMadrigalGiftExp
, A.m_tmLogout
, A.m_nHideCoat
, isnull(R.m_nRestPoint, 0) m_nRestPoint
, isnull(R.m_LogOutTime, 0) m_LogOutTime
, A.m_nPvpK
, A.m_nPvpD
, isnull(L.m_tmNextRoulette,0) m_tmNextRoulette
, A.m_dwPlayerColor
FROM CHARACTER_TBL A,
TASKBAR_TBL B,
TASKBAR_ITEM_TBL C,
INVENTORY_TBL D,
SKILLINFLUENCE_TBL E,
INVENTORY_EXT_TBL F,
GUILD_MEMBER_TBL G,
BILING_ITEM_TBL H
, LOTTERY_TBL L
, tblRestPoint R
WHERE A.m_idPlayer = @im_idPlayer
AND A.serverindex = @iserverindex
AND A.m_idPlayer = B.m_idPlayer
AND A.serverindex = B.serverindex
AND B.m_idPlayer = C.m_idPlayer
AND B.serverindex = C.serverindex
AND C.m_idPlayer = D.m_idPlayer
AND C.serverindex = D.serverindex
AND D.m_idPlayer = E.m_idPlayer
AND D.serverindex = E.serverindex
AND E.m_idPlayer = F.m_idPlayer
AND E.serverindex = F.serverindex
AND F.serverindex *= G.serverindex
AND F.m_idPlayer *= G.m_idPlayer
AND F.serverindex *= R.serverindex
AND F.m_idPlayer *= R.m_idPlayer
AND F.serverindex *= H.serverindex
AND F.m_idPlayer *= H.m_idPlayer
AND F.m_idPlayer *= L.m_idPlayer
AND F.serverindex *= L.serverindex
AND A.account = lower(@iaccount)
insert into CHARACTER_TBL_validity_check (m_idPlayer, serverindex, account, m_szName, TotalPlayTime, m_dwGold, m_nLevel, m_nJob, sum_ability, CreateTime)
select m_idPlayer, serverindex, account, m_szName, TotalPlayTime, m_dwGold, m_nLevel, m_nJob, (m_nStr + m_nSta + m_nDex + m_nInt), CreateTime
from CHARACTER_TBL (nolock)
where m_idPlayer = @im_idPlayer and TotalPlayTime <= 1
and (m_dwGold >= 1 or m_nLevel >= 2 or m_nJob >= 1 or (m_nStr + m_nSta + m_nDex + m_nInt) > 60)
declare @m_dwGold_old bigint, @m_dwGold_now bigint
select @m_dwGold_old = m_dwGold from tblLogout_Penya (nolock) where m_idPlayer = @im_idPlayer
select @m_dwGold_now = m_dwGold from CHARACTER_TBL (nolock) where serverindex = @iserverindex and m_idPlayer = @im_idPlayer
if (@m_dwGold_old <> @m_dwGold_now)
begin
insert into tblLogout_Penya_Diff_Log (serverindex, m_idPlayer, m_dwGold_old, regdate_old, m_dwGold_now)
select serverindex, m_idPlayer, @m_dwGold_old, regdate, @m_dwGold_now
from tblLogout_Penya (nolock)
where m_idPlayer = @im_idPlayer and serverindex = @iserverindex
end
-- ?? ?? ???? account ?
-- DECLARE @bank TABLE (m_idPlayer CHAR(6),serverindex CHAR(2),playerslot INT)
--
-- INSERT @bank
-- (m_idPlayer,serverindex,playerslot)
-- SELECT m_idPlayer,serverindex,playerslot
-- FROM CHARACTER_TBL
-- WHERE account = @iaccount
-- AND isblock = 'F'
-- ORDER BY playerslot
SELECT a.m_idPlayer,
c.playerslot,
a.m_Bank,
a.m_apIndex_Bank,
a.m_dwObjIndex_Bank,
a.m_dwGoldBank,
a.m_BankPw,
b.m_extBank,
b.m_BankPiercing
,b.szBankPet
FROM dbo.BANK_TBL a,
dbo.BANK_EXT_TBL b,
dbo.CHARACTER_TBL c
WHERE a.m_idPlayer = b.m_idPlayer
AND a.serverindex = b.serverindex
AND b.m_idPlayer = c.m_idPlayer
AND b.serverindex = c.serverindex
AND c.account = @iaccount
AND c.isblock = 'F'
ORDER BY c.playerslot
-- ?? ?? ????
SELECT a.nPocket,
a.szItem,
a.szIndex,
a.szObjIndex,
a.bExpired,
a.tExpirationDate,
b.szExt,
b.szPiercing,
b.szPet
FROM tblPocket as a inner join tblPocketExt as b
on a.serverindex = b.serverindex AND a.idPlayer = b.idPlayer AND a.nPocket = b.nPocket
WHERE a.serverindex = @iserverindex AND a.idPlayer = @im_idPlayer
ORDER BY a.nPocket
RETURN
END
/*
??? ?? ???? New
ex )
CHARACTER_STR 'S8',@im_idPlayer,@iserverindex,@iaccount
CHARACTER_STR 'S8','425120','01','ata3k'
*/
ELSE
IF @iGu = 'U1' -- ??? ??
BEGIN
UPDATE CHARACTER_TBL
SET dwWorldID = @idwWorldID,
m_dwIndex = @im_dwIndex,
m_dwSex = @im_dwSex,
m_vScale_x = @im_vScale_x,
m_dwMotion = @im_dwMotion,
m_vPos_x = @im_vPos_x,
m_vPos_y = @im_vPos_y,
m_vPos_z = @im_vPos_z,
m_dwHairMesh = @im_dwHairMesh,
m_dwHairColor = @im_dwHairColor,
m_dwHeadMesh = @im_dwHeadMesh, -- 2004/11/08 ??
m_fAngle = 0, --@im_fAngle,
m_szCharacterKey = @im_szCharacterKey,
m_nHitPoint = @im_nHitPoint,
m_nManaPoint = @im_nManaPoint,
m_nFatiguePoint = @im_nFatiguePoint,
m_nFuel = @im_nFuel,
m_dwRideItemIdx = @im_dwRideItemIdx,
m_dwGold = @im_dwGold,
m_nJob = @im_nJob,
m_pActMover = @im_pActMover,
m_nStr = @im_nStr,
m_nSta = @im_nSta,
m_nDex = @im_nDex,
m_nInt = @im_nInt,
m_nLevel = @im_nLevel,
m_nMaximumLevel = CASE WHEN m_nMaximumLevel < @im_nLevel THEN @im_nLevel ELSE m_nMaximumLevel END,
m_nExp1 = @im_nExp1,
m_nExp2 = @im_nExp2,
m_aJobSkill = @im_aJobSkill,
m_aLicenseSkill = @im_aLicenseSkill,
m_aJobLv = @im_aJobLv,
m_dwExpertLv = @im_dwExpertLv,
m_idMarkingWorld = @im_idMarkingWorld,
m_vMarkingPos_x = @im_vMarkingPos_x,
m_vMarkingPos_y = @im_vMarkingPos_y,
m_vMarkingPos_z = @im_vMarkingPos_z,
m_nRemainGP = @im_nRemainGP,
m_nRemainLP = @im_nRemainLP,
m_nFlightLv = @im_nFlightLv,
m_nFxp = @im_nFxp,
m_nTxp = @im_nTxp,
m_lpQuestCntArray = @im_lpQuestCntArray,
m_aCompleteQuest = @im_aCompleteQuest,
m_dwMode = @im_dwMode,
m_idparty = @im_idparty,
m_idMuerderer = @im_idMuerderer,
m_nFame = @im_nFame,
m_nDeathExp = @im_nDeathExp,
m_nDeathLevel = @im_nDeathLevel,
m_nMessengerState = @im_nMessengerState,
--m_dwFlyTime = m_dwFlyTime + @im_dwFlyTime,
m_dwFlyTime = @im_dwFlyTime,
TotalPlayTime = TotalPlayTime + @iTotalPlayTime,
m_tmAccFuel = @im_tmAccFuel,
m_dwSkillPoint = @im_dwSkillPoint,
m_dwReturnWorldID= @im_dwReturnWorldID,
m_vReturnPos_x = @im_vReturnPos_x,
m_vReturnPos_y = @im_vReturnPos_y,
m_vReturnPos_z = @im_vReturnPos_z,
m_SkillPoint =@im_SkillPoint,
m_SkillLv =@im_SkillLv,
m_SkillExp =@im_SkillExp
-------------- (?? ?? : 2006 11 13 Attendant Event)
, dwEventFlag =@idwEventFlag
, dwEventTime =@idwEventTime
, dwEventElapsed =@idwEventElapsed
-------------- (ADD: Version8-PK System)
, PKValue = @im_nPKValue
, PKPropensity = @im_dwPKPropensity
, PKExp = @im_dwPKExp
-------------- (ADD: Version8-Angel System)
, AngelExp = @im_nAngelExp
, AngelLevel = @im_nAngelLevel
--------------------- Version9 Pet
, m_dwPetId = @im_dwPetId
, m_nExpLog = @im_nExpLog
, m_nAngelExpLog = @im_nAngelExpLog
, m_nCoupon = @im_nCoupon
------------- ver. 13
, m_nHonor = @im_nHonor
, m_nLayer = @im_nLayer
---------- Ver 15
, m_aCheckedQuest = @im_aCheckedQuest
, m_nCampusPoint = @im_nCampusPoint
, idCampus = @im_idCampus
, m_nPvpKills = @im_nPvpKills
, m_nPvpDeaths = @im_nPvpDeaths
, m_nReb = @im_nReb
, m_szVipEndTime = @im_szVipEndTime
, m_szOwnTitle = @im_szOwnTitle
, m_dwMadrigalGiftExp = @im_dwMadrigalGiftExp
, m_tmLogout = @im_tmLogout
, m_nHideCoat = @im_nHideCoat
, m_nPvpK = @im_nPvpK
, m_nPvpD = @im_nPvpD
WHERE m_idPlayer = @im_idPlayer
AND serverindex = @iserverindex
-- if object_id('QUEST_TBL') is not null
-- EXEC QUEST_STR 'A1',@im_idPlayer,@iserverindex,@im_lpQuestCntArra y
update tblLogout_Penya
set m_dwGold = @im_dwGold, regdate = getdate()
where m_idPlayer = @im_idPlayer and serverindex = @iserverindex
IF @im_nLevel>=120 BEGIN
UPDATE CHARACTER_TBL
SET FinalLevelDt=getdate()
WHERE serverindex=@iserverindex
AND m_idPlayer=@im_idPlayer
AND FinalLevelDt='2000-01-01'
END
--??? ???? ?? ??
IF @im_dwSMTime > ''
BEGIN
IF EXISTS(SELECT * FROM BILING_ITEM_TBL WHERE m_idPlayer= @im_idPlayer AND serverindex = @iserverindex)
UPDATE BILING_ITEM_TBL
SET m_dwSMTime = @im_dwSMTime
WHERE m_idPlayer = @im_idPlayer
AND serverindex = @iserverindex
ELSE
INSERT BILING_ITEM_TBL
(m_idPlayer,serverindex,m_dwSMTime)
VALUES
(@im_idPlayer,@iserverindex,@im_dwSMTime)
END
ELSE
DELETE BILING_ITEM_TBL
WHERE m_idPlayer = @im_idPlayer
AND serverindex = @iserverindex
-- UPDATE CARD_CUBE_TBL
-- SET m_Card = @im_Card,
-- m_apIndex_Card = @im_Index_Card,
-- m_dwObjIndex_Card= @im_ObjIndex_Card,
-- m_Cube = @im_Cube,
-- m_apIndex_Cube = @im_Index_Cube,
-- m_dwObjIndex_Cube=@im_ObjIndex_Cube
-- WHERE m_idPlayer = @im_idPlayer
-- AND serverindex = @iserverindex
UPDATE INVENTORY_TBL
SET m_Inventory = @im_Inventory,
m_apIndex = @im_apIndex,
m_adwEquipment = @im_adwEquipment,
m_dwObjIndex = @im_dwObjIndex
WHERE m_idPlayer = @im_idPlayer
AND serverindex = @iserverindex
UPDATE TASKBAR_TBL
SET m_aSlotApplet = @im_aSlotApplet,
m_aSlotQueue = @im_aSlotQueue,
m_SkillBar = @im_SkillBar
WHERE m_idPlayer = @im_idPlayer
AND serverindex = @iserverindex
UPDATE TASKBAR_ITEM_TBL
SET m_aSlotItem = @im_aSlotItem
WHERE m_idPlayer = @im_idPlayer
AND serverindex = @iserverindex
UPDATE BANK_TBL
SET m_Bank = @im_Bank,
m_apIndex_Bank = @im_apIndex_Bank,
m_dwObjIndex_Bank = @im_dwObjIndex_Bank,
m_dwGoldBank = @im_dwGoldBank
WHERE m_idPlayer = @im_idPlayer
AND serverindex = @iserverindex
UPDATE SKILLINFLUENCE_TBL
SET SkillInfluence = @iSkillInfluence
WHERE m_idPlayer = @im_idPlayer
AND serverindex = @iserverindex
UPDATE INVENTORY_EXT_TBL
SET m_extInventory = @im_extInventory,
m_InventoryPiercing= @im_InventoryPiercing
,szInventoryPet = @iszInventoryPet
WHERE m_idPlayer = @im_idPlayer
AND serverindex = @iserverindex
UPDATE BANK_EXT_TBL
SET m_extBank = @im_extBank,
m_BankPiercing = @im_BankPiercing
, szBankPet = @iszBankPet
WHERE m_idPlayer = @im_idPlayer
AND serverindex = @iserverindex
if exists( select * from LOTTERY_TBL where m_idPlayer = @im_idPlayer )
begin
UPDATE LOTTERY_TBL
SET m_tmNextRoulette = @im_tmNextRoulette
WHERE m_idPlayer = @im_idPlayer
AND serverindex = @iserverindex
end
else
begin
insert into LOTTERY_TBL (m_idPlayer, serverindex, m_tmNextRoulette )
values ( @im_idPlayer, @iserverindex, @im_tmNextRoulette )
end
SELECT fError = '1', fText = 'OK'
RETURN
END
/*
??????
ex )
CHARACTER_STR 'U1', ALL ...
CHARACTER_STR 'U1','000001','01' ...
*/
ELSE
IF @iGu = 'U2' --? ???? ??
BEGIN
UPDATE CHARACTER_TBL
SET TotalPlayTime = TotalPlayTime + @iplayerslot
WHERE m_szName = @im_szName
AND serverindex = @iserverindex
RETURN
END
/*
? ???? ??
ex )
CHARACTER_STR 'U2','',@iserverindex,'',@im_szName,@iplayerslot (@iTotalPlayTime)
CHARACTER_STR 'U2','','01','','beat',10234
*/
ELSE
IF @iGu = 'U3' --? ???? ?? new
BEGIN
UPDATE CHARACTER_TBL
SET TotalPlayTime = TotalPlayTime + @iplayerslot
WHERE m_idPlayer = @im_idPlayer
AND serverindex = @iserverindex
RETURN
END
/*
? ???? ?? (new)
ex )
CHARACTER_STR 'U3',@im_idPlayer,@iserverindex,'','',@iplayerslot (@iTotalPlayTime)
CHARACTER_STR 'U3','000001','01','','',10234
*/
ELSE
IF @iGu = 'U4' --??? ? ??
BEGIN
IF EXISTS(SELECT m_idPlayer FROM CHARACTER_TBL WHERE m_szName = @im_szName AND serverindex = @iserverindex)
BEGIN
SELECT fError = '0'
END
ELSE
BEGIN
UPDATE CHARACTER_TBL
SET m_szName = @im_szName
WHERE m_idPlayer = @im_idPlayer
AND serverindex = @iserverindex
SELECT fError = '1'
END
RETURN
END
-- Ver 15
ELSE
IF @iGu = 'U5' --?? ??? ???? ??
BEGIN
IF EXISTS(SELECT m_idPlayer FROM CHARACTER_TBL WHERE m_idPlayer = @im_idPlayer AND serverindex = @iserverindex)
BEGIN
UPDATE CHARACTER_TBL
SET m_nCampusPoint = m_nCampusPoint + @iplayerslot
WHERE m_idPlayer = @im_idPlayer
AND serverindex = @iserverindex
declare @u5m_nCampusPoint int
select @u5m_nCampusPoint = m_nCampusPoint from CHARACTER_TBL (nolock) WHERE m_idPlayer = @im_idPlayer AND serverindex = @iserverindex
SELECT fError = '1', @u5m_nCampusPoint m_nCampusPoint
END
ELSE
RETURN
END
ELSE
IF @iGu = 'U6' -- ?? ID ???? ??
BEGIN
IF EXISTS(SELECT m_idPlayer FROM CHARACTER_TBL WHERE m_idPlayer = @im_idPlayer AND serverindex = @iserverindex)
BEGIN
UPDATE CHARACTER_TBL
SET idCampus = @iplayerslot
WHERE m_idPlayer = @im_idPlayer
AND serverindex = @iserverindex
SELECT fError = '1'
END
ELSE
BEGIN
SELECT fError = '0'
END
RETURN
END
/*
??? ? ??
ex )
CHARACTER_STR 'U4',@im_idPlayer,@iserverindex,@iaccount,@im_szNa me
CHARACTER_STR 'U4','000001','01','','????'
*/
ELSE
IF @iGu = 'D1' -- ??? ??
BEGIN
IF @im_szName = ''
BEGIN
SELECT fError = '1', fText = '??????'
RETURN
END
if not exists (select * from CHARACTER_TBL where m_idPlayer = @im_idPlayer and account = @iaccount and serverindex = @iserverindex)
begin
select fError = '1'
return
end
DECLARE @Exists int
IF EXISTS(SELECT name from syscolumns where name='m_idPlayer' AND collation= 'Japanese_BIN')
BEGIN
IF EXISTS(SELECT * FROM ACCOUNT_DBF.dbo.ACCOUNT_TBL WHERE account = @iaccount AND (password = @im_szName OR member = 'B' ))
SET @Exists = 1
ELSE
SET @Exists = 0
END
ELSE
BEGIN
--IF EXISTS(SELECT * FROM ACCOUNT_DBF.dbo.ACCOUNT_TBL WHERE account = @iaccount AND (id_no2 = @im_szName OR member = 'B' ))
IF EXISTS(SELECT * FROM ACCOUNT_DBF.dbo.ACCOUNT_TBL WHERE account = @iaccount) --AND (id_no2 = @im_szName OR member = 'B' ))
SET @Exists = 1
ELSE
SET @Exists = 0
END
IF @Exists > 0
BEGIN
DECLARE @currDate char(12)
SET @currDate = CONVERT(CHAR(8),GETDATE(),112)
+ RIGHT('00' + CONVERT(VARCHAR(2),DATEPART(hh,GETDATE())),2)
+ RIGHT('00' + CONVERT(VARCHAR(2),DATEPART(mi,GETDATE())),2)
IF EXISTS(SELECT m_idPlayer FROM GUILD_MEMBER_TBL WHERE m_idPlayer = @im_idPlayer AND serverindex = @iserverindex AND m_idWar > 0)
BEGIN
SELECT fError = '3', fText = '????'
RETURN
END
ELSE
BEGIN
UPDATE CHARACTER_TBL
SET isblock = 'D',
End_Time = @currDate ,
BlockTime = LEFT(@currDate,8)
WHERE m_idPlayer = @im_idPlayer
AND serverindex = @iserverindex
UPDATE MESSENGER_TBL
SET State = 'D'
WHERE m_idPlayer = @im_idPlayer
AND serverindex = @iserverindex
UPDATE MESSENGER_TBL
SET State = 'D'
WHERE f_idPlayer = @im_idPlayer
AND serverindex = @iserverindex
/************************************************** **************************************/
/** 200506 event **/
/************************************************** **************************************/
-- if (not exists(select account from RANKING.RANKING_DBF.dbo.last_1_month_tbl where account = @iaccount)
-- and convert(char(10),getdate(),120) between '2005-07-05' and '2005-07-12')
--
-- begin --: 1?? ?? ????? ?? ???? ??
-- declare @cash int,@get_cach int
-- select @cash = case when m_nLevel between 10 and 19 then 500
-- when m_nLevel between 20 and 39 then 1000
-- when m_nLevel between 40 and 49 then 1500
-- when m_nLevel between 50 and 59 then 2000
-- when m_nLevel between 60 and 69 then 2500
-- when m_nLevel >= 70 then 3000
-- else 0 end
-- from CHARACTER_TBL
-- where m_idPlayer = @im_idPlayer and serverindex = @iserverindex
--
-- select @get_cach = isnull(sum(amount),0)
-- from RANKING.RANKING_DBF.dbo.event_member_tbl
-- where account = @iaccount
-- group by account
--
-- if @cash + @get_cach > 5000
-- set @cash = 5000 - @get_cach
--
-- if @cash > 0
--
-- begin
-- declare @
code int
--
-- if not exists(select * from BILLING.QLORD_MASTER.dbo.BX_TG_USERINFO where USER_ID = @iaccount)
-- exec BILLING.QLORD_MASTER.dbo.BX_SP_PROCESS_USERINFO @iaccount,@iaccount,'FLYF',' ','1111111111118',' ',' ',''
--
-- exec @
code = BILLING.QLORD_MASTER.dbo.BX_SP_INSERT_BONUS_IN @iaccount,@iaccount,'FLYF','IN00000004',@cash,'??? ?? ???',0,''
--
-- if @
code <> 1
-- set @cash = 0
--
-- insert RANKING.RANKING_DBF.dbo.event_member_tbl
-- (account,amount,m_idPlayer,serverindex,retcode,dat e)
-- values
-- (@iaccount,@cash,@im_idPlayer,@iserverindex @
code,getdate())
--
-- end
-- end
/************************************************** **************************************/
/************************************************** **************************************/
/************************************************** **************************************/
IF EXISTS(SELECT m_idPlayer FROM GUILD_MEMBER_TBL WHERE m_idPlayer = @im_idPlayer AND serverindex = @iserverindex)
BEGIN
SELECT fError = '4', fText = m_idGuild FROM GUILD_MEMBER_TBL WHERE m_idPlayer = @im_idPlayer AND serverindex = @iserverindex
RETURN
END
ELSE
BEGIN
SELECT fError = '0', fText = 'DELETE OK'
RETURN
END
END
END
ELSE
BEGIN
SELECT fError = '1', fText = '??????'
RETURN
END
END
/*
??? ??
ex )
CHARACTER_STR 'D1',@im_idPlayer,@iserverindex,@iaccount (isblock)
CHARACTER_STR 'D1','001068','01','ata3k','1019311'
*/
ELSE
IF @iGu = 'I1' -- ?? ?? ??
BEGIN
declare @i1_cnt int
select @i1_cnt = count(*) from CHARACTER_TBL where account = @iaccount and isblock = 'F'
if @i1_cnt > 2
begin
SELECT fError = '0', fText = 'Too many chars!'
RETURN
end
if exists(select playerslot from CHARACTER_TBL where account = @iaccount and playerslot = 0 and isblock = 'F')
if exists(select playerslot from CHARACTER_TBL where account = @iaccount and playerslot = 1 and isblock = 'F')
if exists(select playerslot from CHARACTER_TBL where account = @iaccount and playerslot = 2 and isblock = 'F')
begin
select fError = '0', fText = 'Slot belegt!'
return
end
IF EXISTS(SELECT m_szName FROM CHARACTER_TBL
WHERE m_szName = @im_szName AND serverindex = @iserverindex)
BEGIN
SELECT fError = '0', fText = '??? ??!'
RETURN
END
ELSE
BEGIN
DECLARE
@om_idPlayer CHAR (7) ,
@om_vScale_x REAL ,
@om_dwMotion INT ,
@om_fAngle REAL ,
@om_nHitPoint INT ,
@om_nManaPoint INT ,
@om_nFatiguePoint INT ,
@om_dwRideItemIdx INT ,
@om_dwGold INT ,
@om_nJob INT ,
@om_pActMover VARCHAR(50) ,
@om_nStr INT ,
@om_nSta INT ,
@om_nDex INT ,
@om_nInt INT ,
@om_nLevel INT ,
@om_nExp1 BIGINT ,
@om_nExp2 BIGINT ,
@om_aJobSkill VARCHAR (500),
@om_aLicenseSkill VARCHAR (500),
@om_aJobLv VARCHAR (500),
@om_dwExpertLv INT ,
@om_idMarkingWorld INT ,
@om_vMarkingPos_x REAL ,
@om_vMarkingPos_y REAL ,
@om_vMarkingPos_z REAL ,
@om_nRemainGP INT ,
@om_nRemainLP INT ,
@om_nFlightLv INT ,
@om_nFxp INT ,
@om_nTxp INT ,
@om_lpQuestCntArray VARCHAR(1024),
@om_chAuthority CHAR(1) ,
@om_dwMode INT ,
@oblockby VARCHAR(32) ,
@
alPlayTime INT ,
@oisblock CHAR(1) ,
@oEnd_Time CHAR(12) ,
@om_Inventory VARCHAR(6940),
@om_apIndex VARCHAR(345) ,
@om_adwEquipment VARCHAR(135) ,
@om_aSlotApplet VARCHAR(3100),
@om_aSlotItem VARCHAR(6885),
@om_aSlotQueue VARCHAR(225),
@om_SkillBar SMALLINT,
@om_dwObjIndex VARCHAR(345) ,
@om_Card VARCHAR(1980),
@om_Cube VARCHAR(1980),
@om_apIndex_Card VARCHAR(215) ,
@om_dwObjIndex_Card VARCHAR(215) ,
@om_apIndex_Cube VARCHAR(215) ,
@om_dwObjIndex_Cube VARCHAR(215) ,
@om_idparty INT ,
@om_idMuerderer INT ,
@om_nFame INT ,
@om_nDeathExp BIGINT ,
@om_nDeathLevel INT ,
@om_dwFlyTime INT ,
@om_nMessengerState INT ,
@om_Bank VARCHAR(4290),
@om_apIndex_Bank VARCHAR(215) ,
@om_dwObjIndex_Bank VARCHAR(215) ,
@om_dwGoldBank INT
---------- Ver 15
, @om_aCheckedQuest varchar(100)
, @om_nCampusPoint int
, @om_idCampus int
IF EXISTS (SELECT * FROM CHARACTER_TBL WHERE serverindex = @iserverindex)
SELECT @om_idPlayer = RIGHT('0000000' + CONVERT(VARCHAR(7),MAX(m_idPlayer)+1),7)
FROM CHARACTER_TBL
WHERE serverindex = @iserverindex
ELSE
SELECT @om_idPlayer = '0000001'
SELECT @om_vScale_x = m_vScale_x,
@om_dwMotion = m_dwMotion,
@om_fAngle = m_fAngle,
@om_nHitPoint = m_nHitPoint,
@om_nManaPoint = m_nManaPoint,
@om_nFatiguePoint = m_nFatiguePoint,
@om_dwRideItemIdx = m_dwRideItemIdx,
@om_dwGold = m_dwGold,
@om_nJob = m_nJob,
@om_pActMover = m_pActMover,
@om_nStr = m_nStr,
@om_nSta = m_nSta,
@om_nDex = m_nDex,
@om_nInt = m_nInt,
@om_nLevel = m_nLevel,
@om_nExp1 = m_nExp1,
@om_nExp2 = m_nExp2,
@om_aJobSkill = m_aJobSkill,
@om_aLicenseSkill = m_aLicenseSkill,
@om_aJobLv = m_aJobLv,
@om_dwExpertLv = m_dwExpertLv,
@om_idMarkingWorld = m_idMarkingWorld,
@om_vMarkingPos_x = m_vMarkingPos_x,
@om_vMarkingPos_y = m_vMarkingPos_y,
@om_vMarkingPos_z = m_vMarkingPos_z,
@om_nRemainGP = m_nRemainGP,
@om_nRemainLP = m_nRemainLP,
@om_nFlightLv = m_nFlightLv,
@om_nFxp = m_nFxp,
@om_nTxp = m_nTxp,
@om_lpQuestCntArray = m_lpQuestCntArray,
@om_chAuthority = m_chAuthority,
@om_dwMode = m_dwMode,
@oblockby = blockby,
@
alPlayTime = TotalPlayTime,
@oisblock = isblock,
@oEnd_Time = CONVERT(CHAR(8),DATEADD(yy,3,GETDATE()),112) + '0000',
@om_Inventory = m_Inventory,
@om_apIndex = m_apIndex,
@om_adwEquipment = m_adwEquipment,
@om_aSlotApplet = m_aSlotApplet,
@om_aSlotItem = m_aSlotItem,
@om_aSlotQueue = m_aSlotQueue,
@om_SkillBar = m_SkillBar,
@om_dwObjIndex = m_dwObjIndex,
@om_Card = m_Card,
@om_Cube = m_Cube,
@om_apIndex_Card = m_apIndex_Card,
@om_dwObjIndex_Card = m_dwObjIndex_Card,
@om_apIndex_Cube = m_apIndex_Cube,
@om_dwObjIndex_Cube = m_dwObjIndex_Cube,
@om_idparty = m_idparty,
@om_idMuerderer = m_idMuerderer,
@om_nFame = m_nFame,
@om_nDeathExp = m_nDeathExp,
@om_nDeathLevel = m_nDeathLevel,
@om_dwFlyTime = m_dwFlyTime,
@om_nMessengerState = m_nMessengerState,
@om_Bank = m_Bank,
@om_apIndex_Bank = m_apIndex_Bank,
@om_dwObjIndex_Bank = m_dwObjIndex_Bank,
@om_dwGoldBank = m_dwGoldBank
FROM BASE_VALUE_TBL
WHERE g_nSex = @im_dwSex AND
m_nJob = @im_nJob
INSERT CHARACTER_TBL
(
m_idPlayer,
serverindex,
account,
m_szName,
playerslot,
dwWorldID,
m_dwIndex,
m_vScale_x,
m_dwMotion,
m_vPos_x,
m_vPos_y,
m_vPos_z,
m_fAngle,
m_szCharacterKey,
m_nHitPoint,
m_nManaPoint,
m_nFatiguePoint,
m_nFuel,
m_dwSkinSet,
m_dwHairMesh,
m_dwHairColor,
m_dwHeadMesh,
m_dwSex,
m_dwRideItemIdx,
m_dwGold,
m_nJob,
m_pActMover,
m_nStr,
m_nSta,
m_nDex,
m_nInt,
m_nLevel,
m_nMaximumLevel,
m_nExp1,
m_nExp2,
m_aJobSkill,
m_aLicenseSkill,
m_aJobLv,
m_dwExpertLv,
m_idMarkingWorld,
m_vMarkingPos_x,
m_vMarkingPos_y,
m_vMarkingPos_z,
m_nRemainGP,
m_nRemainLP,
m_nFlightLv,
m_nFxp,
m_nTxp,
m_lpQuestCntArray,
m_aCompleteQuest,
m_chAuthority,
m_dwMode,
m_idparty,
m_idCompany,
m_idMuerderer,
m_nFame,
m_nDeathExp,
m_nDeathLevel,
m_dwFlyTime,
m_nMessengerState,
blockby,
TotalPlayTime,
isblock,
End_Time,
BlockTime,
CreateTime,
m_tmAccFuel,
m_tGuildMember,
m_dwSkillPoint,
m_dwReturnWorldID,
m_vReturnPos_x,
m_vReturnPos_y,
m_vReturnPos_z,
m_SkillPoint,
m_SkillLv,
m_SkillExp
---------- Ver 15
, m_aCheckedQuest
, m_nCampusPoint
, idCampus
, m_nPvpKills
, m_nPvpDeaths
, m_nReb
, m_szVipEndTime
, m_szOwnTitle
, m_dwMadrigalGiftExp
, m_tmLogout
, m_nHideCoat
, m_nPvpK
, m_nPvpD
)
VALUES
(
@om_idPlayer,
@iserverindex,
@iaccount,
@im_szName,
@iplayerslot,
@idwWorldID,
@im_dwIndex,
@om_vScale_x,
@om_dwMotion,
@im_vPos_x,
@im_vPos_y,
@im_vPos_z,
@om_fAngle,
@im_szCharacterKey,
@om_nHitPoint,
@om_nManaPoint,
@om_nFatiguePoint,
-1, --m_nFuel
@im_dwSkinSet,
@im_dwHairMesh,
@im_dwHairColor,
@im_dwHeadMesh,
@im_dwSex,
@om_dwRideItemIdx,
@om_dwGold,
@om_nJob,
@om_pActMover,
@om_nStr,
@om_nSta,
@om_nDex,
@om_nInt,
@om_nLevel,
1, --m_nMaximumLevel
@om_nExp1,
@om_nExp2,
@om_aJobSkill,
@om_aLicenseSkill,
@om_aJobLv,
@om_dwExpertLv,
@om_idMarkingWorld,
@om_vMarkingPos_x,
@om_vMarkingPos_y,
@om_vMarkingPos_z,
@om_nRemainGP,
@om_nRemainLP,
@om_nFlightLv,
@om_nFxp,
@om_nTxp,
@om_lpQuestCntArray,
'$', -- m_aCompleteQuest
@om_chAuthority,
@om_dwMode,
@om_idparty,
'000000', -- m_idCompany
@om_idMuerderer,
@om_nFame,
@om_nDeathExp,
@om_nDeathLevel,
@om_dwFlyTime ,
@om_nMessengerState,
@oblockby,
@
alPlayTime,
@oisblock,
@oEnd_Time,
CONVERT(CHAR(8),DATEADD(d,-1,GETDATE()),112),
GETDATE(),
0,
CONVERT(CHAR(8),DATEADD(d,-1,GETDATE()),112)
+ RIGHT('00' + CONVERT(VARCHAR(2),DATEPART(hh,DATEADD(d,-1,GETDATE()))),2)
+ RIGHT('00' + CONVERT(VARCHAR(2),DATEPART(mi,DATEADD(d,-1,GETDATE()))),2)
+ RIGHT('00' + CONVERT(VARCHAR(2),DATEPART(ss,DATEADD(d,-1,GETDATE()))),2),
0, --m_dwSkillPoint
1,
0,
0,
0,
@im_SkillPoint,
@im_SkillLv,
@im_SkillExp
-- Ver 15
, '$'
, 0
, 0
, 0
, 0
, 0
, 20120202
, ''
, 0
, 0
, 0
, 0
, 0
)
INSERT INVENTORY_TBL
(
m_idPlayer,
serverindex,
m_Inventory,
m_apIndex,
m_adwEquipment,
m_dwObjIndex
)
VALUES
(
@om_idPlayer,
@iserverindex,
@om_Inventory,
@om_apIndex,
@om_adwEquipment,
@om_dwObjIndex
)
-- INSERT CARD_CUBE_TBL
-- (
-- m_idPlayer,
-- serverindex,
-- m_Card,
-- m_Cube,
-- m_apIndex_Card,
-- m_dwObjIndex_Card,
-- m_apIndex_Cube,
-- m_dwObjIndex_Cube
-- )
-- VALUES
-- (
-- @om_idPlayer,
-- @iserverindex,
-- @om_Card,
-- @om_Cube,
-- @om_apIndex_Card,
-- @om_dwObjIndex_Card,
-- @om_apIndex_Cube,
-- @om_dwObjIndex_Cube
-- )
IF @@SERVERNAME = 'WEB' OR @@SERVERNAME = 'SERVER4'
SET @om_aSlotApplet = '0,2,400,0,0,0,0/1,2,398,0,1,0,0/2,2,2010,0,2,0,0/3,2,1005,0,3,0,0/4,3,25,0,4,0,0/$'
INSERT TASKBAR_TBL
(
m_idPlayer,
serverindex,
m_aSlotApplet,
m_aSlotQueue,
m_SkillBar
)
VALUES
(
@om_idPlayer,
@iserverindex,
@om_aSlotApplet,
@om_aSlotQueue,
@om_SkillBar
)
INSERT TASKBAR_ITEM_TBL
(
m_idPlayer,
serverindex,
m_aSlotItem
)
VALUES
(
@om_idPlayer,
@iserverindex,
@om_aSlotItem
)
INSERT BANK_TBL
(
m_idPlayer,
serverindex,
m_Bank,
m_BankPw,
m_apIndex_Bank,
m_dwObjIndex_Bank ,
m_dwGoldBank
)
VALUES
(
@om_idPlayer,
@iserverindex,
@om_Bank,
'0000', -- m_BankPw
-- @im_BankPW,
@om_apIndex_Bank,
@om_dwObjIndex_Bank,
@om_dwGoldBank
)
INSERT SKILLINFLUENCE_TBL
(
m_idPlayer,
serverindex,
SkillInfluence
)
VALUES
(
@om_idPlayer,
@iserverindex,
'$'
)
INSERT INVENTORY_EXT_TBL
(
m_idPlayer,
serverindex,
m_extInventory,
m_InventoryPiercing
)
VALUES
(
@om_idPlayer,
@iserverindex,
'$','$'
)
INSERT BANK_EXT_TBL
(
m_idPlayer,
serverindex,
m_extBank,
m_BankPiercing
)
VALUES
(
@om_idPlayer,
@iserverindex,
'$','$'
)
If (@im_nJob = 1)
Begin
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 9, 0, 3)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 4, 0, 4)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 10, 0, 5)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 5, 0, 6)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 112, 0, 7)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 13, 0, 8)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 111, 0, 9)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 6, 0, 10)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 108, 0, 11)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 14, 0, 12)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 109, 0, 13)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 7, 0, 14)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 12, 0, 15)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 11, 0, 16)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 8, 0, 17)
end
If (@im_nJob = 2)
Begin
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 197, 0, 3)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 194, 0, 4)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 206, 0, 5)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 195, 0, 6)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 191, 0, 7)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 192, 0, 8)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 198, 0, 9)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 193, 0, 10)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 201, 0, 11)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 203, 0, 12)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 196, 0, 13)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 204, 0, 14)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 202, 0, 15)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 199, 0, 16)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 205, 0, 17)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 200, 0, 18)
end
If (@im_nJob = 3)
Begin
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 44, 0, 3)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 46, 0, 4)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 52, 0, 5)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 45, 0, 6)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 114, 0, 7)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 49, 0, 8)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 104, 0, 9)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 20, 0, 10)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 53, 0, 11)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 51, 0, 12)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 113, 0, 13)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 115, 0, 14)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 105, 0, 15)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 48, 0, 16)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 116, 0, 17)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 117, 0, 18)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 50, 0, 19)
end
If (@im_nJob = 4)
Begin
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 121, 0, 3)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 120, 0, 4)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 119, 0, 5)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 64, 0, 6)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 118, 0, 7)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 69, 0, 8)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 36, 0, 9)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 32, 0, 10)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 70, 0, 11)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 65, 0, 12)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 34, 0, 13)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 107, 0, 14)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 37, 0, 15)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 35, 0, 16)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 31, 0, 17)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 30, 0, 18)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition) VALUES(@iserverindex, @om_idPlayer, 33, 0, 19)
end
-- Skill Information
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition)
VALUES (@iserverindex, @om_idPlayer, 1, 0, 0)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition)
VALUES (@iserverindex, @om_idPlayer, 2, 0, 1)
INSERT INTO tblSkillPoint(serverindex, PlayerID, SkillID, SkillLv, SkillPosition)
VALUES (@iserverindex, @om_idPlayer, 3, 0, 2)
-- Pocket
INSERT tblPocket ( serverindex, idPlayer, nPocket, szItem, szIndex, szObjIndex, bExpired, tExpirationDate )
VALUES ( @iserverindex, @om_idPlayer, 0, '$', '$', '$', 0, 0 )
INSERT tblPocketExt ( serverindex, idPlayer, nPocket, szExt, szPiercing, szPet )
VALUES ( @iserverindex, @om_idPlayer, 0, '$', '$', '$' )
INSERT tblPocket ( serverindex, idPlayer, nPocket, szItem, szIndex, szObjIndex, bExpired, tExpirationDate )
VALUES ( @iserverindex, @om_idPlayer, 1, '$', '$', '$', 1, 0 )
INSERT tblPocketExt ( serverindex, idPlayer, nPocket, szExt, szPiercing, szPet )
VALUES ( @iserverindex, @om_idPlayer, 1, '$', '$', '$' )
INSERT tblPocket ( serverindex, idPlayer, nPocket, szItem, szIndex, szObjIndex, bExpired, tExpirationDate )
VALUES ( @iserverindex, @om_idPlayer, 2, '$', '$', '$', 1, 0 )
INSERT tblPocketExt ( serverindex, idPlayer, nPocket, szExt, szPiercing, szPet )
VALUES ( @iserverindex, @om_idPlayer, 2, '$', '$', '$' )
------------------- ver. 13
insert into tblMaster_all (serverindex, m_idPlayer, sec)
select @iserverindex, @om_idPlayer, 1
insert into tblMaster_all (serverindex, m_idPlayer, sec)
select @iserverindex, @om_idPlayer, 2
insert into tblMaster_all (serverindex, m_idPlayer, sec)
select @iserverindex, @om_idPlayer, 3
/*
?? ??? : ??? ????
?? ??1 : ?? 1~20 ??? ?? ?? ???(????? ????? ?? ?? ??)
?? ??2 : ??? ??? ???? ???
??? ??
??? 23~27???(28 0?? ??)
?? ??
??? 24~27???(28 0?? ??)
*/
------------------- ver. 15
insert into tblRestPoint (serverindex, m_idPlayer)
select @iserverindex, @om_idPlayer
------------ Penay check default setting
insert into tblLogout_Penya (serverindex, m_idPlayer)
select @iserverindex, @om_idPlayer
/*"???????~!"*/
if (getdate() >= '2009-05-29 00:00:00' and getdate() < '2009-06-29 00:00:00')
begin
declare @i1_regdate datetime
select @i1_regdate = regdate from ACCOUNT_DBF.dbo.ACCOUNT_TBL_DETAIL where account = @iaccount
if (@i1_regdate >= '2009-05-29 00:00:00' and @i1_regdate < '2009-06-29 00:00:00')
begin
if not exists (select * from MANAGE_DBF.dbo.tblEvent_NewAcc_090529 where account = @iaccount)
begin
insert into ITEM_SEND_TBL (m_idPlayer, serverindex, Item_Name, Item_count, m_bCharged, idSender)
select @om_idPlayer, @iserverindex, '30191', 1, 1, '0000000'
insert into MANAGE_DBF.dbo.tblEvent_NewAcc_090529 (account, serverindex, m_idPlayer, m_szName)
select @iaccount, @iserverindex, @om_idPlayer, @im_szName
end
end
end
--[Event.4] ???? ?? ????
if (getdate() >= '2009-12-29 10:00:00' and getdate() < '2010-03-02 10:00:00')
begin
declare @aregdate datetime
select @aregdate = regdate from ACCOUNT_DBF.dbo.ACCOUNT_TBL_DETAIL where account = @iaccount
declare @id_no1 char(6), @id_no2 char(7), @itcount int
if (@aregdate >= '2009-12-29 10:00:00' and @aregdate < '2010-03-02 10:00:00')
begin
select @id_no1 = id_no1, @id_no2 = id_no2 from ACCOUNT_DBF.dbo.ACCOUNT_TBL where account = @iaccount
/* ??? ????? ?? ?? 2?? ??? ??? ? ?? ?? ?? ??*/
select @itcount = count(*) from ACCOUNT_DBF.dbo.ACCOUNT_TBL AA
inner join ACCOUNT_DBF.dbo.ACCOUNT_TBL_DETAIL BB on AA.account = BB.account
where id_no1 = @id_no1 and id_no2 = @id_no2 and left ((right(AA.account, 4)), 2) <> '__'
and regdate <= '2009-12-29 10:00:00'
--Event.1 ?? ?? ?? : ??? ???? (????)
if (@itcount = 0)
begin
/*
DECLARE @nMaxMailID int
SELECT @nMaxMailID = MAX(nMail) + 1 from MAIL_TBL where serverindex = @iserverindex
SET @nMaxMailID = ISNULL( @nMaxMailID, 0 )
EXEC dbo.MAIL_STR 'A1', @nMaxMailID, @iserverindex, @om_idPlayer, '0000000', 0, 0, 0, '?? ?? ???', '????? ??? ??????.', '26205', 3, 0, 0, 0, 0, 2
*/
--ES ??? ????(20) (???: 26205)
insert into ITEM_SEND_TBL (serverindex, m_idPlayer, Item_Name, Item_count, m_bCharged, idSender)
select @iserverindex, @om_idPlayer, '26314', 3, 1, '0000000'
insert into MANAGE_DBF.dbo.tbl_Event_NewAccount_0912 (account, serverindex, m_idPlayer, m_Jumin)
select @iaccount, @iserverindex, @om_idPlayer, @id_no1+@id_no2
end
end
-- Event.2 ????! ??? ????? ( ?? ??)
if (getdate() >= '2010-02-22 10:00:00' and getdate() < '2010-02-23 10:00:00')
begin
--??? ????? ( ?? ??)
-- @aregdate, @id_no1, @id_no2 ? ????? ???? ?? ??
if (@aregdate >= '2010-02-02 10:00:00' and @aregdate < '2010-02-23 10:00:00')
begin
/* ??? ????? ?? ?? 2?? ??? ??? ? ?? ?? ?? ??*/
select @itcount = count(*) from ACCOUNT_DBF.dbo.ACCOUNT_TBL AA
inner join ACCOUNT_DBF.dbo.ACCOUNT_TBL_DETAIL BB on AA.account = BB.account
where id_no1 = @id_no1 and id_no2 = @id_no2 and left ((right(AA.account, 4)), 2) <> '__'
and regdate <= '2010-01-29 10:00:00'
if (@itcount = 0 )
begin
-- ?? 3? ??
insert into ITEM_SEND_TBL (serverindex, m_idPlayer, Item_Name, Item_count, m_bCharged, idSender)
select @iserverindex, @om_idPlayer, '26919', 1, 1, '0000000'
insert into ITEM_SEND_TBL (serverindex, m_idPlayer, Item_Name, Item_count, m_bCharged, idSender)
select @iserverindex, @om_idPlayer, '26920', 1, 1, '0000000'
insert into ITEM_SEND_TBL (serverindex, m_idPlayer, Item_Name, Item_count, m_bCharged, idSender)
select @iserverindex, @om_idPlayer, '26921', 1, 1, '0000000'
insert into MANAGE_DBF.dbo.tbl_Event_WSNB_1001 (account, serverindex, m_idPlayer, m_Type)
select @iaccount, @iserverindex, @om_idPlayer, 'N'
insert into MANAGE_DBF.dbo.tbl_Event_WSNB_1001_account (account)
select @iaccount
end
end
--??? ????? (?? ??)
if not exists (select top 1 * from MANAGE_DBF.dbo.tbl_Event_WSNB_1001_account (nolock) where account = @iaccount)
begin
-- ?? 3? ??
insert into ITEM_SEND_TBL (serverindex, m_idPlayer, Item_Name, Item_count, m_bCharged, idSender)
select @iserverindex, @om_idPlayer, '26919', 1, 1, '0000000'
insert into ITEM_SEND_TBL (serverindex, m_idPlayer, Item_Name, Item_count, m_bCharged, idSender)
select @iserverindex, @om_idPlayer, '26920', 1, 1, '0000000'
insert into ITEM_SEND_TBL (serverindex, m_idPlayer, Item_Name, Item_count, m_bCharged, idSender)
select @iserverindex, @om_idPlayer, '26921', 1, 1, '0000000'
insert into MANAGE_DBF.dbo.tbl_Event_WSNB_1001 (account, serverindex, m_idPlayer, m_Type)
select @iaccount, @iserverindex, @om_idPlayer, 'H'
end
end
end
/*[Event.1-2]?? ???? ???? ??~!! ? ???~ ???~ Start
if (getdate() >= '2009-07-28 10:00:00' and getdate() < '2009-09-01')
begin
declare @aregdate datetime
select @aregdate = regdate from ACCOUNT_DBF.dbo.ACCOUNT_TBL_DETAIL where account = @iaccount
if (@aregdate >= '2009-07-28 10:00:00')
begin
declare @id_no1 char(6), @id_no2 char(7), @itcount int
select @id_no1 = id_no1, @id_no2 = id_no2 from ACCOUNT_DBF.dbo.ACCOUNT_TBL where account = @iaccount
-- select @itcount = count(*) from ACCOUNT_DBF.dbo.ACCOUNT_TBL where id_no1 = @id_no1 and id_no2 = @id_no2 and left ((right(account, 4)), 2) <> '__'
-- ??? ????? ?? ?? 2?? ??? ??? ? ?? ?? ?? ??
select @itcount = count(*) from ACCOUNT_DBF.dbo.ACCOUNT_TBL AA
inner join ACCOUNT_DBF.dbo.ACCOUNT_TBL_DETAIL BB on AA.account = BB.account
where id_no1 = @id_no1 and id_no2 = @id_no2 and left ((right(AA.account, 4)), 2) <> '__'
and regdate <= @aregdate
--Event.1 ?? ?? ?? : ?? ??? ???? (????)
if not exists (select * from WEB.ONLINE_DBF.dbo.tbl_Event_NewAccount_0907 where account = @iaccount)
begin
if (@itcount = 1)
begin
--??? ?? ??(???: 30191)
insert into ITEM_SEND_TBL (serverindex, m_idPlayer, Item_Name, Item_count, m_bCharged, idSender)
select @iserverindex, @om_idPlayer, '30191', 1, 1, '0000000'
--??? ?? ??(???: 26770)
insert into ITEM_SEND_TBL (serverindex, m_idPlayer, Item_Name, Item_count, m_bCharged, idSender)
select @iserverindex, @om_idPlayer, '26770', 1, 1, '0000000'
insert into WEB.ONLINE_DBF.dbo.tbl_Event_NewAccount_0907 (account, serverindex, m_idPlayer)
select @iaccount, @iserverindex, @om_idPlayer
end
end
--Event.2 ?? ?? ? ???? ??? ?? : ??? ??? ???? (????)
if exists (select * from WEB.ONLINE_DBF.dbo.USER_Recommand_TBL where mem_id = @iaccount and regdate >= '2009-07-28')
begin
--?? ???? ?? (???? ???? ?? : 2082)
declare @
_id as varchar (32), @
serverindex char(2), @
m_idPlayer char(7)
select @
_id = remem_id from WEB.ONLINE_DBF.dbo.USER_Recommand_TBL where mem_id = @iaccount
exec MANAGE_DBF.dbo.usp_Highest_Char @
_id, @
serverindex output, @
m_idPlayer output
-- select @
_id, @
serverindex, @
m_idPlayer
if @
serverindex is not NULL and @
m_idPlayer is not NULL
begin
if not exists (select * from WEB.ONLINE_DBF.dbo.USER_Recommand_Provide_TBL_0907 where account = @iaccount)
begin
if (@itcount = 1)
begin
insert into ITEM_SEND_TBL (serverindex, m_idPlayer, Item_Name, Item_count, m_bCharged, idSender)
select @iserverindex, @om_idPlayer, '30191', 1, 1, '0000000'
insert into WEB.ONLINE_DBF.dbo.USER_Recommand_Provide_TBL_0907 (account, serverindex, m_idPlayer, m_Item)
select @iaccount, @iserverindex, @om_idPlayer, '30191'
-- ???? ???? (??)
declare @
nvarchar(4000)
set @
= '
insert into CHARACTER_[&server&]_DBF.dbo.ITEM_SEND_TBL (serverindex, m_idPlayer, Item_Name, Item_count, m_bCharged, idSender)
select @
serverindex, @
m_idPlayer, ''2082'', 2, 1, ''0000000'''
set @
= replace @
, '[&server&]', @
serverindex)
exec sp_executesql @
, N @
serverindex char(2), @
m_idPlayer char(7)', @
serverindex, @
m_idPlayer
-- insert into WEB.ONLINE_DBF.dbo.USER_Recommand_Provide_TBL_0907 (account, serverindex, m_idPlayer, m_Item)
-- select @
_id, @
serverindex, @
m_idPlayer, '2082'
end
end
end
end
end
end
-- [Event.1-2]??? ???? ???? ??~!! ? ???~ ???~ End */
/* [Event.2]???~ ??? ????! Start
if (getdate() >= '2009-02-24 10:00:00' and getdate() <= '2009-03-24 10:00:00')
begin
declare @aregdate datetime
select @aregdate = regdate from ACCOUNT_DBF.dbo.ACCOUNT_TBL_DETAIL where account = @iaccount
if (@aregdate >= '2009-02-24 10:00:00')
begin
declare @id_no1 char(6), @id_no2 char(7), @itcount int
select @id_no1 = id_no1, @id_no2 = id_no2 from ACCOUNT_DBF.dbo.ACCOUNT_TBL where account = @iaccount
select @itcount = count(*) from ACCOUNT_DBF.dbo.ACCOUNT_TBL where id_no1 + id_no2 = @id_no1 + @id_no2 and left ((right(account, 4)), 2) <> '__'
--?? ?? ?? : ?? ??? ???? (????)
if not exists (select * from WEB.ONLINE_DBF.dbo.tbl_Event_NewAccount_0902 where account = @iaccount)
begin
if (@itcount = 1)
begin
--FLY/FOR/FUN?? 30?
insert into ITEM_SEND_TBL (serverindex, m_idPlayer, Item_Name, Item_count, m_bCharged, idSender)
select @iserverindex, @om_idPlayer, '26666', 30, 1, '0000000'
--FLY/FOR/FUN?? 30?
insert into ITEM_SEND_TBL (serverindex, m_idPlayer, Item_Name, Item_count, m_bCharged, idSender)
select @iserverindex, @om_idPlayer, '26667', 30, 1, '0000000'
--FLY/FOR/FUN?? 30?
insert into ITEM_SEND_TBL (serverindex, m_idPlayer, Item_Name, Item_count, m_bCharged, idSender)
select @iserverindex, @om_idPlayer, '26668', 30, 1, '0000000'
insert into WEB.ONLINE_DBF.dbo.tbl_Event_NewAccount_0902 (account, serverindex, m_idPlayer)
select @iaccount, @iserverindex, @om_idPlayer
end
end
--?? ?? ? ???? ??? ?? : ??? ??? ???? (????)
if exists (select * from WEB.ONLINE_DBF.dbo.USER_Recommand_TBL where mem_id = @iaccount and regdate >= '2009-02-24')
begin
if not exists (select * from WEB.ONLINE_DBF.dbo.USER_Recommand_Provide_TBL_0902 where account = @iaccount)
begin
if (@itcount = 1)
begin
-- ??? ?? ????? ?? ???? ?? (2009-02-24 11:40) by ???
insert into ITEM_SEND_TBL (serverindex, m_idPlayer, Item_Name, Item_count, m_bCharged, idSender)
select @iserverindex, @om_idPlayer, '30191', 1, 1, '0000000'
insert into WEB.ONLINE_DBF.dbo.USER_Recommand_Provide_TBL_0902 (account, serverindex, m_idPlayer)
select @iaccount, @iserverindex, @om_idPlayer
end
end
end
end
end*/
/* [Event.2]???~ ??? ????! End */
/* [Event.5] ???? ???? ^^ Start
if (getdate() >= '2009-03-03 09:00:00' and getdate() <= '2009-03-31 09:00:00')
begin
declare @a2regdate datetime
declare @
char(1)
select @a2regdate = regdate from ACCOUNT_DBF.dbo.ACCOUNT_TBL_DETAIL where account = @iaccount
select @
= [??] from WEB.ONLINE_DBF.dbo.USER_TBL where [??] = @iaccount
if (@a2regdate >= '2009-03-03 09:00:00' and @
= '2')
begin
--- ?? ??? ???? (????)
if not exists (select * from WEB.ONLINE_DBF.dbo.tbl_Event_NewAccount_Women_0903 where account = @iaccount)
begin
--??? ?? ??
insert into ITEM_SEND_TBL (serverindex, m_idPlayer, Item_Name, Item_count, m_bCharged, idSender)
select @iserverindex, @om_idPlayer, '26770', 1, 1, '0000000'
insert into WEB.ONLINE_DBF.dbo.tbl_Event_NewAccount_Women_0903 (account, serverindex, m_idPlayer)
select @iaccount, @iserverindex, @om_idPlayer
end
end
end*/
/* [Event.5] ???? ???? ^^ End */
/*
?? ??? : ??? ????
?? ??1 : ?? 1~20 ??? ?? ?? ???(????? ????? ?? ?? ??)
?? ??2 : ??? ??? ???? ???
??? ??
??? 23~27???(28 0?? ??)
?? ??
??? 24~27???(28 0?? ??)
*/
/* if (getdate() <= '2008-02-12 09:00:00')
begin
declare @
te datetime, @check int
select @check = count(*) from ACCOUNT_DBF.dbo.tblEvent_Board_Provide where account = @iaccount
select @
te = regdate from ACCOUNT_DBF.dbo.ACCOUNT_TBL_DETAIL where account = @iaccount
if ((@check = 0) and @
te >= '2008-01-08 11:00:00'))
begin
declare @channel_check char(4)
set @channel_check = right(@iaccount, 4)
if (@channel_check = '__an')
begin
insert into ITEM_SEND_TBL(m_idPlayer, serverindex, Item_Name, Item_count, m_nAbilityOption, idSender)
select @om_idPlayer, @iserverindex, '26533', 1, 0, '0000000'
insert into ACCOUNT_DBF.dbo.tblEvent_Board_Provide (account, serverindex, m_idPlayer, m_szName)
select @iaccount, @iserverindex, @om_idPlayer, @im_szName
end
else if (@channel_check = '__bu')
begin
if (getdate() <= '2008-02-08 23:59:59')
begin
insert into ITEM_SEND_TBL(m_idPlayer, serverindex, Item_Name, Item_count, m_nAbilityOption, idSender)
select @om_idPlayer, @iserverindex, '26534', 1, 0, '0000000'
insert into ACCOUNT_DBF.dbo.tblEvent_Board_Provide (account, serverindex, m_idPlayer, m_szName)
select @iaccount, @iserverindex, @om_idPlayer, @im_szName
end
end
else
begin
insert into ITEM_SEND_TBL(m_idPlayer, serverindex, Item_Name, Item_count, m_nAbilityOption, idSender)
select @om_idPlayer, @iserverindex, '26532', 1, 0, '0000000'
insert into ACCOUNT_DBF.dbo.tblEvent_Board_Provide (account, serverindex, m_idPlayer, m_szName)
select @iaccount, @iserverindex, @om_idPlayer, @im_szName
end
end
end
*/
/* if (getdate() >= '2008-07-30 00:00:00' and getdate() <= '2008-09-15 23:59:59')
begin
declare @aregdate datetime
select @aregdate = regdate from ACCOUNT_DBF.dbo.ACCOUNT_TBL_DETAIL where account = @iaccount
if (@aregdate >= '2008-07-30 00:00:00')
begin
declare @
count varchar(32)
if exists (select * from WEB.ONLINE_DBF.dbo.USER_Recommand_TBL where mem_id = @iaccount)
begin
if not exists (select * from WEB.ONLINE_DBF.dbo.USER_Recommand_Provide_TBL where account = @iaccount)
begin
insert into ITEM_SEND_TBL (serverindex, m_idPlayer, Item_Name, Item_count, m_bCharged, idSender)
select @iserverindex, @om_idPlayer, '30191', 1, 1, '0000000'
insert into WEB.ONLINE_DBF.dbo.USER_Recommand_Provide_TBL (account, serverindex, m_idPlayer)
select @iaccount, @iserverindex, @om_idPlayer
end
end
end
end
*/
/* if (getdate() >= '2008-12-17 10:00:00' and getdate() <= '2009-01-27 10:00:00')
begin
declare @aregdate datetime
select @aregdate = regdate from ACCOUNT_DBF.dbo.ACCOUNT_TBL_DETAIL where account = @iaccount
if (@aregdate >= '2008-12-17 10:00:00')
begin
declare @
count varchar(32)
if exists (select * from WEB.ONLINE_DBF.dbo.USER_Recommand_TBL where mem_id = @iaccount and regdate >= '2008-12-16')
begin
if not exists (select * from WEB.ONLINE_DBF.dbo.USER_Recommand_Provide_TBL_0812 where account = @iaccount)
begin
insert into ITEM_SEND_TBL (serverindex, m_idPlayer, Item_Name, Item_count, m_bCharged, idSender)
select @iserverindex, @om_idPlayer, '30191', 1, 1, '0000000'
insert into WEB.ONLINE_DBF.dbo.USER_Recommand_Provide_TBL_0812 (account, serverindex, m_idPlayer)
select @iaccount, @iserverindex, @om_idPlayer
end
end
end
end
IF (GETDATE() BETWEEN '2004-06-23 18:00:00.000' AND '2004-06-27 23:59:59.999')
INSERT ITEM_SEND_TBL
(m_idPlayer, serverindex, Item_Name, Item_count, m_nAbilityOption, End_Time, m_bItemResist, m_nResistAbilityOption, m_bCharged)
VALUES
('261007','01','?? ??? 12',2,0,NULL,0,0,1)
*/
SELECT fError = '1', fText = 'OK',m_idPlayer=@om_idPlayer
RETURN
END
END
/*
?? ?? ??
ex )
CHARACTER_STR 'I1','',@iserverindex,@iaccount,@im_szName,@iplaye rslot,@idwWorldID,
@im_dwIndex,@im_vPos_x,@im_vPos_y,@im_vPos_z,@im_s zCharacterKey,
@im_dwSkinSet,@im_dwHairMesh,@im_dwHairColor,@im_d wHeadMesh,@im_dwSex
CHARACTER_STR 'I1','','01','beat','????3',0,0,
0,0,0,0,'',
0,0,0,0,0
*/
set nocount off
RETURN