红月私服邮寄转生系统设置

CREATE TRIGGER RMT_METEMPSYCHOSIS ON [dbo].[tblMail1] 
FOR INSERT
AS

declare @Recipient        varchar(14)        --收信人
declare @Sender                varchar(14)        --发信人
declare @Title                char(80)        --邮件名称



select @Recipient=recipient,@Sender=sender,@Title=title from tblMail1 
where Time >= (select max(time) from tblMail1)

if @Recipient='redmoon' and @Title = '转生' --判断信件是不是转生信件
        EXEC RMS_METEMPSYCHOSIS @Sender




--功能:转生
--注意:tblgameid1表中,必须有redmoon这个角色,
--        转生条件要求用户发信给redmoon,并且
--        等级达到1000,邮件名称为'转生'


SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS OFF 
GO

CREATE    PROCEDURE RMS_METEMPSYCHOSIS
        @GameID varchar(14)

AS
set nocount on

begin transaction RMS_METEMPSYCHOSIS

declare @Lvl                int                --等级
declare @Version        int                --等级
declare @Bonus2                int                --丹药点数
declare @sbonus                int
declare        @STotalBonus        int                --总丹药点数
declare @Count                int                --转生赋予的丹药个数
declare @RecordCount        int                --纪录数目
declare @MailContent        varchar(100)        --邮件内容

if @GameID<>''
begin
        select @Lvl=lvl,@Version=Version from tblGameid1 where gameid=@GameID
        if (@Lvl=1000 and @Version!=130) 
        begin
                --清除丹药表中该用户的纪录
                delete from tblBonus2Log1 where gameid=@GameID
                 

               set @Bonus2=1000                --设置转生后保留的点数
                set @STotalBonus=@Bonus2+2        --设置转生后保留的点数

                set @Version=@Version+10
                set @MailContent = '您共有点数' + convert(varchar,@STotalBonus) + '点'        --设置信件内容
                update tblgameid1
                        set lvl=1,experiment=0,fame=0,
                        strength=10,spirit=10,dexterity=10,power=10,Version=@Version,
                         map=12,x=10,y=15,        --设置转生后的出生坐标                        
                        bonus=2,bonus2=@Bonus2,sbonus=0,stotalbonus=@STotalBonus
                        where gameid=@GameID
                --发送转生成功信件                
                EXEC RMS_SENDMAIL @GameID,'redmoon','恭喜转生成功,请重新登陆',1,@MailContent,''
        end
        else        
                --发送转生失败信件
                EXEC RMS_SENDMAIL @GameID,'redmoon','转生条件不符合,转生失败',1,'',''
end


commit transaction RMS_METEMPSYCHOSIS
GO