Solo usuarios registrados pueden comentar y agradecer, Logueate o Registrate

Autor Topic: Gift in inventory MU IGC Season 10 files  (Visto 954 veces)

0 Miembros and 1 Guest are viewing this topic.

Offline bakumu Posteado: April 19, 2019, 10:16:33 AM | Modificado: April 19, 2019, 11:16:39 AM by bakumu

  • 0 puntos por ventas
  • *
  • Rank: Principiante
  • Posts: 8
  • Gracias recibida: 2
  • az
Please help me with sql script for gift in inventory when new character

MY [WZ_CreateCharacter]


Code: [Select]

USE [MuOnline]
GO
/****** Object:  StoredProcedure [dbo].[WZ_CreateCharacter]    Script Date: 04/19/2019 15:15:35 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER OFF
GO


ALTER Procedure [dbo].[WZ_CreateCharacter]

@AccountID varchar(10),
@Name varchar(10),
@Class tinyint
AS
BEGIN

SET NOCOUNT ON
SET XACT_ABORT ON
DECLARE @Result tinyint
SET @Result = 0x00

IF EXISTS ( SELECT Name FROM Character WHERE Name = @Name )
BEGIN
SET @Result = 0x01
GOTO ProcEnd
END

BEGIN TRAN

IF NOT EXISTS ( SELECT Id FROM  AccountCharacter WHERE Id = @AccountID )
BEGIN
INSERT INTO dbo.AccountCharacter(Id, GameID1, GameID2, GameID3, GameID4, GameID5, GameIDC)
VALUES(@AccountID, @Name, NULL, NULL, NULL, NULL, NULL)

SET @Result  = @@Error
END
ELSE
BEGIN
Declare @g1 varchar(10), @g2 varchar(10), @g3 varchar(10), @g4 varchar(10), @g5 varchar(10)
SELECT @g1=GameID1, @g2=GameID2, @g3=GameID3, @g4=GameID4, @g5=GameID5 FROM dbo.AccountCharacter Where Id = @AccountID

IF( ( @g1 Is NULL) OR (Len(@g1) = 0))
BEGIN
UPDATE AccountCharacter SET  GameID1 = @Name
WHERE Id = @AccountID

SET @Result  = @@Error
END
ELSE IF( @g2  Is NULL OR Len(@g2) = 0)
BEGIN
UPDATE AccountCharacter SET  GameID2 = @Name
WHERE Id = @AccountID

SET @Result  = @@Error
END
ELSE IF( @g3  Is NULL OR Len(@g3) = 0)
BEGIN
UPDATE AccountCharacter SET  GameID3 = @Name
WHERE Id = @AccountID

SET @Result  = @@Error
END
ELSE IF( @g4 Is NULL OR Len(@g4) = 0)
BEGIN
UPDATE AccountCharacter SET  GameID4 = @Name
WHERE Id = @AccountID

SET @Result  = @@Error
END
ELSE IF( @g5 Is NULL OR Len(@g5) = 0)
BEGIN
UPDATE AccountCharacter SET  GameID5 = @Name
WHERE Id = @AccountID

SET @Result  = @@Error
END
ELSE
BEGIN
SET @Result = 0x03
GOTO TranProcEnd
END
END

IF( @Result <> 0 )
BEGIN
GOTO TranProcEnd
END
ELSE
BEGIN
INSERT INTO dbo.Character(AccountID, Name, cLevel, LevelUpPoint, Class, Strength, Dexterity, Vitality, Energy, Inventory,MagicList,
Life, MaxLife, Mana, MaxMana, MapNumber, MapPosX, MapPosY,  MDate, LDate, Quest, Leadership )

SELECT @AccountID As AccountID, @Name As Name, Level, LevelUpPoint, @Class As Class,
Strength, Dexterity, Vitality, Energy, Inventory,MagicList, Life, MaxLife, Mana, MaxMana, MapNumber, MapPosX, MapPosY,
getdate() As MDate, getdate() As LDate, Quest, Leadership
FROM  DefaultClassType WHERE Class = @Class

SET @Result  = @@Error
END

IF NOT EXISTS ( SELECT AccountID FROM T_InGameShop_Point WHERE AccountID = @AccountID )
            BEGIN
               INSERT INTO dbo.T_InGameShop_Point (AccountID, WCoinC, WCoinP, GoblinPoint)
               VALUES (@AccountID, 0, 0, 0)
            END

TranProcEnd:
IF ( @Result  <> 0 )
ROLLBACK TRAN
ELSE
COMMIT TRAN

ProcEnd:
SET NOCOUNT OFF
SET XACT_ABORT OFF

SELECT
   CASE @Result
      WHEN 0x00 THEN 0x01
      WHEN 0x01 THEN 0x00
      WHEN 0x03 THEN 0x03
      ELSE 0x02
   END AS Result
END






Gracias:


Solo usuarios registrados pueden comentar y agradecer, Logueate o Registrate


 

Related Topics

  Subject / Started by Replies Last post
0 Replies
1264 Views
Last post April 19, 2017, 10:09:47 PM
by Joaquin
14 Replies
3698 Views
Last post August 20, 2023, 05:33:42 AM
by RichadKing
2 Replies
2087 Views
Last post January 17, 2019, 07:27:24 PM
by Azzlaer
77 Replies
15661 Views
Last post July 10, 2025, 03:06:24 PM
by Karuritoku
0 Replies
1161 Views
Last post August 18, 2023, 12:20:27 PM
by emersonx13