Arquivo do blog
Tecnologia do Blogger.
terça-feira, 3 de janeiro de 2012
Olá galera hoje trago a vocês uma "Query" de tira o bug de Cw + Quest
Para client 2008
USE [GunzDB]
GO
/****** Object: StoredProcedure [dbo].[spWinTheClanGame] Script Date: 05/20/2009 20:20:48 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- 클랜전 결과 업데이트
ALTER PROC [dbo].[spWinTheClanGame]
@WinnerCLID int,
@LoserCLID int,
@IsDrawGame tinyint,
@WinnerPoint int,
@LoserPoint int,
@WinnerClanName varchar(24),
@LoserClanName varchar(24),
@RoundWins tinyint,
@RoundLosses tinyint,
@MapID tinyint,
@GameType tinyint,
@WinnerMembers varchar(110),
@LoserMembers varchar(110)
AS
SET NOCOUNT ON -- 추가.
IF @IsDrawGame = 0
BEGIN
BEGIN TRAN
-- 이긴팀 Wins+1
UPDATE Clan SET Wins=Wins+1, Point=Point+@WinnerPoint, TotalPoint=TotalPoint+@WinnerPoint WHERE CLID=@WinnerCLID
IF 0 = @@ROWCOUNT BEGIN -- 여기 추가.
ROLLBACK TRAN
RETURN
END
-- 진팀 Losses+1
UPDATE Clan SET Losses=Losses+1, Point= dbo.fnGetMax(0, Point+(@LoserPoint)) WHERE CLID=@LoserCLID
IF 0 = @@ROWCOUNT BEGIN -- 여기 추가.
ROLLBACK TRAN
RETURN
END
-- UPDATE Clan SET Point=0 WHERE CLID=@LoserCLID AND Point<0
-- 전적 로그를 남긴다.
INSERT INTO ClanGameLog(WinnerCLID, LoserCLID, WinnerClanName, LoserClanName, RoundWins, RoundLosses, MapID, GameType, RegDate, WinnerMembers, LoserMembers, WinnerPoint, LoserPoint)
VALUES (@WinnerCLID, @LoserCLID, @WinnerClanName, @LoserClanName, @RoundWins, @RoundLosses, @MapID, @GameType, GETDATE(), @WinnerMembers, @LoserMembers, @WinnerPoint, @LoserPoint)
IF 0 <> @@ERROR BEGIN -- 여기 추가.
ROLLBACK TRAN
RETURN
END
COMMIT TRAN
END
ELSE
BEGIN
UPDATE Clan SET Draws=Draws+1 WHERE CLID=@WinnerCLID OR CLID=@LoserCLID
END
download: http://www.multiupload.com/XE13NDF6UH
Para client 2008
USE [GunzDB]
GO
/****** Object: StoredProcedure [dbo].[spWinTheClanGame] Script Date: 05/20/2009 20:20:48 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- 클랜전 결과 업데이트
ALTER PROC [dbo].[spWinTheClanGame]
@WinnerCLID int,
@LoserCLID int,
@IsDrawGame tinyint,
@WinnerPoint int,
@LoserPoint int,
@WinnerClanName varchar(24),
@LoserClanName varchar(24),
@RoundWins tinyint,
@RoundLosses tinyint,
@MapID tinyint,
@GameType tinyint,
@WinnerMembers varchar(110),
@LoserMembers varchar(110)
AS
SET NOCOUNT ON -- 추가.
IF @IsDrawGame = 0
BEGIN
BEGIN TRAN
-- 이긴팀 Wins+1
UPDATE Clan SET Wins=Wins+1, Point=Point+@WinnerPoint, TotalPoint=TotalPoint+@WinnerPoint WHERE CLID=@WinnerCLID
IF 0 = @@ROWCOUNT BEGIN -- 여기 추가.
ROLLBACK TRAN
RETURN
END
-- 진팀 Losses+1
UPDATE Clan SET Losses=Losses+1, Point= dbo.fnGetMax(0, Point+(@LoserPoint)) WHERE CLID=@LoserCLID
IF 0 = @@ROWCOUNT BEGIN -- 여기 추가.
ROLLBACK TRAN
RETURN
END
-- UPDATE Clan SET Point=0 WHERE CLID=@LoserCLID AND Point<0
-- 전적 로그를 남긴다.
INSERT INTO ClanGameLog(WinnerCLID, LoserCLID, WinnerClanName, LoserClanName, RoundWins, RoundLosses, MapID, GameType, RegDate, WinnerMembers, LoserMembers, WinnerPoint, LoserPoint)
VALUES (@WinnerCLID, @LoserCLID, @WinnerClanName, @LoserClanName, @RoundWins, @RoundLosses, @MapID, @GameType, GETDATE(), @WinnerMembers, @LoserMembers, @WinnerPoint, @LoserPoint)
IF 0 <> @@ERROR BEGIN -- 여기 추가.
ROLLBACK TRAN
RETURN
END
COMMIT TRAN
END
ELSE
BEGIN
UPDATE Clan SET Draws=Draws+1 WHERE CLID=@WinnerCLID OR CLID=@LoserCLID
END
download: http://www.multiupload.com/XE13NDF6UH


Assinar:
Postar comentários (Atom)
0 comentários:
Postar um comentário