Oyun içi Nation Transfer yapıldığında, Class veya Race bozulmaları yaşanmaktadır. Bu kodu QA da uygulayın ve gönül rahatlığı ile oyuncu oyunda dahi olsa Irk Değişimi yapın.
Not: Kadın mage'i eklemeyi unutmuştum. Eklendi.
Prosedürümüz:
Kod:
Kullanım:
LOAD_USER_DATA'da
AS'ın hemen altına bu kodu ekleyin. Yani En üstlere ekleyiniz.
Kod:
Not: Kadın mage'i eklemeyi unutmuştum. Eklendi.
Prosedürümüz:
Kod:
- Kod:
USE [kn_online]
GO
/****** Object: StoredProcedure [dbo].[REPAIR_CHAR_RACE_CLASS] Script Date: 01/02/2011 16:42:34 ******/
SETANSI_NULLSON
GO
SETQUOTED_IDENTIFIERON
GO
CREATEPROCEDURE [dbo].[REPAIR_CHAR_RACE_CLASS]
@strUserId varchar(30)
AS
/*
Author : AKI / 01.01.2011
*/
DECLARE @Nation tinyint,@bNation tinyint, @Class smallint, @Race smallint
SELECT @Class=Class,@Race=Race,@Nation=Nation FROM USERDATA WHERE strUserId = @strUserID
SELECT @bNation=bNation FROM ACCOUNT_CHAR WHERE strCharID1 = @strUserID OR strCharID2 = @strUserID OR strCharID3 = @strUserID
BEGIN
IF @bNation = 1 AND @Nation = 2 AND @Class =208
BEGIN
UPDATE USERDATA
SET Nation=1,Class = CLass -100, Race = 2 WHERE strUserId = @strUserID
END
ELSE
IF @bNation = 1 AND @Nation = 2 AND @Class =206
BEGIN
UPDATE USERDATA
SET Nation=1, Class = CLass -100, Race = 1 WHERE strUserId = @strUserID
END
ELSE
IF @bNation = 1 AND @Nation = 2 AND @Class =210 AND @Race =12
BEGIN
UPDATE USERDATA
SET Nation=1,Class = CLass -100, Race = 3 WHERE strUserId = @strUserID
END
ELSE
IF @bNation = 1 AND @Nation = 2 AND @Class =210 AND @Race =13
BEGIN
UPDATE USERDATA
SET Nation=1,Class = CLass -100, Race = 4 WHERE strUserId = @strUserID
END
ELSE
IF @bNation = 1 AND @Nation = 2 AND @Class =212 AND @Race =13
BEGIN
UPDATE USERDATA
SET Nation=1,Class = CLass -100, Race = 4 WHERE strUserId = @strUserID
END
ELSE
IF @bNation = 1 AND @Nation = 2 AND @Class =212 AND @Race =12
BEGIN
UPDATE USERDATA
SET Nation=1,Class = CLass -100, Race = 2 WHERE strUserId = @strUserID
END
ELSE
IF @bNation = 2 AND @Nation = 1 AND @Class =112 AND @Race =2
BEGIN
UPDATE USERDATA
SET Nation=2,Class = CLass +100, Race = 12 WHERE strUserId = @strUserID
END
ELSE
IF @bNation = 2 AND @Nation = 1 AND @Class =112 AND @Race =4
BEGIN
UPDATE USERDATA
SET Nation=2,Class = CLass +100, Race = 13 WHERE strUserId = @strUserID
END
ELSE
IF @bNation = 2 AND @Nation = 1 AND @Class =110 AND @Race =3
BEGIN
UPDATE USERDATA
SET Nation=2,Class = CLass +100, Race = 12 WHERE strUserId = @strUserID
END
ELSE
IF @bNation = 2 AND @Nation = 1 AND @Class =110 AND @Race =4
BEGIN
UPDATE USERDATA
SET Nation=2,Class = CLass +100, Race = 13 WHERE strUserId = @strUserID
END
ELSE
IF @bNation = 2 AND @Nation = 1 AND @Class =108
BEGIN
UPDATE USERDATA
SET Nation=2,Class = CLass +100, Race = 12 WHERE strUserId = @strUserID
END
ELSE
IF @bNation = 2 AND @Nation = 1 AND @Class =106
BEGIN
UPDATE USERDATA
SET Nation=2,Class = CLass +100, Race = 12 WHERE strUserId = @strUserID
END
END
Kullanım:
LOAD_USER_DATA'da
AS'ın hemen altına bu kodu ekleyin. Yani En üstlere ekleyiniz.
Kod:
- Kod:
EXEC REPAIR_CHAR_RACE_CLASS@strUserId