elite*gold: 0
Join Date: Apr 2011
Posts: 31
Received Thanks: 1
|
Man ive tryed but i do not know what to delete from there , can you tell me what to delete ??
/* CREATE CHARACTER PROCESS
================================================== ======
PARAMETER
================================================== ======
@szNAME VARCHAR(50)
@dwCharID INT OUTPUT
@dwUserID INT
@bSlot TINYINT
@bClass TINYINT
@bRace TINYINT
@bCountry TINYINT
@bSex TINYINT
@bHair TINYINT
@bFace TINYINT
@bBody TINYINT
@bPants TINYINT
@bHand TINYINT
@bFoot TINYINT
================================================== ======
RETURN VALUE
================================================== ======
0 : SUCCESS
1 : NO GROUP
2 : DUPLICATE NAME
3 : INVALID SLOT
4 : Non Class ID
================================================== ======
PROCESS
================================================== ======
1. Check duplicate name
2. Check slot
3. Insert character data
*/
ALTER PROCEDURE [dbo].[TCreateChar]
@bCreateCnt TINYINT OUTPUT,
@szNAME VARCHAR(50),
@dwCharID INT OUTPUT,
@dwUserID INT,
@bGroup TINYINT,
@bSlot TINYINT,
@bClass TINYINT,
@bRace TINYINT,
@bCountry TINYINT,
@bSex TINYINT,
@bHair TINYINT,
@bFace TINYINT,
@bBody TINYINT,
@bPants TINYINT,
@bHand TINYINT,
@bFoot TINYINT
AS
DECLARE @dwCharSeq INT
DECLARE @dwMP INT
DECLARE @dwHP INT
DECLARE @fPosX FLOAT
DECLARE @fPosY FLOAT
DECLARE @fPosZ FLOAT
DECLARE @wDIR SMALLINT
DECLARE @wSpawnID SMALLINT
DECLARE @nCheckGlobal INT
DECLARE @bRealSex TINYINT
SET @bCreateCnt = 0
SET @dwCharID = 0
SET @dwMP = 2
SET @dwHP = 2
SELECT TOP 1 @dwHP = @dwHP + wCON, @dwMP = @dwMP + wMEN FROM TCLASSCHART WHERE bClassID = @bClass
SELECT TOP 1 @dwHP = @dwHP + wCON, @dwMP = @dwMP + wMEN FROM TRACECHART WHERE bRaceID = @bRace
SET @dwHP = 7 * @dwHP + 1
SET @dwMP = 9 * @dwMP + 1
IF EXISTS( SELECT TOP 1 dwCharID FROM TCHARTABLE WHERE szNAME = @szNAME)
RETURN 2
/*
* Duplicate npc name
*/
IF EXISTS(SELECT TOP 1 * FROM TNPCCHART WHERE szNAME = @szNAME)
RETURN 2
/*
* Duplicate monster name
*/
IF EXISTS(SELECT TOP 1 * FROM TMONSTERCHART WHERE szNAME = @szNAME)
RETURN 2
/*
* Invalid slot
*/
IF EXISTS(SELECT TOP 1 dwCharID FROM TCHARTABLE WHERE dwUserID = @dwUserID AND bSlot = @bSlot AND bDelete = 0)
RETURN 3
/*
* Check the country
*/
DECLARE @bOriCountry TINYINT
DECLARE @bLevel TINYINT
DECLARE @dwExp INT
DECLARE @wSkillPoint SMALLINT
SET @bOriCountry = 3
SET @bLevel = 1
SET @dwExp = 0
SET @wSpawnID = 15003
SET @wSkillPoint = 0
SELECT TOP 1 @bOriCountry = bOriCountry FROM TCHARTABLE WHERE dwUserID=@dwUserID AND bDelete=0 AND bOriCountry < 2
IF(@bOriCountry < 2)
BEGIN
SET @bCountry = @bOriCountry
SET @bLevel = 9
SET @wSkillPoint = 8
SELECT @dwExp = dwExp FROM TLEVELCHART WHERE bLevel = 8
IF(@bOriCountry = 0)
SET @wSpawnID = 15001
ELSE
SET @wSpawnID = 15002
END
ELSE IF(@bCountry <> 4)
RETURN 4
SET @fPosX = 587.04
SET @fPosY = 31.33
SET @fPosZ = 603.82
SET @wDIR = 1640
EXEC @nCheckGlobal = TGLOBAL_GSP.DBO.TCreateChar
@dwCharSeq OUTPUT,
@bCreateCnt OUTPUT,
@bRealSex OUTPUT,
@dwUserID,
@bGroup,
@dwCharID,
@bSlot,
@szNAME,
@bClass,
@bRace,
@bCountry,
@bSex,
@bHair, -- bHair
@bFace, -- bFace
@bBody, -- bBody
@bPants, -- bPants
@bHand, -- bHand
@bFoot, -- bFoot
@bLevel,
@dwExp -- dwExp
IF(@nCheckGlobal <> 0)
RETURN @nCheckGlobal
BEGIN TRAN TCREATECHAR
INSERT INTO TCHARTABLE
(
dwUserID,
bSlot,
szNAME,
bRace,
bCountry,
bOriCountry,
bSex,
bRealSex,
bClass,
bLevel,
bHair,
bFace,
bBody,
bPants,
bHand,
bFoot,
dwEXP,
dwHP,
dwMP,
wSkillPoint,
dwGold,
dwSilver,
dwCooper,
wMapID,
wSpawnID,
wTemptedMon,
bAftermath,
fPosX,
fPosY,
fPosZ,
wDIR
)
VALUES
(
@dwUserID, -- dwUserID
@bSlot, -- bSlot
@szNAME, -- szNAME
@bRace, -- bRace
@bCountry, -- bCountry
@bOriCountry,
@bSex, -- bSex
@bRealSex, -- bRealSex
@bClass, -- bClass
@bLevel, -- bLevel
@bHair, -- bHair
@bFace,
@bBody,
@bPants,
@bHand,
@bFoot,
@dwExp,
@dwHP,
@dwMP,
@wSkillPoint,
0,
0,
0,
2010,
@wSpawnID,
0,
0,
@fPosX,
@fPosY,
@fPosZ,
@wDIR
)
SET @dwCharID = @@IDENTITY
INSERT INTO TINVENTABLE
(
dwCharID,
bInvenID,
wItemID,
dEndTime
)
VALUES
(
@dwCharID,
255,
3,
0
)
INSERT INTO TINVENTABLE
(
dwCharID,
bInvenID,
wItemID,
dEndTime
)
VALUES
(
@dwCharID,
254,
2,
0
)
INSERT INTO TCABINETTABLE VALUES(@dwCharID, 0, 1)
INSERT INTO TSKILLTABLE SELECT @dwCharID, wSkillID, 1, 0 FROM TSTARTSKILL WHERE bClassID=@bClass
COMMIT TRAN TCREATECHAR
DECLARE @bStartInven TINYINT
DECLARE @bStartSlot TINYINT
DECLARE @bStartChartType TINYINT
DECLARE @wStartItemID SMALLINT
DECLARE @bStartCount TINYINT
DECLARE CUR_STARTITEM CURSOR FOR
SELECT bInven, bSlot, bChartType, wItemID, bCount FROM TSTARTITEMCHART WHERE bCountry=@bCountry AND bClass = @bClass
OPEN CUR_STARTITEM
FETCH NEXT FROM CUR_STARTITEM INTO @bStartInven, @bStartSlot, @bStartChartType, @wStartItemID, @bStartCount
WHILE @@FETCH_STATUS = 0
BEGIN
EXEC TPutItemInInven @dwCharID, @bStartInven, @bStartSlot, @bStartChartType, @wStartItemID, @bStartCount
FETCH NEXT FROM CUR_STARTITEM INTO @bStartInven, @bStartSlot, @bStartChartType, @wStartItemID, @bStartCount
END
CLOSE CUR_STARTITEM
DEALLOCATE CUR_STARTITEM
-- ????? ------------------------------------------------------------------------------------
DECLARE @dwPostID INT
DECLARE @dwRecvID INT
DECLARE @szTitle VARCHAR(256)
DECLARE @szMessage VARCHAR(2048)
DECLARE @bLenTitle BINARY(4)
DECLARE @bLenMessage BINARY(4)
DECLARE @szT VARCHAR(8)
DECLARE @szM VARCHAR(8)
DECLARE @dateCreated SMALLDATETIME
SET @dateCreated = GetDate()
SET @szTitle = 'Welcome to Bucuresti 4story!'
SET @szMessage = 'Welcome to Bucuresti 4story!
Click the storage button on bottom center of the screen (or press Esc and Storage) to retrieve the free premium items as present for new comers.
Enjoy PvP,and PvE at our server!
Whenever you reach 5, 10, 15, 20Lvl, you will receive letters with special gift item attached (When the envelope icon on bottom right corner of the screen blinks, it means new letter has arrived).
Level 5<+6 Upgraded Weapon> Powerful weapon to attack against enemy.
Level 9<+6 Upgraded Armor> Powerful armor to defend against enemy.
Level 15<8 Slot Bag> for extra inventory space
Level 20<Upgrading Magic Scroll> and <Enchant Scroll>. Scrolls to upgrade and enchant equipments from NPCs in town.
Your Sacrifice Team.'
SET @bLenTitle = DATALENGTH(@szTitle)
SET @bLenMessage = DATALENGTH(@szMessage)
SET @szT = RIGHT(master.dbo.fn_sqlvarbasetostr(@bLenTitle), 8)
SET @szTitle = @szT + @szTitle
SET @szM = RIGHT(master.dbo.fn_sqlvarbasetostr(@bLenMessage), 8)
SET @szMessage = @szM + @szMessage
EXEC TSavePost @dwPostID OUTPUT, @dwRecvID OUTPUT, 0, @dwCharID, @szName, 'Enthara4s-Team',@szTitle,@szMessage,0,0,0,0,0,@dateCreated
-----------------------------------------------------------------------------------------------------------------------------
UPDATE TGLOBAL_GSP.DBO.TALLCHARTABLE SET dwCharID = @dwCharID WHERE dwSeq = @dwCharSeq
INSERT INTO THOTKEYTABLE
SELECT @dwCharID, bInvenID, bType1, wID1, bType2, wID2, bType3, wID3, bType4, wID4, bType5, wID5,
bType6, wID6, bType7, wID7, bType8, wID8, bType9, wID9, bType10, wID10, bType11, wID11, bType12, wID12
FROM TSTARTHOTKEY WHERE bClassID=@bClass
IF EXISTS( SELECT bClassID FROM TSTARTRECALL WHERE bClassID = @bClass AND bCountryID = @bCountry)
BEGIN
DECLARE @dwMonID INT
DECLARE @wMonTemp SMALLINT
DECLARE @dwATTR INT
DECLARE @dwMaxHP INT
DECLARE @dwMaxMP INT
SET @wMonTemp = 0
SELECT @wMonTemp = wMonID FROM TSTARTRECALL WHERE bClassID = @bClass AND bCountryID = @bCountry
IF(@wMonTemp > 0)
BEGIN
SELECT @dwATTR = wSummonAttr FROM TMONSTERCHART WHERE wID= @wMonTemp
SELECT @dwMaxHP=dwMaxHP, @dwMaxMP = dwMaxMP FROM TMONATTRCHART WHERE wID=@dwATTR AND bLevel=1
UPDATE TCHARTABLE SET wTemptedMon = @wMonTemp WHERE dwCharID = @dwCharID
SET @dwATTR = @dwATTR + POWER(2,16)
EXEC TCreateRecallMon
@dwMonID OUTPUT,
@dwCharID,
@wMonTemp,
0,
@dwATTR,
1,
@dwMaxHP,
@dwMaxMP,
1,
@fPosX,
@fPosY,
@fPosZ,
0
END
END
INSERT INTO TGLOBAL_GSP.dbo.TACCOUNTCHARTABLE(dwCharID, dwUserID, bSlot)
VALUES(@dwCharID, @dwUserID, @bSlot)
IF(@bSlot = 0)
IF NOT EXISTS(SELECT dwUserID FROM TPETTABLE WHERE dwUserID = @dwUserID)
DECLARE @wPetID INT
SET @bRace = (SELECT bRace FROM TCHARTABLE WHERE dwCharID = @dwCharID)
/*IF(@bRace = 0 )
SET @wPetID = 4 -- Pet ID for Class 0
ELSE IF(@bRace = 1 )
SET @wPetID = 7 -- Pet ID for Class 1
ELSE IF(@bRace = 2 )
SET @wPetID = 10 -- Pet ID for Class 2*/
IF(@bSlot = 0 )
BEGIN
DECLARE @szMountName VARCHAR(50)
SET @szMountName = @szNAME+'''s Mount'
SET @szMountName = REPLACE(@szMountName, 's''s', 's''')
INSERT INTO TPETTABLE (dwUserID, wPetID, szName, timeuse) VALUES(@dwUserID, 85, @szMountName, 0)
INSERT INTO TPETTABLE (dwUserID, wPetID, szName, timeuse) VALUES(@dwUserID, 86, @szMountName,0)
INSERT INTO TPETTABLE (dwUserID, wPetID, szName, timeuse) VALUES(@dwUserID, 87, @szMountName, 0)
INSERT INTO TPETTABLE (dwUserID, wPetID, szName, timeuse) VALUES(@dwUserID, 88, @szMountName, 0)
INSERT INTO TPETTABLE (dwUserID, wPetID, szName, timeuse) VALUES(@dwUserID,89, @szMountName, 0)
INSERT INTO TPETTABLE (dwUserID, wPetID, szName, timeuse) VALUES(@dwUserID, 90, @szMountName, 0)
INSERT INTO TPETTABLE (dwUserID, wPetID, szName, timeuse) VALUES(@dwUserID,91, @szMountName, 0)
INSERT INTO TPETTABLE (dwUserID, wPetID, szName, timeuse) VALUES(@dwUserID, 92, @szMountName, 0)
INSERT INTO TPETTABLE (dwUserID, wPetID, szName, timeuse) VALUES(@dwUserID, 93, @szMountName, 0)
INSERT INTO TPETTABLE (dwUserID, wPetID, szName, timeuse) VALUES(@dwUserID, 94, @szMountName, 0)
INSERT INTO TPETTABLE (dwUserID, wPetID, szName, timeuse) VALUES(@dwUserID, 95, @szMountName,0 )
END
UPDATE THOTKEYTABLE SET wID12 = @wPetID WHERE dwCharID = @dwCharID and bInvenID = 1
EXEC TNewCharEQ @dwCharID, 17, 7
/*EXEC TGLOBAL_GSP.dbo.StartEQ @dwUserID*/
RETURN @@ERROR
|