Quantcast
Channel: Update + Exec Procedure
Viewing all articles
Browse latest Browse all 39

Update + Exec Procedure

$
0
0

infelizmente depois de vários testes percebemos que ainda há erros, com números como exemplo 999, 10999

Exemplo: recompensa 1. personagem tem 4.000 pontos e recebe ela!
e atualiza o Last_Reward para 4.000

	IF @Last_Reward IS NOT NULL
	AND (@HPOINT / 4000 * 4000) >= 0
	AND (@HPOINT / 4000 * 4000) < 11000
	AND (@HPOINT / 4000 * 4000) > @Last_Reward
		BEGIN
		BEGIN TRANSACTION;

 -- Adiciona o Titulo
		UPDATE cabal_achievement_title SET TitleData = TitleData + (dbo.Int2Bin(@Cabo) + 0x0000) 
		WHERE CharacterIdx = @CharacterIdx
 -- Envia O Email
		SET @ItemIdx=7884
		SET @ItemOption=1
		SET @Duration=0
				EXEC Server01.dbo.cabal_sp_mail_send_GM 
			@characterIdx, 
			'Medalha de Honra [Cabo]', 
			'                Parabéns você acaba de ser Graduado.                               Aproveite a recompensa da sua Graduação!', 
			@ItemIdx,
			@ItemOption,
			@Duration,
			0  -- Alz
			
 -- Atualiza o HeroRank - Para Nao Recebeber Novamente essa Recompensa
		UPDATE Cabal_HeroRank_Table
		SET Last_Reward = ((@HPOINT / 4000)) * 4000
		WHERE characteridx= @CharacterIdx;
	COMMIT;
END;

Seguido da Segunda Recompensa 2

	IF @Last_Reward IS NOT NULL
	AND (@HPOINT / 11000 * 11000) >= 11000
	AND (@HPOINT / 11000 * 11000) < 24000
	AND (@HPOINT / 11000 * 11000) > @Last_Reward
		BEGIN
		BEGIN TRANSACTION;

 -- Adiciona o Titulo
		UPDATE cabal_achievement_title SET TitleData = TitleData + (dbo.Int2Bin(@TerceiroSargento) + 0x0000) 
		WHERE CharacterIdx = @CharacterIdx
 -- Envia O Email
		SET @ItemIdx=7884
		SET @ItemOption=1
		SET @Duration=0
				EXEC Server01.dbo.cabal_sp_mail_send_GM 
			@characterIdx, 
			'Medalha de Honra [Terceiro-Sargento]', 
			'                Parabéns você acaba de ser Graduado.                               Aproveite a recompensa da sua Graduação!', 
			@ItemIdx,
			@ItemOption,
			@Duration,
			0  -- Alz
			
 -- Atualiza o HeroRank - Para Nao Recebeber Novamente essa Recompensa
		UPDATE Cabal_HeroRank_Table
		SET Last_Reward = ((@HPOINT / 11000)) * 11000
		WHERE characteridx= @CharacterIdx;
	COMMIT;
END;

é ai que entra o novo problema em questão, caso o personagem tenha 10999 pontos de HPOINT
ele atualiza o Last_Reward para 11.000 porém ele da a primeira recompensa de novo. a recompensa do 1.000


Viewing all articles
Browse latest Browse all 39

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>