|
• الانـتـسـاب » Mar 2011
|
• رقـم العـضـويـة » 84781
|
• المشـــاركـات » 743
|
• الـدولـة » EGYPT
|
• الـهـوايـة » Helping People
|
• اسـم الـسـيـرفـر » Private Server
|
• الـجـنـس » Male
|
• نقـاط التقييم » 48
|
|
|
رد: مشكلة في دخول اللعبه
اقتباس:
المشاركة الأصلية كتبت بواسطة tarekelpop1
عفوا ,,, لايمكنك مشاهده الروابط لانك غير مسجل لدينا [ للتسجيل اضغط هنا ]
ده ال Addlogchar ال عندي
كود PHP:
USE [rivallog]
GO
/****** Object: StoredProcedure [dbo].[_AddLogChar] Script Date: 6/27/2017 12:05:15 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER procedure [dbo].[_AddLogChar]
@CharID int,
@EventID tinyint,
@Data1 int,
@Data2 int,
@strPos varchar(64),
@Desc varchar(128)
as
declare @Charname varchar (50)
declare @charid2 int,
@tagFinder varchar(10) = '[His(',
@tagEnd varchar(1) = ')',
@userName varchar(max),
@veremos varchar(max),
@latestregion int,
@azar INT,
@upper int,
@lower int,
@randomfile varchar(50),
@currenthwan int,
@jobtype tinyint,
@eventtype varchar (50),
@eventstatus varchar (50),
@latesteventID int,
@CharRegion int,
@jobExperience bigint,
@jobtopposition int,
@jobtype1 int,
@Latestcontributionamount bigint,
@totalcontribution bigint,
@latestcoinsgranted int,
@weeklycoinsgranted int,
@weeklycontributionamount bigint,
@JID21 int,
@AccountID2 varchar(140),
@RemainRewardAmount bigint,
@Coinlimit int,
@twelvehourdate datetime,
@joblevel int,
@JID int,
@RewardGiven varchar (150),
@AccountID varchar (150),
@RewardtobeGiven int,
@RewardAmount int,
@RewardPlus int,
@EventID32 int,
@JobDate datetime,
@LatestKillCount int,
@RewardAmount2 int,
@RewardGiven2 varchar(150),
@RewardAmount3 int,
@EventType2 varchar(150),
@WinAmount int,
@EventID45 int,
@JID2 int,
@AmountToGrant bigint,
@ComboAmount int,
@rewarddate datetime,
@Inventoryslot bigint,
@eventid46 int,
@rewarddate21 datetime,
@RewardCodename varchar (50),
@RewardOptLevel int,
@RewardData int,
@Inventoryslot2 bigint,
@RewardItemID int,
@onlinedelay int,
@charlevel int,
@regdate datetime,
@itemtotransfer int,
@CharIDtoRestore int,
@itemslot int,
@HungerGamesID int,
@RewardedCharID int,
@KillAmount int
/*Online*/
IF ( @EventID = 4
OR @EventID = 6 )
BEGIN
EXEC exigo..Onlineoffline
@CharID,
@EventID
END
DECLARE @ServiceLms INT=(SELECT service
FROM exigo..controls
WHERE eventname = 'LMS')
/*LMS*/
IF ( @EventID = 20
AND @strPos LIKE '%%'
AND @ServiceLms = 1 )
BEGIN
DECLARE @NameLms NVARCHAR(50) = (SELECT charname16
FROM rivalshd.._char
WHERE charid = @CharID)
INSERT INTO Exigo..Killed
(CharName)
VALUES (@NameLms)
END
--------UNIQ_SURVIVAL*~*---------
DECLARE
@SUR int = (select latestregion from rivalshd.._Char where CharID = @CharID),
@S int = (select service from SRO_VT_ERIUS.dbo.UNIQ_survival_service)
IF @S = 1 and @SUR = 25792
BEGIN
DECLARE
@KillerName VARCHAR(max),
@KillerID INT,
@KilledName varchar(Max),
@StartPos TINYINT
Select @KilledName = (select Charname16 from rivalshd.._Char where CharID = @CharID)
SELECT @StartPos = (SELECT CHARINDEX('(',@desc)) + 1
SELECT @KillerName = (SELECT SUBSTRING(@Desc, @StartPos, CHARINDEX(')', @Desc, @StartPos) - @StartPos))
SELECT @KillerID = (SELECT CharID FROM rivalshd.._Char WHERE CharName16 = @KillerName)
update SRO_VT_ERIUS.dbo.UNIQ_Survival_Remain set Rem = (select count(*) from SRO_VT_ERIUS.dbo.UNIQ_Survival_Registered)
begin
DECLARE
@Now DateTime = GETDATE(),
@WIN_UNIQ_NAME varchar(255) = (select Charname from LEGENDKNIGHT_2015.dbo._Uniques where MonsterCodeName like 'MOB_FW_HYEONGCHEON_100')
END
end
If @EventID = 6 and exists (select charid from SRO_VT_ERIUS.dbo.UNIQ_Survival_Registered where charid = @CharID) and @CharID not in (select charid from SRO_VT_ERIUS.dbo.UNIQ_survival_niggas)
begin
delete from SRO_VT_ERIUS.dbo.UNIQ_Survival_Registered where charid = @CharID
end
If not exists (select charid from SRO_VT_ERIUS.dbo.UNIQ_Survival_Registered where charid = @CharID) and @s = 1 and Not exists (select charid from SRO_VT_ERIUS.dbo.UNIQ_survival_niggas where CharID = @CharID)
begin
DECLARE
@Zo INT = (SELECT LATESTREGION FROM rivalshd.._Char WHERE CharID = @CharID),
@chariz varchar(max) = (Select charname16 from rivalshd.._Char where charid = @CharID)
if @EventID='11' OR @EventID='9' AND @Zo = '25792' and @Charname not like '[BOT]'
begin
INSERT INTO rivalshd.dbo._Notification (Type,Content,Target,Executor,Notified) VALUES (4,@chariz,0,'LegendKnight',0)
end
end
------------------------------------------------------------------------------------------------------------------------
IF(@eventid in (4,6,9,10,11)) and @charid not in (select charid from rivalshd.._user where UserJID in (select jid from rivalacc..tb_user where sec_primary!=3 and sec_content!=3))
--begin
update rivalshd.._Items set optlevel=10 where optlevel between 11 and 99
update rivalshd.._CharSkillMastery set level=0 where MasteryID=1339 and level>0
-----------------------------------------------------------------------------------------------------------------------
-- Plevel Rewards
-----------------------------------------------------------------------------------------------------------------------
--If @eventid = 22
--begin
--exec LEGENDKNIGHT_2015.LKT._PlvlRewards @charid,@eventid,@lkcharname,@data2
--end
--IF (@EventID=20 AND @strPos Like '%(0x8018)%')
--BEGIN
--Declare @NameLms nvarchar(50) = (Select CharName16 From rivalshd.._Char Where CharID=@CharID)
--Insert Into zealous..LMSkilled (KilledName) values (@NameLms)
--END
-- DECLARE @CharLevel3 tinyint = (SELECT CurLevel from rivalshd.dbo._Char WHERE CharID = @CharID)
-- Declare @service tinyint = (Select Service From zealous..EventService Where EventName='Jop')
-- IF (@EventID = 19 AND @Desc like '%My: Robber%' OR @EventID = 19 AND @Desc like '%My: Trader%' OR @EventID = 19 AND @Desc like '%My: Hunter%')
-- begin
-- IF @strPos LIKE '%(0x8018)%' AND @service =1
-- BEGIN
-- --EXEC JOBBING @CharID, @CharLevel2, @Desc
-- EXEC zealous..JOBS @CharID, @CharLevel3, @Desc
-- end
-- END
--IF (@EventID=4 OR @EventID =6)
--BEGIN
--EXEC zealous..OnlineOffline @CharID,@EventID
--END
-- #########################################
--/*ALCHEMY EVENT*/
-- declare @isrunning int
-- select @isrunning = IsRunningNow FROM _EventSchedule where EventName = 'AlchemyEvent'
-- if @EventID = 9 and @isrunning = 0
-- BEGIN
-- update RivalSHD.._Inventory set ItemID = 0 where ItemID IN (Select ID64 FROM RivalSHD.._Items where RefItemID = 14682)
-- update RivalSHD.._Chest set ItemID = 0 where ItemID IN (Select ID64 FROM RivalSHD.._Items where RefItemID = 14682)
-- END
-- if @CharID in (select charid from _OnlineOffline where IsBug = 'Bug')
-- begin
-- update _OnlineOffline set LogPoints = LogPoints + 1, LatestLog = GETDATE() where CharID = @CharID
-- if @CharID in (select charid from _OnlineOffline where LogPoints > 5)
-- begin
-- update _OnlineOffline set IsBug = 'Clean', LogPoints = 0, LatestLog = null where CharID = @CharID
-- update _OnlineOffline set IsBug = 'OldBug' where LatestLog < GETDATE()-0.5 and IsBug = 'Bug'
-- end
-- end
IF(@EventID = 9)
BEGIN
if ((select hwanlevel from RivalSHD.dbo._Char with (nolock) where CharID = @CharID) <> (select LatestHwan from RivalSHD.dbo._Char with (nolock) where CharID = @CharID))
begin
set @currenthwan = (select hwanlevel from RivalSHD.dbo._Char with (nolock) where CharID = @CharID)
set @Charname = (SELECT CharName16 FROM RivalSHD.dbo._Char with (nolock) WHERE CharID = @CharID)
if not exists (select CharID from RivalSHD.dbo.AchievedHwan where CharID = @CharID and HwanLevel = @currenthwan)
begin
insert RivalSHD.dbo.AchievedHwan values (@CharID, @currenthwan, GETDATE())
end
if (@currenthwan in (10,12,9,27,28,31,18,35,36,32,33,34))
begin
if (@currenthwan = 10)
begin
set @Charname = (select charname16 from RivalSHD.._Char with (nolock) where CharID = @CharID)
set @veremos = @Charname + ' has been proclaimed the Erius Slayer!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(1,@veremos,'','Exodus',0)
exec RivalSHD.._SEEK_N_DESTROY_ITEM 'ITEM_QNO_DYMEREVENT8'
end
else if (@currenthwan = 12)
begin
set @Charname = (select charname16 from RivalSHD.._Char with (nolock) where CharID = @CharID)
set @veremos = @Charname + ' has slain Roc and shall keep Roc Ruler title until the next Roc is slain!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(1,@veremos,'','Exodus',0)
end
else if (@currenthwan = 9)
begin
set @Charname = (select charname16 from RivalSHD.._Char with (nolock) where CharID = @CharID)
set @veremos = @Charname + ' has won the weekly Super Sayan event and will keep the Super Sayan title for a week!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(1,@veremos,'','Exodus',0)
end
else if (@currenthwan = 27)
begin
set @Charname = (select charname16 from RivalSHD.._Char with (nolock) where CharID = @CharID)
set @veremos = @Charname + ' has won the Int Championships and earned the Int Champion title until the next Championship takes place.'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(1,@veremos,'','Exodus',0)
end
else if (@currenthwan = 28)
begin
set @Charname = (select charname16 from RivalSHD.._Char with (nolock) where CharID = @CharID)
set @veremos = @Charname + ' has won the Str Championships and earned the Str Champion title until the next Championship takes place.'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(1,@veremos,'','Exodus',0)
end
else if (@currenthwan = 31)
begin
set @Charname = (select charname16 from RivalSHD.._Char with (nolock) where CharID = @CharID)
set @veremos = @Charname + ' has earned the Maze Champion title after completing the Wizard Maze Hunt, congratulations!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(1,@veremos,'','Exodus',0)
end
else if (@currenthwan = 18)
begin
set @Charname = (select charname16 from RivalSHD.._Char with (nolock) where CharID = @CharID)
set @veremos = @Charname + ' is one of the ExtremePvP winners and shall keep the Imperium Knight title until the next ExtremePvP!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(1,@veremos,'','Exodus',0)
end
else if (@currenthwan = 35)
begin
set @Charname = (select charname16 from RivalSHD.._Char with (nolock) where CharID = @CharID)
set @veremos = 'After slaying enough Underworld Spirits, ' + @Charname + ' became one of the 10 Ghost Busters, congratulations!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(1,@veremos,'','Exodus',0)
end
else if (@currenthwan = 36)
begin
set @Charname = (select charname16 from RivalSHD.._Char with (nolock) where CharID = @CharID)
set @veremos = 'After slaying the Lost Spirit, ' + @Charname + ' became the latest Soul Reaper, congratulations!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(1,@veremos,'','Exodus',0)
END
else if (@currenthwan = 32)
begin
set @Charname = (select charname16 from RivalSHD.._Char with (nolock) where CharID = @CharID)
set @veremos = 'After slaying Tiger Girl and Uruchi ' + @Charname + ' completed Unique Hunters I and earned the Novice Hunter title, congratulations!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(1,@veremos,'','Exodus',0)
end
else if (@currenthwan = 33)
begin
set @Charname = (select charname16 from RivalSHD.._Char with (nolock) where CharID = @CharID)
set @veremos = 'After slaying Isyutaru, Cerberus and Ivy ' + @Charname + ' completed Unique Hunters II and earned the Unique Seeker title, congratulations!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(1,@veremos,'','Exodus',0)
end
else if (@currenthwan = 34)
begin
set @Charname = (select charname16 from RivalSHD.._Char with (nolock) where CharID = @CharID)
set @veremos = 'After slaying Lord Yarkan and Shaitan ' + @Charname + ' completed Unique Hunters III and earned the Unique Hunter title, congratulations!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(1,@veremos,'','Exodus',0)
end
declare @currenthwan2 int
set @currenthwan2 = (select LatestHwan from RivalSHD.dbo._Char with (nolock) where CharID = @CharID)
if (@currenthwan2 not in (10, 12, 9, 1, 2, 3, 27, 28, 31, 18, 19, 36, 35))
begin
update RivalSHD.dbo._Char set LastPermanentHwan = LatestHwan where CharID = @CharID
update RivalSHD.dbo._Char set HwanLevel = LastPermanentHwan where CharID in (select CharID from RivalSHD..AchievedHwan where HwanLevel = 36 and achievedate < GETDATE()-0.5) and HwanLevel = 36
delete from RivalSHD.dbo.AchievedHwan where HwanLevel = 36 and achievedate < GETDATE()-0.5
end
end
if (@currenthwan in (32,33,34))
begin
update RivalSHD.dbo.AchievedHwan set achievedate = GETDATE()+7 where CharID = CharID and HwanLevel = @currenthwan
end
IF ((select COUNT(CharID) from RivalSHD.dbo.AchievedHwan with (nolock) WHERE HwanLevel = 10) > 1 and @currenthwan = 10)
begin
delete from RivalSHD.dbo.AchievedHwan WHERE HwanLevel = 10 and CharID <> @CharID
update RivalSHD.._Char set HwanLevel = LastPermanentHwan where CharID <> @CharID and HwanLevel = 10
end
IF ((select COUNT(CharID) from RivalSHD.dbo.AchievedHwan with (nolock) WHERE HwanLevel = 31) > 1 and @currenthwan = 31)
begin
delete from RivalSHD.dbo.AchievedHwan WHERE HwanLevel = 31 and CharID <> @CharID
update RivalSHD.._Char set HwanLevel = LastPermanentHwan where CharID <> @CharID and HwanLevel = 31
end
IF (@currenthwan = 35)
begin
insert GhostBusterLog values (@CharID)
delete from GhostBusterLog where CharID not in (Select CharID from RivalSHD.._char with (nolock) where HwanLevel = 35)
if ((select COUNT(CharID) from GhostBusterLog) > 10)
begin
declare @cursedcharid int
set @cursedcharid = (select top 1 charid from GhostBusterLog order by ID desc)
update RivalSHD.dbo._Char set HwanLevel = LastPermanentHwan where CharID = @cursedcharid
delete from GhostBusterLog where CharID = @cursedcharid
end
end
update RivalSHD.dbo._Char set LatestHwan = @currenthwan where CharID = @CharID
if (@currenthwan = 32)
begin
update RivalSHD.dbo._Inventory set ItemID = 0 where ItemID = (select id64 from RivalSHD.dbo._items where refitemid in (46628,46629,46630,46631,46632,46633,46634)) and CharID = @CharID
end
if (@currenthwan = 33)
begin
update RivalSHD.dbo._Inventory set ItemID = 0 where ItemID = (select id64 from RivalSHD.dbo._items where refitemid in (46628,46629,46630,46631,46632,46633,46634)) and CharID = @CharID
end
if (@currenthwan = 34)
begin
update RivalSHD.dbo._Inventory set ItemID = 0 where ItemID = (select id64 from RivalSHD.dbo._items where refitemid in (46628,46629,46630,46631,46632,46633,46634)) and CharID = @CharID
end
if (@currenthwan in (106,107,108,109,110,111,112,113,115,116,117,118,129,119,120,121,122,123,124,125,126,127,128,129,130))
begin
if (@currenthwan = 106) --MOB_CH_TIGERWOMAN
begin
set @Charname = (select charname16 from RivalSHD.._Char with (nolock) where CharID = @CharID)
set @veremos = @Charname + ' has killed tiger girl and obtained the title "Tiger Girl Slayer" and earned 2 silk untill the next Tiger Girl killer!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,'','Exodus',0)
end
else if (@currenthwan = 107)--MOB_EU_KERBEROS
begin
set @Charname = (select charname16 from RivalSHD.._Char with (nolock) where CharID = @CharID)
set @veremos = @Charname + ' has killed Cerberus and obtained the title "Cerberus Slayer" and earned 2 silk untill the next Cerberus killer!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,'','Exodus',0)
end
else if (@currenthwan = 108)--MOB_AM_IVY
begin
set @Charname = (select charname16 from RivalSHD.._Char with (nolock) where CharID = @CharID)
set @veremos = @Charname + ' has killed Ivy and obtained the title "Ivy Slayer" and earned 4 silk untill the next Ivy killer!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,'','Exodus',0)
end
else if (@currenthwan = 109)--MOB_OA_URUCHI
begin
set @Charname = (select charname16 from RivalSHD.._Char with (nolock) where CharID = @CharID)
set @veremos = @Charname + ' has killed Uruchi and obtained the title "Uruchi Slayer" and earned 4 silk untill the next Uruchi killer!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,'','Exodus',0)
end
else if (@currenthwan = 110)--MOB_KK_ISYUTARU
begin
set @Charname = (select charname16 from RivalSHD.._Char with (nolock) where CharID = @CharID)
set @veremos = @Charname + ' has killed Isyutaru and obtained the title "Isyutaru Slayer" and earned 6 silk untill the next Isyutaru killer!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,'','Exodus',0)
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(3,'Teleport To get your title and silk',@Charname,'Exodus',0)
end
else if (@currenthwan = 111)--MOB_TK_BONELORD
begin
set @Charname = (select charname16 from RivalSHD.._Char with (nolock) where CharID = @CharID)
set @veremos = @Charname + ' has killed Lord Yarkan and obtained the title "Lord Yarkan Slayer" and earned 8 silk untill the next Lord Yarkan killer!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,'','Exodus',0)
end
else if (@currenthwan = 112)--MOB_RM_TAHOMET
begin
set @Charname = (select charname16 from RivalSHD.._Char with (nolock) where CharID = @CharID)
set @veremos = @Charname + ' has killed Demon Shaitan and obtained the title "Demon Shaitan Slayer" and earned 8 silk untill the next Demon Shaitan killer!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,'','Exodus',0)
end
else if (@currenthwan = 113)--COW
begin
set @Charname = (select charname16 from RivalSHD.._Char with (nolock) where CharID = @CharID)
set @veremos = @Charname + ' has killed Rival and obtained the title "King Of Exodus" and earned 20 silk untill the next Exodus killer!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,'','Exodus',0)
end
else if (@currenthwan = 114)--MOB_RM_ROC
begin
set @Charname = (select charname16 from RivalSHD.._Char with (nolock) where CharID = @CharID)
set @veremos = @Charname + ' has killed Roc and obtained the title "Roc Slayer" and earned 20 silk untill the next Roc killer!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,'','Exodus',0)
end
else if (@currenthwan = 115)--MOB_ARABIA_LAUNATUNE1
begin
set @Charname = (select charname16 from RivalSHD.._Char with (nolock) where CharID = @CharID)
set @veremos = @Charname + ' has killed Launatune and obtained the title "Launatune Slayer" and earned 10 silk untill the next Launatune killer!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,'','Exodus',0)
end
else if (@currenthwan = 116)--MOB_ARABIA_HARRISON1
begin
set @Charname = (select charname16 from RivalSHD.._Char with (nolock) where CharID = @CharID)
set @veremos = @Charname + ' has killed Harrison and obtained the title "Harrison Slayer" and earned 10 silk untill the next Harrison killer!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,'','Exodus',0)
end
else if (@currenthwan = 117)--MOB_ARABIA_VENEFICA1
begin
set @Charname = (select charname16 from RivalSHD.._Char with (nolock) where CharID = @CharID)
set @veremos = @Charname + ' has killed Venefica and obtained the title "Venefica Slayer" and earned 10 silk untill the next Venefica killer!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,'','Exodus',0)
end
else if (@currenthwan = 118)--MOB_ARABIA_VENEFICA_DEMON1
begin
set @Charname = (select charname16 from RivalSHD.._Char with (nolock) where CharID = @CharID)
set @veremos = @Charname + ' has killed Demon Venefica and obtained the title "Demon Venefica Slayer" and earned 10 silk untill the next Demon Venefica killer!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,'','Exodus',0)
end
else if (@currenthwan = 119)--Isis Slayer
begin
set @Charname = (select charname16 from RivalSHD.._Char with (nolock) where CharID = @CharID)
set @veremos = @Charname + ' has killed Lord and obtained the title "Isis Slayer" and earned 10 silk untill the next Isis Slayer killer!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,'','Exodus',0)
end
else if (@currenthwan = 120)--Selket Slayer
begin
set @Charname = (select charname16 from RivalSHD.._Char with (nolock) where CharID = @CharID)
set @veremos = @Charname + ' has killed Lord and obtained the title "Selket Slayer" and earned 10 silk untill the next Selket Slayer killer!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,'','Exodus',0)
end
else if (@currenthwan = 121)--Neith Slayer
begin
set @Charname = (select charname16 from RivalSHD.._Char with (nolock) where CharID = @CharID)
set @veremos = @Charname + ' has killed Lord and obtained the title "Neith Slayer" and earned 10 silk untill the next Neith Slayer killer!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,'','Exodus',0)
end
else if (@currenthwan = 122)--Anubis Slayer
begin
set @Charname = (select charname16 from RivalSHD.._Char with (nolock) where CharID = @CharID)
set @veremos = @Charname + ' has killed Lord and obtained the title "Anubis Slayer" and earned 10 silk untill the next Anubis Slayer killer!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,'','Exodus',0)
end
else if (@currenthwan = 123)--Seth King Slayer
begin
set @Charname = (select charname16 from RivalSHD.._Char with (nolock) where CharID = @CharID)
set @veremos = @Charname + ' has killed Lord and obtained the title "Seth King Slayer" and earned 15 silk untill the next Seth King Slayer killer!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,'','Exodus',0)
end
else if (@currenthwan = 124)--Salamander Slayer
begin
set @Charname = (select charname16 from RivalSHD.._Char with (nolock) where CharID = @CharID)
set @veremos = @Charname + ' has killed Lord and obtained the title "Salamander Slayer" and earned 10 silk untill the next Salamander Slayer killer!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,'','Exodus',0)
end
else if (@currenthwan = 125)--Sylph Slayer
begin
set @Charname = (select charname16 from RivalSHD.._Char with (nolock) where CharID = @CharID)
set @veremos = @Charname + ' has killed Lord and obtained the title "Sylph Slayer" and earned 10 silk untill the next Sylph Slayer killer!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,'','Exodus',0)
end
else if (@currenthwan = 126)--Gnome Slayer
begin
set @Charname = (select charname16 from RivalSHD.._Char with (nolock) where CharID = @CharID)
set @veremos = @Charname + ' has killed Lord and obtained the title "Gnome Slayer" and earned 10 silk untill the next Gnome Slayer killer!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,'','Exodus',0)
end
else if (@currenthwan = 127)--Undine Slayer
begin
set @Charname = (select charname16 from RivalSHD.._Char with (nolock) where CharID = @CharID)
set @veremos = @Charname + ' has killed Lord and obtained the title "Undine Slayer" and earned 10 silk untill the next Undine Slayer killer!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,'','Exodus',0)
end
else if (@currenthwan = 128)--Abyss Wizard Slayer
begin
set @Charname = (select charname16 from RivalSHD.._Char with (nolock) where CharID = @CharID)
set @veremos = @Charname + ' has killed Lord and obtained the title "Abyss Wizard Slayer" and earned 10 silk untill the next Abyss Wizard Slayer killer!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,'','Exodus',0)
end
else if (@currenthwan = 129)--Witch of the Abyss Slayer
begin
set @Charname = (select charname16 from RivalSHD.._Char with (nolock) where CharID = @CharID)
set @veremos = @Charname + ' has killed Lord and obtained the title "Witch of the Abyss Slayer" and earned 10 silk untill the next Witch of the Abyss Slayer killer!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,'','Exodus',0)
end
else if (@currenthwan = 130)--Underworld Spirit Slayer
begin
set @Charname = (select charname16 from RivalSHD.._Char with (nolock) where CharID = @CharID)
set @veremos = @Charname + ' has killed Lord and obtained the title "Underworld Spirit Slayer" and earned 10 silk untill the next Underworld Spirit Slayer killer!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,'','Exodus',0)
END
end
END
END
/*EVENTS*/
IF (@EventID = 19) and (@Data2 = 1)
begin
if exists (select Charname from TemporalJobEventKill with (nolock) where CharID = @CharID)
BEGIN
set @jobtype = (select JobType from RivalSHD.dbo._CharTrijob where charid = @CharID)
update TemporalJobEventKill set KillAmount = KillAmount + 1, JobType = @jobtype where CharID = @CharID
if (@jobtype = 1)
begin
update RivalSHD.dbo.JobWarEventDistribution
set KillsAmount = KillsAmount + 1
where EventID = (select EventID from RivalSHD.DBO.JobWarEventLog where Status in ('DailyOpen', 'WeeklyOpen'))
and JobType = 'TraderKills'
end
if (@jobtype = 2)
begin
update RivalSHD.dbo.JobWarEventDistribution
set KillsAmount = KillsAmount + 1
where EventID = (select EventID from RivalSHD.DBO.JobWarEventLog where Status in ('DailyOpen', 'WeeklyOpen'))
and JobType = 'ThiefKills'
end
if (@jobtype = 3)
begin
update RivalSHD.dbo.JobWarEventDistribution
set KillsAmount = KillsAmount + 1
where EventID = (select EventID from RivalSHD.DBO.JobWarEventLog where Status in ('DailyOpen', 'WeeklyOpen'))
and JobType = 'HunterKills'
end
END
End
/*ONLINE OFFLINE*/
IF (@CharID IN (select charid from RivalSHD.dbo._User with (nolock) where UserJID in (select JID from RivalACC.dbo.TB_User with (nolock) where sec_content <> 3)))
BEGIN
if not exists (select charid from RivalSHD.dbo._Inventory where ItemID in (select id64 from RivalSHD.dbo._items where RefItemID = 35592) AND CharID = @CharID)
begin
set @Charname = (SELECT CharName16 FROM RivalSHD.dbo._Char with (nolock) WHERE CharID = @CharID)
exec RivalSHD.dbo._ADD_ITEM_EXTERN @Charname, ITEM_EVENT_GLOBAL_CHATTING, 0, 1
end
if not exists (select CharID from OnlineGMTime where CharID = @CharID)
begin
set @Charname = (SELECT CharName16 FROM RivalSHD.dbo._Char with (nolock) WHERE CharID = @CharID)
INSERT INTO OnlineGMTime (CharID, Charname, [Status], [Date], mOnline, [stillOnline@])
VALUES (
@CharID,
@Charname,
'Online',
GETDATE(),
NULL, GETDATE()
);
end
else
begin
IF (@CharID IN (select charid from RivalSHD.dbo._User with (nolock) where UserJID in (select JID from RivalACC.dbo.TB_User with (nolock) where sec_content in (89))))
BEGIN
if not exists (select CharID from OnlineGMTime where CharID = @CharID)
begin
set @Charname = (SELECT CharName16 FROM RivalSHD.dbo._Char with (nolock) WHERE CharID = @CharID)
INSERT INTO OnlineGMTime (CharID, Charname, [Status], [Date], mOnline, [stillOnline@])
VALUES (
@CharID,
@Charname,
'Online',
GETDATE(),
NULL, GETDATE()
);
end
end
end
END
/*PROTECT*/
IF (@CharID IN (select charid from RivalSHD.dbo._User with (nolock) where UserJID in (select JID from RivalACC.dbo.TB_User with (nolock) where sec_content in (10,660,890))))
BEGIN
if not exists (select charid from RivalSHD.dbo._Inventory where ItemID in (select id64 from RivalSHD.dbo._items where RefItemID = 35592) AND CharID = @CharID)
begin
set @Charname = (SELECT CharName16 FROM RivalSHD.dbo._Char with (nolock) WHERE CharID = @CharID)
--exec RivalSHD.dbo._ADD_ITEM_EXTERN @Charname, ITEM_EVENT_GLOBAL_CHATTING, 0, 20
end
if not exists (select CharID from OnlineGMTime where CharID = @CharID)
begin
set @Charname = (SELECT CharName16 FROM RivalSHD.dbo._Char with (nolock) WHERE CharID = @CharID)
INSERT INTO OnlineGMTime (CharID, Charname, [Status], [Date], mOnline, [stillOnline@])
VALUES (
@CharID,
@Charname,
'Online',
GETDATE(),
NULL, GETDATE()
);
end
else
begin
IF (@CharID IN (select charid from RivalSHD.dbo._User with (nolock) where UserJID in (select JID from RivalACC.dbo.TB_User with (nolock) where sec_content in (66))))
BEGIN
if not exists (select CharID from OnlineGMTime where CharID = @CharID)
begin
set @Charname = (SELECT CharName16 FROM RivalSHD.dbo._Char with (nolock) WHERE CharID = @CharID)
INSERT INTO OnlineGMTime (CharID, Charname, [Status], [Date], mOnline, [stillOnline@])
VALUES (
@CharID,
@Charname,
'Online',
GETDATE(),
NULL, GETDATE()
);
end
end
IF (@EventID = 4 OR @EventID = 6)
BEGIN
IF (@EventID = 6 AND ((SELECT [Status] FROM OnlineGMTime with (nolock) WHERE CharID = @CharID) like 'Online'))
BEGIN
UPDATE OnlineGMTime
SET
[Status] = 'Offline',
[stillOnline@] = NULL
WHERE CharID = @CharID
END
IF (@EventID = 4)
BEGIN
UPDATE OnlineGMTime
SET
[Status] = 'Online',
[Date] = GETDATE(),
[stillOnline@] = GETDATE()
WHERE CharID = @CharID
END
END
end
UPDATE OnlineGMTime
SET
[mOnline] = CAST((DATEDIFF(MINUTE,[Date],GETDATE()))as varchar(max)) + ' minute(s) Online',
[stillOnline@] = GETDATE(),
[Minutes] = [Minutes] + (DATEDIFF(MINUTE,[stillOnline@],GETDATE()))
WHERE [Status] like 'Online'
end
/*ONLINE OFFLINE*/
IF not exists (SELECT CharID FROM _OnlineOffline WHERE CharID = @CharID) and ((select CurLevel from RivalSHD.dbo._Char with (nolock) where CharID = @CharID) > 89)
BEGIN
set @JID21 = (select UserJID from RivalSHD.dbo._User with (nolock) where CharID = @CharID)
set @AccountID = (select AccountID from RivalSHD.dbo._AccountJID with (nolock) where JID = @JID21)
INSERT INTO _OnlineOffline (CharID, Charname, [Status], [Date], [Minutes], [tMinutes], eSilk, mOnline, [Silk/Hour], [stillOnline@],LogPoints, RegDate, DailyGrantedSilks, AccountID)
VALUES (
@CharID,
(SELECT CharName16 FROM RivalSHD.dbo._Char with (nolock) WHERE CharID = @CharID),
'OnHold',
GETDATE(),
0,0,0,
null,2,
GETDATE(), 0, GETDATE(), 0, @AccountID
);
END
IF (@EventID = 4 OR @EventID = 6)
BEGIN
IF (@EventID = 6 AND ((SELECT [Status] FROM _OnlineOffline with (nolock) WHERE CharID = @CharID) like 'OnHold'))
BEGIN
UPDATE _OnlineOffline
SET [Status] = 'Offline'
WHERE CharID = @CharID
END
IF (@EventID = 6 AND ((SELECT [Status] FROM _OnlineOffline with (nolock) WHERE CharID = @CharID) like 'Online'))
BEGIN
UPDATE _OnlineOffline
SET
[Status] = 'Offline',
[Minutes] = [Minutes] + (DATEDIFF(MINUTE,[stillOnline@],GETDATE())),
[tMinutes] = [tMinutes] + (DATEDIFF(MINUTE,[stillOnline@],GETDATE())),
[mOnline] = NULL,
[stillOnline@] = NULL,
[LastOnline] = GETDATE()
WHERE CharID = @CharID
if not exists (Select CharID from RivalSHD.dbo.JobRegisterTable with (nolock) where CharID = @CharID)
begin
set @JID21 = (select UserJID from RivalSHD.dbo._User where CharID = @CharID)
set @AccountID2 = (select AccountID from RivalSHD.dbo._AccountJID where JID = @JID21)
set @jobExperience = 0
set @jobtopposition = 0
set @jobtype1 = (select JobType from RivalSHD.dbo._CharTrijob where CharID = @CharID)
set @joblevel = (Select Level from RivalSHD.dbo._CharTrijob where CharID = @CharID)
set @Latestcontributionamount = (select Contribution from RivalSHD.dbo._CharTrijob where CharID = @CharID)
set @latestcoinsgranted = 0
set @weeklycoinsgranted = @latestcoinsgranted
set @weeklycontributionamount = @Latestcontributionamount
set @Charname = (SELECT CharName16 FROM RivalSHD.dbo._Char with (nolock) WHERE CharID = @CharID)
insert RivalSHD.dbo.JobRegisterTable (CharID, Charname, JobExperience, JobTopPosition, JobType, LatestContributionAmount, LatestCoinsGranted, WeeklyCoinsGranted, WeeklyContributionAmount, LatestRewardedDate, RemainRewardAmount, [12hStartDate], ContributionIn12h, IsPenalized, JobLevel, AccountID, IsCheater)
values (@CharID, @Charname, @jobExperience, @jobtopposition, @jobtype1, @Latestcontributionamount, @latestcoinsgranted, @weeklycoinsgranted, @weeklycontributionamount, GETDATE(), @LatestContributionAmount, GETDATE(), 0, 0,@joblevel, @AccountID2, 0)
end
if exists (Select CharID from RivalSHD.dbo.JobRegisterTable with (nolock) where CharID = @CharID and IsPenalized = 1)
begin
set @Latestcontributionamount = (Select Contribution from RivalSHD.dbo._CharTrijob where CharID = @CharID)
set @jobtype = (Select JobType from RivalSHD.dbo.JobRegisterTable where CharID = @CharID)
set @jobtype1 = (Select PenalizedJobType from RivalSHD.dbo.JobRegisterTable where CharID = @CharID)
set @Latestcontributionamount = (@Latestcontributionamount / (select ContributionPerCoin from RivalSHD..NewRates where JobType = @jobtype1)) * (select ContributionPerCoin from RivalSHD..NewRates where JobType = @jobtype)
--update RivalSHD.dbo._CharTrijob set Contribution = 0 where CharID = @CharID
update RivalSHD.dbo.JobRegisterTable set IsPenalized = 0, RemainRewardAmount = @Latestcontributionamount + RemainRewardAmount where CharID = @CharID
end
if exists (Select CharID from RivalSHD.dbo.JobRegisterTable with (nolock) where CharID = @CharID and IsPenalized <> 1)
begin
set @JID21 = (select UserJID from RivalSHD.dbo._User where CharID = @CharID)
update RivalSHD.dbo._Chest set ItemID = Null where ItemID = 0
update RivalSHD.dbo.JobRegisterTable set RemainRewardAmount = 0 where RemainRewardAmount is null or RemainRewardAmount < 0
if exists (select UserJID from RivalSHD.dbo._Chest where UserJID = @JID21 and ItemID is Null)
begin
if (@CharID in (select CharID from RivalSHD..JobRegisterTable where IsCheater = 1 and CheaterFlagDateEnd > GETDATE()))
begin
set @Charname = (SELECT CharName16 FROM RivalSHD.dbo._Char with (nolock) WHERE CharID = @CharID)
update RivalSHD..JobRegisterTable set IsCheater = 0 where CharID = @CharID
update RivalSHD.._Char set NickName16 = CharName16 where CharID = @CharID
update RivalLOG..ThiefJobRiskStatus set [1to5minuteRobs] = 0, ClonePasswordTheftPoints = 0 where Charname = @Charname
end
if (@CharID not in (select CharID from RivalSHD..JobRegisterTable where IsCheater = 1))
begin
set @jobtopposition = 0
set @jobtype1 = (select JobType from RivalSHD.dbo._CharTrijob where CharID = @CharID)
set @joblevel = (Select Level from RivalSHD.dbo._CharTrijob where CharID = @CharID)
set @Latestcontributionamount = (select Contribution from RivalSHD.dbo._CharTrijob where CharID = @CharID)
set @totalcontribution = @Latestcontributionamount + (select RemainRewardAmount from RivalSHD.dbo.JobRegisterTable where CharID = @CharID)
if (@jobtype1 = 1)
begin
set @latestcoinsgranted = ((select CAST (@totalcontribution as float))/(select TraderCoinRate from RivalSHD.dbo.JobRates))
set @latestcoinsgranted = @latestcoinsgranted - (select @latestcoinsgranted % 1)
set @RemainRewardAmount = @totalcontribution - (select @latestcoinsgranted*(select TraderCoinRate from RivalSHD.dbo.JobRates))
end
if (@jobtype1 = 2)
begin
set @latestcoinsgranted = ((select CAST (@totalcontribution as float))/(select ThiefCoinRate from RivalSHD.dbo.JobRates))
set @latestcoinsgranted = @latestcoinsgranted - (select @latestcoinsgranted % 1)
set @RemainRewardAmount = @totalcontribution - (select @latestcoinsgranted*(select TraderCoinRate from RivalSHD.dbo.JobRates))
end
if (@jobtype1 = 3)
begin
set @latestcoinsgranted = ((select CAST (@totalcontribution as float))/(select HunterCoinRate from RivalSHD.dbo.JobRates))
set @latestcoinsgranted = @latestcoinsgranted - (select @latestcoinsgranted % 1)
set @RemainRewardAmount = @totalcontribution - (select @latestcoinsgranted*(select TraderCoinRate from RivalSHD.dbo.JobRates))
end
if (@latestcoinsgranted < 1)
begin
set @latestcoinsgranted = 0
set @RemainRewardAmount = (select RemainRewardAmount from RivalSHD.dbo.JobRegisterTable where CharID = @CharID) + @Latestcontributionamount
end
if (@jobtype1 in (1,2,3))
begin
set @AccountID2 = (select AccountID from RivalSHD.dbo._AccountJID where JID = @JID21)
set @weeklycoinsgranted = (select sum(WeeklyCoinsGranted) from RivalSHD.dbo.JobRegisterTable where AccountID = @AccountID2) + @latestcoinsgranted
set @weeklycontributionamount = (select WeeklyContributionAmount from RivalSHD.dbo.JobRegisterTable where CharID = @CharID) + @Latestcontributionamount
set @Coinlimit = 150 - @weeklycoinsgranted
set @jobExperience = (select [Exp] from RivalSHD.dbo._CharTrijob where CharID = @CharID)
if (@jobtype1 = 1)
begin
update RivalSHD.dbo.JobRegisterTable set TraderWeekly = TraderWeekly + (@latestcoinsgranted * (select ContributionPerCoin from RivalSHD..NewRates where JobType = @jobtype1)) where CharID = @CharID
--update RivalSHD.dbo._CharTrijob set Contribution = 0 where CharID = @CharID
if (@charid in (select charid from RivalSHD.dbo.JobRegisterTable where IsCapped = 1))
begin
update RivalSHD.dbo.JobRegisterTable set RemainRewardAmount = 0 where CharID = @CharID
end
end
if (@jobtype1 = 2)
begin
update RivalSHD.dbo.JobRegisterTable set ThiefWeekly = ThiefWeekly + (@latestcoinsgranted * (select ContributionPerCoin from RivalSHD..NewRates where JobType = @jobtype1)) where CharID = @CharID
-- update RivalSHD.dbo._CharTrijob set Contribution = 0 where CharID = @CharID
if (@charid in (select charid from RivalSHD.dbo.JobRegisterTable where IsCapped = 1))
begin
update RivalSHD.dbo.JobRegisterTable set RemainRewardAmount = 0 where CharID = @CharID
end
end
if (@jobtype1 = 3)
begin
update RivalSHD.dbo.JobRegisterTable set HunterWeekly = HunterWeekly + (@latestcoinsgranted * (select ContributionPerCoin from RivalSHD..NewRates where JobType = @jobtype1)) where CharID = @CharID
-- update RivalSHD.dbo._CharTrijob set Contribution = 0 where CharID = @CharID
if (@charid in (select charid from RivalSHD.dbo.JobRegisterTable where IsCapped = 1))
begin
update RivalSHD.dbo.JobRegisterTable set RemainRewardAmount = 0 where CharID = @CharID
end
end
update RivalSHD.dbo.JobRegisterTable set JobLevel = @joblevel, WeeklyContributionAmount = @weeklycontributionamount, LatestContributionAmount = @Latestcontributionamount, JobType = @jobtype1, RemainRewardAmount = @RemainRewardAmount, AccountID = @AccountID2 where CharID = @CharID
if (@jobtype1 = 2 and @latestcoinsgranted >= 1)
begin
set @Charname = (SELECT CharName16 FROM RivalSHD.dbo._Char with (nolock) WHERE CharID = @CharID)
insert RivalSHD..ThiefCoinLog values (@Charname, @CharID, @latestcoinsgranted, GETDATE())
end
if (@jobExperience > 2147483647)
begin
update RivalSHD.dbo._CharTrijob set [Exp] = 2147483647 where CharID = @CharID
update RivalSHD.dbo.JobRegisterTable set JobExperience = JobExperience + (2147483647 - @jobExperience)
end
if (@jobExperience < 0)
begin
update RivalSHD.dbo._CharTrijob set [Exp] = 2147483647 where CharID = @CharID
end
DECLARE
@ContributionxD int = (select Contribution from rivalshd.dbo._CharTrijob where CharID = @CharID)
if (@Coinlimit > 0 and @latestcoinsgranted >= 1) AND (@ContributionxD >= '14318688')
begin
-- update RivalSHD.dbo._CharTrijob set Contribution = 0 where CharID = @CharID
update RivalSHD.dbo.JobRegisterTable set WeeklyCoinsGranted = @weeklycoinsgranted, LatestCoinsGranted = @latestcoinsgranted, LatestRewardedDate = GETDATE(), RemainRewardAmount = @RemainRewardAmount where CharID = @CharID
exec RivalSHD.DBO._ADD_ITEM_EXTERN_CHEST @AccountID2, 'ITEM_ETC_ARENA_COIN', @latestcoinsgranted, 0
end
if (@Coinlimit < 0 and @latestcoinsgranted <> 0) AND (@ContributionxD >= '14318688')
begin
set @latestcoinsgranted = 150 - (select sum(WeeklyCoinsGranted) from RivalSHD.dbo.JobRegisterTable where AccountID = @AccountID2)
if (@latestcoinsgranted >= 1)
begin
update RivalSHD.dbo.JobRegisterTable set WeeklyCoinsGranted = 150, LatestCoinsGranted = @latestcoinsgranted, LatestRewardedDate = GETDATE(), AccountID = @AccountID2 where CharID = @CharID
exec RivalSHD.DBO._ADD_ITEM_EXTERN_CHEST @AccountID2, 'ITEM_ETC_ARENA_COIN', @latestcoinsgranted, 0
end
end
if (@Coinlimit <= 0)
begin
update RivalSHD..JobRegisterTable set IsCapped = 1 where AccountID = @AccountID2
end
end
end
end
end
END
IF (@EventID = 4)
BEGIN
UPDATE _OnlineOffline
SET
[Status] = 'Online',
[Date] = GETDATE(),
[stillOnline@] = GETDATE()
WHERE CharID = @CharID
update RivalSHD.dbo._Char set HwanLevel = 0 where CharID in (Select CharID from RivalSHD.dbo.AchievedHwan where achievedate < GETDATE() and HwanLevel in (32,33,34)) and HwanLevel in (32,33,34)
update RivalSHD.dbo._Char set LatestHwan = 0 where CharID in (Select CharID from RivalSHD.dbo.AchievedHwan where achievedate < GETDATE() and HwanLevel in (32,33,34)) and LatestHwan in (32,33,34)
END
END
/*REWARDS*/
if (@CharID in (select CharID from RivalSHD.dbo._TimedJob with (nolock) where CharID = @CharID and JobID in (1, 2)))
begin
update RivalSHD.dbo._TimedJob set TimeToKeep = 0 where CharID = @CharID and JobID in (1, 2)
end
if (@CharID in (select Charid from RivalSHD.dbo._Char with (NOLOCK) where IsJobWinner = 1))
begin
set @JID = (select UserJID from RivalSHD.dbo._User where CharID = @CharID)
set @JobDate = GETDATE()
set @EventID32 = (select top 1 EventID from RivalSHD.dbo.JobWarEventLog order by EventID desc)
set @RewardGiven = 'ITEM_ETC_ARENA_COIN'
set @AccountID = (select AccountID from RivalSHD.dbo._AccountJID where JID = @JID)
set @Charname = (SELECT CharName16 FROM RivalSHD.dbo._Char with (nolock) WHERE CharID = @CharID)
update RivalSHD.dbo._Char set IsJobWinner = 0 where CharID = @CharID
exec RivalSHD.dbo._ADD_ITEM_EXTERN_CHEST @AccountID, @RewardGiven, 1, 0
exec RivalSHD.dbo._ADD_ITEM_EXTERN_CHEST @AccountID, 'ITEM_ETC_ARENA_COIN', 1, 0
update RivalSHD.dbo.JobWarParticipantLog set LatestCoinReward = '1ArenaCoin' where Charname = @Charname
end
if (@CharID in (select CharID from RivalSHD.dbo._Char with (NOLOCK) where IsJobWinner = 3))
begin
set @JID = (select UserJID from RivalSHD.dbo._User where CharID = @CharID)
set @JobDate = GETDATE()
set @EventID32 = (select top 1 EventID from RivalSHD.dbo.JobWarEventLog order by EventID desc)
set @RewardGiven = (select top 1 Rewardcodename from RivalSHD.dbo.EventRewardList where EventType = 'DailyJobWar' order by NEWID())
set @RewardAmount = (select top 1 RewardAmount from RivalSHD.dbo.EventRewardList where Rewardcodename = @RewardGiven and EventType = 'DailyJobWar')
set @AccountID = (select AccountID from RivalSHD.dbo._AccountJID where JID = @JID)
set @Charname = (SELECT CharName16 FROM RivalSHD.dbo._Char with (nolock) WHERE CharID = @CharID)
set @LatestKillCount = (select LatestKillAmount from RivalSHD.dbo.JobWarParticipantLog where Charname = @Charname)/3
update RivalSHD.dbo._Char set IsJobWinner = 0 where CharID = @CharID
if @LatestKillCount > 0
begin
exec RivalSHD.dbo._ADD_ITEM_EXTERN_CHEST @AccountID, 'ITEM_ETC_ARENA_COIN', @LatestKillCount, 0
set @LatestKillCount = @LatestKillCount * 2
exec RivalACC.dbo._extraSilk2 @CharID, @LatestKillCount
exec RivalSHD.dbo._ADD_ITEM_EXTERN_CHEST @AccountID, @RewardGiven, @RewardAmount, 0
update RivalSHD.dbo.JobWarParticipantLog set RewardGiven = @RewardGiven
end
end
if (@CharID in (select CharID from RivalSHD.dbo._Char with (NOLOCK) where IsJobWinner = 2))
begin
set @JID = (select UserJID from RivalSHD.dbo._User where CharID = @CharID)
set @JobDate = GETDATE()
set @EventID32 = (select top 1 EventID from RivalSHD.dbo.JobWarEventLog order by EventID desc)
set @RewardGiven = (select top 1 Rewardcodename from RivalSHD.dbo.EventRewardList where EventType = 'WeeklyJobWar' order by NEWID())
set @RewardAmount = (select top 1 RewardAmount from RivalSHD.dbo.EventRewardList where Rewardcodename = @RewardGiven and EventType = 'WeeklyJobWar' order by NEWID())
set @RewardPlus = (select top 1 OptLevel from RivalSHD.dbo.EventRewardList where Rewardcodename = @RewardGiven and EventType = 'WeeklyJobWar' order by NEWID())
set @AccountID = (select AccountID from RivalSHD.dbo._AccountJID where JID = @JID)
set @Charname = (SELECT CharName16 FROM RivalSHD.dbo._Char with (nolock) WHERE CharID = @CharID)
set @LatestKillCount = ROUND((select LatestKillAmount from RivalSHD.dbo.JobWarParticipantLog where Charname = @Charname)/10,0)
update RivalSHD.dbo._Char set IsJobWinner = 0 where CharID = @CharID
if @LatestKillCount > 0
begin
exec RivalSHD.dbo._ADD_ITEM_EXTERN_CHEST @AccountID, 'ITEM_ETC_ARENA_COIN', @LatestKillCount, 0
set @LatestKillCount = @LatestKillCount * 2
set @LatestKillCount = @LatestKillCount * 2
exec RivalACC.dbo._extraSilk2 @CharID, @LatestKillCount
exec RivalSHD.dbo._ADD_ITEM_EXTERN_CHEST @AccountID, @RewardGiven, @RewardAmount, @RewardPlus
update RivalSHD.dbo.JobWarParticipantLog set RewardGiven = @RewardGiven, AmountGiven = @RewardAmount where Charname = @Charname
end
end
/*ONLINE OFFLINE*/
IF (@EventID = 4 OR @EventID = 6)
BEGIN
IF (@EventID = 6 AND ((SELECT [Status] FROM _OnlineOffline WHERE CharID = @CharID) like 'OnHold'))
BEGIN
UPDATE _OnlineOffline
SET [Status] = 'Offline'
WHERE CharID = @CharID
END
IF (@EventID = 6 AND ((SELECT [Status] FROM _OnlineOffline with (nolock) WHERE CharID = @CharID) like 'Online'))
BEGIN
UPDATE _OnlineOffline
SET
[Status] = 'Offline',
[Minutes] = [Minutes] + (DATEDIFF(MINUTE,[stillOnline@],GETDATE())),
[tMinutes] = [tMinutes] + (DATEDIFF(MINUTE,[stillOnline@],GETDATE())),
[mOnline] = NULL,
[stillOnline@] = NULL
WHERE CharID = @CharID
END
IF (@EventID = 4)
BEGIN
UPDATE _OnlineOffline
SET
[Status] = 'Online',
[Date] = GETDATE(),
[stillOnline@] = GETDATE()
WHERE CharID = @CharID
if (@CharID in (select charid from TopJobbers where TopNo = 0))
begin
update RivalSHD.._Char set NickName16 = CharName16 where CharID = @CharID
delete from TopJobbers where CharID = @CharID
end
if (@CharID in (select charid from TopJobbers where TopNo <> 0))
begin
set @Charname = (select Charname16 from RivalSHD.._Char where CharID = @CharID)
DECLARE
@TopNo1 int = (select TopNo from TopJobbers where CharID = @CharID),
@TopNo varchar(max) = '[' + convert(varchar(max),(select TopNo from TopJobbers where CharID = @CharID)) + ']'
update RivalSHD.._Char set NickName16 = @TopNo + @Charname where CharID = @CharID
delete from TopJobbers where CharID = @CharID
end
update _OnlineOffline set IsBug = 'Bug', LogPoints = 1, LatestLog = GETDATE() where CharID = @CharID
END
END
if ((select CurLevel from RivalSHD.dbo._Char with (nolock) where CharID = @CharID) = 90)
begin
UPDATE _OnlineOffline
SET
[mOnline] = CAST((DATEDIFF(MINUTE,[Date],GETDATE()))as varchar(max)) + ' minute(s) Online',
[Minutes] = [Minutes] + (DATEDIFF(MINUTE,[stillOnline@],GETDATE())),
[tMinutes] = [tMinutes] + (DATEDIFF(MINUTE,[stillOnline@],GETDATE())),
[stillOnline@] = GETDATE()
WHERE Status = 'Online' AND CharID = @CharID
/*Silk/Hour basic calc*/
/*Calculation of the silk amount*/
DECLARE
@tMinutes bigint = (SELECT [Minutes] from _OnlineOffline WHERE CharID = @CharID), @Silk int,
@earnedsilk int,
@cursilkperhour int ;
if ((select latestJobTitledate from TimedEvents) < GETDATE()) and ((SELECT DATENAME(WEEKDAY, GETDATE())) = 'Sunday')
begin
update TimedEvents set latestJobTitledate = GETDATE() + 5
update RivalSHD.dbo._Char set HwanLevel = LatestHwan where HwanLevel in (1,2,3)
set @Charname = (select charname16 from RivalSHD.._Char with (nolock) where CharID = (select top 1 CharID from RivalSHD.dbo.JobRegisterTable where JobType = 3 order by HunterWeekly desc))
set @veremos = @Charname + ' is the top Hunter of the week and shall now keep the Grand Marshall as a title for a week!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(1,@veremos,'','Exodus',0)
set @Charname = (select charname16 from RivalSHD.._Char with (nolock) where CharID = (select top 1 CharID from RivalSHD.dbo.JobRegisterTable where JobType = 1 order by TraderWeekly desc))
set @veremos = @Charname + ' is the top Trader of the week and shall now keep the Dynasty Merchant as a title for a week!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(1,@veremos,'','Exodus',0)
set @Charname = (select charname16 from RivalSHD.._Char with (nolock) where CharID = (select top 1 CharID from RivalSHD.dbo.JobRegisterTable where JobType = 2 order by ThiefWeekly desc))
set @veremos = @Charname + ' is the top Thief of the week and shall now keep the Bandit King as a title for a week!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(1,@veremos,'','Exodus',0)
update RivalSHD.dbo._Char set HwanLevel = 1 where CharID = (select top 1 CharID from RivalSHD.dbo.JobRegisterTable where JobType = 3 order by HunterWeekly desc)
update RivalSHD.dbo._Char set HwanLevel = 2 where CharID = (select top 1 CharID from RivalSHD.dbo.JobRegisterTable where JobType = 1 order by TraderWeekly desc)
update RivalSHD.dbo._Char set HwanLevel = 3 where CharID = (select top 1 CharID from RivalSHD.dbo.JobRegisterTable where JobType = 2 order by ThiefWeekly desc)
update RivalSHD.dbo.JobRegisterTable set WeeklyContributionAmount = 0, TraderWeekly = 0, HunterWeekly = 0, ThiefWeekly = 0, WeeklyCoinsGranted = 0, RemainRewardAmount = 0, JobExperience = 0
end
IF (@tMinutes >= 120)
BEGIN
DECLARE
@totalminutes int = (Select tMinutes from _OnlineOffline where CharID = @CharID),
@silklimit int = (select Limit from SilkPerHourConfig where WEEKDAYS = (select DATENAME(WEEKDAY, GETDATE())))
set @cursilkperhour = (Select DefaultSilk from SilkPerHourConfig where Weekdays = (SELECT DATENAME(WEEKDAY, GETDATE())))
SET @Silk = CAST(((SELECT [Minutes] FROM _OnlineOffline WHERE CharID = @CharID) / 60) as int)
set @JID = (select UserJID from RivalSHD.dbo._User where CharID = @CharID)
set @AccountID = (select AccountID from RivalSHD.._AccountJID where JID = @JID)
set @earnedsilk = (@Silk*@cursilkperhour)
UPDATE _OnlineOffline
SET [Minutes] = 0
WHERE CharID = @CharID
UPDATE _OnlineOffline
SET [eSilk] = [eSilk] + @earnedsilk
WHERE CharID = @CharID
exec RivalACC.dbo._extraSilk @CharID, @earnedsilk,@JID
update _OnlineOffline set DailyGrantedSilks = DailyGrantedSilks + @earnedsilk where CharID = @CharID
end
if not exists (Select * from SilkperhourDailyAmounts where Day > GETDATE())
begin
insert SilkperhourDailyAmounts values (0, GETDATE()+1)
update _OnlineOffline set DailyGrantedSilks = 0
end
if exists (Select * from SilkperhourDailyAmounts where Day < GETDATE())
begin
DECLARE
@silkperhourid int
set @silkperhourid = (Select top 1 ID from SilkperhourDailyAmounts order by ID desc)
update SilkperhourDailyAmounts set SilkAmount = SilkAmount + @Silk where ID = @silkperhourid
end
END
/*JOB*/
if ((select latestJobTagdate from TimedEvents) < (select GETDATE()))
begin
update TimedEvents set latestJobTagdate = latestJobTagdate + 1
delete from TopJobbers
declare @designatedCharID int = 0
while @designatedCharID <> null
begin
insert TopJobbers (CharID, TopNo) values ((select top 1 CharID from RivalSHD.._Char where NickName16 <> CharName16), 0)
set @designatedCharID = (select top 1 CharID from RivalSHD.._Char where NickName16 <> CharName16)
end
insert TopJobbers values ((select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 1 order by WeeklyContributionAmount desc), 1)
insert TopJobbers values ((select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 2 order by WeeklyContributionAmount desc), 1)
insert TopJobbers values ((select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 3 order by WeeklyContributionAmount desc), 1)
insert TopJobbers values ((select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 1 and CharID not in (select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 1 order by WeeklyContributionAmount desc) order by WeeklyContributionAmount desc), 2)
insert TopJobbers values ((select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 2 and CharID not in (select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 1 order by WeeklyContributionAmount desc) order by WeeklyContributionAmount desc), 2)
insert TopJobbers values ((select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 3 and CharID not in (select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 1 order by WeeklyContributionAmount desc) order by WeeklyContributionAmount desc), 2)
insert TopJobbers values ((select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 1 and CharID not in (select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 1 order by WeeklyContributionAmount desc) order by WeeklyContributionAmount desc), 3)
insert TopJobbers values ((select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 2 and CharID not in (select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 1 order by WeeklyContributionAmount desc) order by WeeklyContributionAmount desc), 3)
insert TopJobbers values ((select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 3 and CharID not in (select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 1 order by WeeklyContributionAmount desc) order by WeeklyContributionAmount desc), 3)
insert TopJobbers values ((select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 1 and CharID not in (select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 1 order by WeeklyContributionAmount desc) order by WeeklyContributionAmount desc), 4)
insert TopJobbers values ((select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 2 and CharID not in (select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 1 order by WeeklyContributionAmount desc) order by WeeklyContributionAmount desc), 4)
insert TopJobbers values ((select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 3 and CharID not in (select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 1 order by WeeklyContributionAmount desc) order by WeeklyContributionAmount desc), 4)
insert TopJobbers values ((select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 1 and CharID not in (select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 1 order by WeeklyContributionAmount desc) order by WeeklyContributionAmount desc), 5)
insert TopJobbers values ((select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 2 and CharID not in (select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 1 order by WeeklyContributionAmount desc) order by WeeklyContributionAmount desc), 5)
insert TopJobbers values ((select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 3 and CharID not in (select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 1 order by WeeklyContributionAmount desc) order by WeeklyContributionAmount desc), 5)
insert TopJobbers values ((select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 1 and CharID not in (select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 1 order by WeeklyContributionAmount desc) order by WeeklyContributionAmount desc), 6)
insert TopJobbers values ((select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 2 and CharID not in (select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 1 order by WeeklyContributionAmount desc) order by WeeklyContributionAmount desc), 6)
insert TopJobbers values ((select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 3 and CharID not in (select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 1 order by WeeklyContributionAmount desc) order by WeeklyContributionAmount desc), 6)
insert TopJobbers values ((select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 1 and CharID not in (select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 1 order by WeeklyContributionAmount desc) order by WeeklyContributionAmount desc), 7)
insert TopJobbers values ((select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 2 and CharID not in (select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 1 order by WeeklyContributionAmount desc) order by WeeklyContributionAmount desc), 7)
insert TopJobbers values ((select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 3 and CharID not in (select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 1 order by WeeklyContributionAmount desc) order by WeeklyContributionAmount desc), 7)
insert TopJobbers values ((select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 1 and CharID not in (select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 1 order by WeeklyContributionAmount desc) order by WeeklyContributionAmount desc), 8)
insert TopJobbers values ((select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 2 and CharID not in (select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 1 order by WeeklyContributionAmount desc) order by WeeklyContributionAmount desc), 8)
insert TopJobbers values ((select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 3 and CharID not in (select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 1 order by WeeklyContributionAmount desc) order by WeeklyContributionAmount desc), 8)
insert TopJobbers values ((select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 1 and CharID not in (select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 1 order by WeeklyContributionAmount desc) order by WeeklyContributionAmount desc), 9)
insert TopJobbers values ((select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 2 and CharID not in (select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 1 order by WeeklyContributionAmount desc) order by WeeklyContributionAmount desc), 9)
insert TopJobbers values ((select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 3 and CharID not in (select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 1 order by WeeklyContributionAmount desc) order by WeeklyContributionAmount desc), 9)
insert TopJobbers values ((select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 1 and CharID not in (select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 1 order by WeeklyContributionAmount desc) order by WeeklyContributionAmount desc), 10)
insert TopJobbers values ((select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 2 and CharID not in (select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 1 order by WeeklyContributionAmount desc) order by WeeklyContributionAmount desc), 10)
insert TopJobbers values ((select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 3 and CharID not in (select top 1 CharID from RivalSHD..JobRegisterTable where JobType = 1 order by WeeklyContributionAmount desc) order by WeeklyContributionAmount desc), 10)
end
/*BUG PROTECT*/
if (@EventID = 11) and (@Data1 = 3)
begin
if ((select latestregion from RivalSHD.._Char with (nolock) where CharID = @CharID) in (25761,24993,25244,24734,23183,23180,23436,23439,24438,23929,22390,22137))
begin
if not exists (Select CharID from RivalSHD..JobTeleportPenaltyLog where CharID = @CharID)
begin
insert RivalSHD..JobTeleportPenaltyLog values (@CharID, GETDATE(), 0, 0)
end
declare @latestteleport datetime = (select LatestTeleportDate from RivalSHD..JobTeleportPenaltyLog where CharID = @CharID)
update RivalSHD..JobTeleportPenaltyLog set AccumulatedMinuteTeleport = 0 where LatestTeleportDate < GETDATE()-0.00068
update RivalSHD..JobTeleportPenaltyLog set AccumulatedMinuteTeleport = AccumulatedMinuteTeleport + 1 where CharID = @CharID and (select DATEDIFF(Second, @latestteleport, GETDATE())) < 60
if exists (select CharID from RivalSHD..JobTeleportPenaltyLog where CharID = @CharID and AccumulatedMinuteTeleport > 2)
begin
update RivalSHD.._Char set PKPenaltyPoint = PKPenaltyPoint + 15 where CharID = @CharID
end
end
end
/*Essentilas*/
IF((@EventID NOT BETWEEN 23 AND 27) AND
(@EventID NOT BETWEEN 200 AND 202) AND
(@EventID NOT BETWEEN 204 AND 206) AND
(@EventID != 210) AND (@EventID != 214) AND (@EventID != 244) and (@EventID != 21))
begin
DECLARE
@len_pos int,
@len_desc int
select @len_pos = len(@strPos),
@len_desc = len(@Desc)
if (@len_pos > 0 and @len_desc > 0)
begin
insert _LogEventChar (CharID, EventTime, EventID, Data1, Data2, EventPos, strDesc) values (@CharID, GetDate(), @EventID, @Data1, @Data2, @strPos, @Desc)
end
else if (@len_pos > 0 and @len_desc = 0)
begin
insert _LogEventChar (CharID, EventTime, EventID, Data1, Data2, EventPos, strDesc) values(@CharID, GetDate(), @EventID, @Data1, @Data2, @strPos, @Desc)
end
else if (@len_pos = 0 and @len_desc > 0)
begin
insert _LogEventChar (CharID, EventTime, EventID, Data1, Data2, strDesc) values(@CharID, GetDate(), @EventID, @Data1, @Data2, @Desc)
end
else
begin
insert _LogEventChar (CharID, EventTime, EventID, Data1, Data2) values(@CharID, GetDate(), @EventID, @Data1, @Data2)
end
end
--------------------------------------------------------------------------------------------------
------------------------ IPLog System
IF @EventID = 4 /*This eventID is triggered whenever a character logs in*/
BEGIN
DECLARE
@Cname varchar(50) = (SELECT Charname16 from RivalSHD.dbo._Char WHERE CharID=@CharID),
@IP bigint = @Data2,
@ip1 int,
@ip2 int,
@ip3 int,
@ip4 int,
@LeftOver bigint,
@finalip varchar(50);
SET @ip1 = @IP / 16777216 /*First IP segment*/
SET @LeftOver = @IP - (@ip1 * 16777216)
SET @ip2 = @LeftOver / 65536 /*Second IP segment*/
SET @LeftOver = @LeftOver - (@ip2 * 65536)
SET @ip3 = @LeftOver / 256 /*Third IP segment*/
SET @ip4 = @LeftOver - (@ip3 * 256) /*Fourth IP segment*/
SET @finalip = /*Putting the segments together and reversing them*/
CONVERT(varchar, @ip4)+
'.'+CONVERT(varchar, @ip3)+
'.'+CONVERT(varchar, @ip2)+
'.'+CONVERT(varchar, @ip1)
INSERT INTO RivalLOG.dbo._IP_LOGS (CharName,IP,LogTime) values (@Cname,@finalip,GETDATE())
END
/* -- AutoEquipMent
if @EventID = '22' and @Data2 > @Data1 and @Data2 between '0' and '98'
begin
exec zealous.dbo.[_AUTO_EQUIPMENT] @Data2,@CharID
end*/
--If ( @Data1=@Data2-1 AND @Data2 = @Data1+1 AND @Data2 <= 84 AND @EventID = 22 AND @Data2 > 10 ) BEGIN
-- Exec rivalshd.dbo._RoyalAutoEquipment @CharID, @Data2
--end
IF @EventID = '22' and @Data2 > @Data1 and @Data2 between '0' and '87'
BEGIN
EXEC SRO_VT_ERIUS.dbo._AutoEquipt @CharID,@Data2
END
/*---------- FIRST 200 Player Got lv100
IF @EventID = '22' and @Data2 = '100'
BEGIN
EXEC zealous.._ExodusOne @CharID,@EventID,@Data2
END*/
--- Wanted System
if @EventID = '19' -- Count kills
BEGIN
IF (@Desc LIKE '%Trader, Neutral, no freebattle team%' -- Trader
OR @Desc LIKE '%Hunter, Neutral, no freebattle team%' -- Hunter
OR @Desc LIKE '%Robber, Neutral, no freebattle team%' -- Thief
) BEGIN
DECLARE @ReqLevel INT =0
SELECT @KilledName = REPLACE(@KilledName, LEFT(@KilledName, CHARINDEX('(', @KilledName)), '')
SELECT @KilledName = REPLACE(@KilledName, RIGHT(@KilledName, CHARINDEX(')', REVERSE(@KilledName))), '')
SELECT @ReqLevel = CurLevel FROM [RivalSHD].[dbo].[_Char] WHERE CharName16 = @KilledName
if @ReqLevel >= 85
BEGIN
Exec RivalLOG.dbo.[_Wanted] @CharID , @EventID , @Desc
End
END
END
if @EventID = '20' -- if dies
if (@EventID between 9 and 11)
BEGIN
IF (@Desc LIKE '%Trader, Neutral, no freebattle team%' -- Trader
OR @Desc LIKE '%Hunter, Neutral, no freebattle team%' -- Hunter
OR @Desc LIKE '%Robber, Neutral, no freebattle team%' -- Thief
) BEGIN
UPDATE _RowKills SET Kills = '0' WHERE KillerID = @CharID
IF EXISTS (SELECT * FROM RivalSHD.dbo._TimedJob WHERE CharID = @CharID AND JobID = '33862' or CharID = @CharID and JobID between '50021' and '50024')
BEGIN
DELETE FROM RivalSHD.dbo._TimedJob WHERE CharID = @CharID and JobID = '33862' or CharID = @CharID and JobID between '50021' and '50024'
END
END
END
DECLARE
@DynIP VARCHAR(12),
@CosID int,
@COSlevel TINYINT,
@Aha INT,
@PetOption tinyint,
@CharName1 Varchar(64),
@CharLevel1 tinyint = (SELECT CurLevel from RivalSHD.dbo._Char WHERE CharID = @CharID)
IF (@EventID = 4)
BEGIN
SELECT @CharName1 = CharName16 FROM RivalSHD.dbo._Char WHERE CharID = @CharID
exec @DynIP = RivalACC.dbo.split_ip @Data2
INSERT INTO _IPLogs (CharID,Charname,IP,[Date]) VALUES (@CharID, @CharName1, @DynIP, GETDATE())
END
IF (@EventID = 6)
BEGIN
DELETE FROM _IPLogs WHERE CharID = @CharID
END
/*ACADEMY*/
if @EventID = '19' -- Count kills
DECLARE
@Kc int ,
@K_Name VARCHAR(512) = @Desc
SELECT @K_Name = REPLACE(@K_Name, LEFT(@K_Name, CHARINDEX('(', @K_Name)), '')
SELECT @K_Name = REPLACE(@K_Name, RIGHT(@K_Name, CHARINDEX(')', REVERSE(@K_Name))), '')
----- Killed CharID
DECLARE @K_CharID INT =(SELECT CharID FROM [RivalSHD].[dbo].[_Char] WHERE CharName16 = @K_Name)
------
-- Check if he kills the char more than 3 times
DECLARE
@PKill int = (select COUNT(*) from RivalLOG..Chetito where KillerID = @CharID and KilledID = @K_CharID),
@MaxK int = (select COUNT(Kills) from RivalLOG..Chetito where KillerID = @CharID and Kills = '1')
if @EventID = '19'
BEGIN
INSERT INTO RivalLOG..Chetito (KillerID , KilledID , Kills) VALUES (@CharID , @K_CharID,'1')
END
-- #########################################
/*Hounr By Kills*/
-- #########################################
set @Charname = (select charname16 from RivalSHD.._Char with (nolock) where CharID = @CharID)
Declare @Kills int
Set @CharID = (Select CharID From RivalSHD.._Char Where CharID=@CharID)
Set @Kills = (select COUNT(Kills) from RivalLOG..Chetito where KillerID = @CharID)
Set @KillerID = (select KillerID from RivalLOG..Chetito where KillerID = @CharID)
if (@Kills < 29)
begin
print ''
end
-- No level for under 29 kills
IF (@EventID=19) and (@Kills = 31 )
begin
Update RivalSHD.dbo._CharTrijob set Level =8 where CharID = @CharID
set @veremos = @Charname + ' has been reached Level 8 Because Row Kills Is [31] on Jobbing!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,0,'Exodus',0)
End
-- level 8 for kills ebtween 30 and 44
IF (@EventID=19) and (@Kills = 41 )
begin
Update RivalSHD.dbo._CharTrijob set Level = 9 where CharID = @CharID
set @veremos = @Charname + ' has been reached Level 9 Because Row Kills Is [41] on Jobbing!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,0,'Exodus',0)
End
IF (@EventID=19) and (@Kills = 51 )
begin
Update RivalSHD.dbo._CharTrijob set Level =10 where CharID = @CharID
set @veremos = @Charname + ' has been reached Level 10 Because Row Kills Is [51] on Jobbing!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,0,'Exodus',0)
End
IF (@EventID=19) and (@Kills = 101 )
begin
Update RivalSHD.dbo._CharTrijob set Level = 11 where CharID = @CharID
set @veremos = @Charname + ' has been reached Level 11 Because Row Kills Is [101] on Jobbing!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,0,'Exodus',0)
End
IF (@EventID=19) and (@Kills = 151 )
begin
Update RivalSHD.dbo._CharTrijob set Level = 12 where CharID = @CharID
set @veremos = @Charname + ' has been reached Level 12 Because Row Kills Is [151] on Jobbing!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,0,'Exodus',0)
End
IF (@EventID=19) and (@Kills = 212 )
begin
Update RivalSHD.dbo._CharTrijob set Level = 13 where CharID = @CharID
set @veremos = @Charname + ' has been reached Level 13 Because Row Kills Is [212] on Jobbing!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,0,'Exodus',0)
End
IF (@EventID=19) and (@Kills = 321 )
begin
Update RivalSHD.dbo._CharTrijob set Level = 14 where CharID = @CharID
set @veremos = @Charname + ' has been reached Level 14 Because Row Kills Is [321] on Jobbing!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,0,'Exodus',0)
End
IF (@EventID=19) and (@Kills = 401 )
begin
Update RivalSHD.dbo._CharTrijob set Level = 15 where CharID = @CharID
set @veremos = @Charname + ' has been reached Level 15 Because Row Kills Is [401] on Jobbing!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,0,'Exodus',0)
End
IF (@EventID=19) and (@Kills = 501 )
begin
Update RivalSHD.dbo._CharTrijob set Level = 16 where CharID = @CharID
set @veremos = @Charname + ' has been reached Level 16 Because Row Kills Is [501] on Jobbing!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,0,'Exodus',0)
End
IF (@EventID=19) and (@Kills = 601 )
begin
Update RivalSHD.dbo._CharTrijob set Level = 17 where CharID = @CharID
set @veremos = @Charname + ' has been reached Level 17 Because Row Kills Is [601] on Jobbing!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,0,'Exodus',0)
End
IF (@EventID=19) and (@Kills = 701 )
begin
Update RivalSHD.dbo._CharTrijob set Level = 18 where CharID = @CharID
set @veremos = @Charname + ' has been reached Level 18 Because Row Kills Is [701] on Jobbing!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,0,'Exodus',0)
End
IF (@EventID=19) and (@Kills = 801 )
begin
Update RivalSHD.dbo._CharTrijob set Level = 19 where CharID = @CharID
set @veremos = @Charname + ' has been reached Level 19 Because Row Kills Is [801] on Jobbing!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,0,'Exodus',0)
End
IF (@EventID=19) and (@Kills = 851 )
begin
Update RivalSHD.dbo._CharTrijob set Level = 20 where CharID = @CharID
set @veremos = @Charname + ' has been reached Level 20 Because Row Kills Is [851] on Jobbing!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,0,'Exodus',0)
End
IF (@EventID=19) and (@Kills = 901 )
begin
Update RivalSHD.dbo._CharTrijob set Level = 21 where CharID = @CharID
set @veremos = @Charname + ' has been reached Level 21 Because Row Kills Is [901] on Jobbing!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,0,'Exodus',0)
End
IF (@EventID=19) and (@Kills = 1001 )
begin
Update RivalSHD.dbo._CharTrijob set Level = 22 where CharID = @CharID
set @veremos = @Charname + ' has been reached Level 22 Because Row Kills Is [1001] on Jobbing!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,0,'Exodus',0)
End
IF (@EventID=19) and (@Kills = 1101 )
begin
Update RivalSHD.dbo._CharTrijob set Level = 23 where CharID = @CharID
set @veremos = @Charname + ' has been reached Level 23 Because Row Kills Is [1101] on Jobbing!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,0,'Exodus',0)
End
IF (@EventID=19) and (@Kills = 1201 )
begin
Update RivalSHD.dbo._CharTrijob set Level = 24 where CharID = @CharID
set @veremos = @Charname + ' has been reached Level 24 Because Row Kills Is [1201] on Jobbing!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,0,'Exodus',0)
End
IF (@EventID=19) and (@Kills = 1301 )
begin
Update RivalSHD.dbo._CharTrijob set Level = 25 where CharID = @CharID
set @veremos = @Charname + ' has been reached Level 25 Because Row Kills Is [1301] on Jobbing!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,0,'Exodus',0)
End
IF (@EventID=19) and (@Kills = 1401 )
begin
Update RivalSHD.dbo._CharTrijob set Level = 26 where CharID = @CharID
set @veremos = @Charname + ' has been reached Level 26 Because Row Kills Is [1401] on Jobbing!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,0,'Exodus',0)
End
IF (@EventID=19) and (@Kills = 1501 )
begin
Update RivalSHD.dbo._CharTrijob set Level = 27 where CharID = @CharID
set @veremos = @Charname + ' has been reached Level 27 Because Row Kills Is [1501] on Jobbing!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,0,'Exodus',0)
End
IF (@EventID=19) and (@Kills = 1601 )
begin
Update RivalSHD.dbo._CharTrijob set Level = 28 where CharID = @CharID
set @veremos = @Charname + ' has been reached Level 28 Because Row Kills Is [1601] on Jobbing!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,0,'Exodus',0)
End
IF (@EventID=19) and (@Kills = 1701 )
begin
Update RivalSHD.dbo._CharTrijob set Level = 29 where CharID = @CharID
set @veremos = @Charname + ' has been reached Level 29 Because Row Kills Is [1701] on Jobbing!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,0,'Exodus',0)
End
IF (@EventID=19) and (@Kills = 1801 )
begin
Update RivalSHD.dbo._CharTrijob set Level = 30 where CharID = @CharID
set @veremos = @Charname + ' has been reached Level 30 Because Row Kills Is [1801] on Jobbing!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,0,'Exodus',0)
End
IF (@EventID=19) and (@Kills = 1901 )
begin
Update RivalSHD.dbo._CharTrijob set Level = 31 where CharID = @CharID
set @veremos = @Charname + ' has been reached Level 31 Because Row Kills Is [1901] on Jobbing!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,0,'Exodus',0)
End
IF (@EventID=19) and (@Kills = 2001 )
begin
Update RivalSHD.dbo._CharTrijob set Level = 32 where CharID = @CharID
set @veremos = @Charname + ' has been reached Level 32 Because Row Kills Is [2001] on Jobbing!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,0,'Exodus',0)
End
IF (@EventID=19) and (@Kills = 2101 )
begin
Update RivalSHD.dbo._CharTrijob set Level = 33 where CharID = @CharID
set @veremos = @Charname + ' has been reached Level 33 Because Row Kills Is [2101] on Jobbing!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,0,'Exodus',0)
End
IF (@EventID=19) and (@Kills = 2201 )
begin
Update RivalSHD.dbo._CharTrijob set Level = 34 where CharID = @CharID
set @veremos = @Charname + ' has been reached Level 34 Because Row Kills Is [2201] on Jobbing!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,0,'Exodus',0)
End
IF (@EventID=19) and (@Kills = 2301 )
begin
Update RivalSHD.dbo._CharTrijob set Level = 35 where CharID = @CharID
set @veremos = @Charname + ' has been reached Level 35 Because Row Kills Is [2301] on Jobbing!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,0,'Exodus',0)
End
IF (@EventID=19) and (@Kills = 2401 )
begin
Update RivalSHD.dbo._CharTrijob set Level = 36 where CharID = @CharID
set @veremos = @Charname + ' has been reached Level 36 Because Row Kills Is [2401] on Jobbing!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,0,'Exodus',0)
End
IF (@EventID=19) and (@Kills = 2501 )
begin
Update RivalSHD.dbo._CharTrijob set Level = 37 where CharID = @CharID
set @veremos = @Charname + ' has been reached Level 37 Because Row Kills Is [2501] on Jobbing!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,0,'Exodus',0)
End
IF (@EventID=19) and (@Kills = 2601 )
begin
Update RivalSHD.dbo._CharTrijob set Level = 38 where CharID = @CharID
set @veremos = @Charname + ' has been reached Level 38 Because Row Kills Is [2601] on Jobbing!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,0,'Exodus',0)
End
IF (@EventID=19) and (@Kills = 2701 )
begin
Update RivalSHD.dbo._CharTrijob set Level = 39 where CharID = @CharID
set @veremos = @Charname + ' has been reached Level 39 Because Row Kills Is [2701] on Jobbing!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,0,'Exodus',0)
End
if (@Kills >2850)
begin
Update RivalSHD.dbo._CharTrijob set Level = 40 where CharID = @CharID -- Currently the highest level
set @veremos = @Charname + ' has been reached Level 40 Highest Level Because Row Kills Is [2850] on Jobbing!'
INSERT INTO RivalSHD.._SQLBotConfig (Type,Content,Target,Executor,Notified) VALUES
(6,@veremos,0,'Exodus',0)
End
--Hnonr BufF
if @EventID = '19' -- Count kills
DECLARE
@maxkills int,
@onekills int
set @onekills = (select COUNT(*) FROM RivalLOG.dbo.JobRank WHERE KillerID = @CharID AND KilledID = @CharID)
set @maxkills = (select COUNT(*) FROM RivalLOG.dbo.JobRank WHERE KillerID = @CharID)
DECLARE
@Kc1 int,
@K_Name1 VARCHAR(512) = @Desc
SELECT @K_Name1 = REPLACE(@K_Name1, LEFT(@K_Name1, CHARINDEX('(', @K_Name1)), '')
SELECT @K_Name1 = REPLACE(@K_Name1, RIGHT(@K_Name1, CHARINDEX(')', REVERSE(@K_Name1))), '')
----- Killed CharID
DECLARE @K_CharID1 INT =(SELECT CharID FROM [RivalSHD].[dbo].[_Char] WHERE CharName16 = @K_Name1)
------
-- Check if he kills the char more than 3 times
DECLARE @PKill1 int = (select COUNT(*) from RivalLOG..JobRank where KillerID = @CharID and KilledID = @K_CharID1)
DECLARE @MaxK1 int = (select COUNT(Kills) from RivalLOG..JobRank where KillerID = @CharID and Kills = '1')
if @EventID = '19'
BEGIN
INSERT INTO RivalLOG..JobRank (KillerID , KilledID , Kills) VALUES (@CharID , @K_CharID1,'1')
If (@onekills <= 1)
if (@maxkills <= 2850)
BEGIN
update RivalSHD.dbo._CharTrijob set KillCount=KillCount+1 where CharID=@CharID
--Insert char kills
DECLARE
@Rank TINYINT,
@Ranking INT
SET @Ranking = 1
IF @Ranking <= 5
BEGIN
SET @Rank = 1
END
ELSE IF @Ranking <= 15
BEGIN
SET @Rank = 2
END
ELSE IF @Ranking <= 30
BEGIN
SET @Rank = 3
END
ELSE
BEGIN
SET @Rank = 4
END
declare @CampID INT
set @CampID = (select campid from RivalSHD.dbo._TrainingCampMember where CharID=@CharID)
declare @id int
set @id=(Select id from RivalSHD.dbo._TrainingCamp where ID=@campid)
begin
EXEC RivalSHD.DBO._TRAINING_CAMP_CREATE @CharID
END
update RivalSHD.dbo._TrainingCampMember set HonorPoint=HonorPoint+1 where CharID=@CharID
update RivalSHD.dbo._TrainingCamp set EvaluationPoint=EvaluationPoint+1 where ID=@id
update RivalSHD.dbo._TrainingCamp set GraduateCount=GraduateCount+1 where ID=@id
begin
insert into RivalSHD.dbo._TrainingCampHonorRank (Ranking, CampID, Rank) Values (@RANKING, @CampID, @Rank)
eND
END
END
-- #########################################
-- WANTED NEW
-- DECLARE @CharLevel2 tinyint = (SELECT CurLevel from rivalshd.dbo._Char WHERE CharID = @CharID)
--IF (@EventID = 19 AND @Desc like '%My: Robber%' OR @EventID = 19 AND @Desc like '%My: Trader%' OR @EventID = 19 AND @Desc like '%My: Hunter%')
-- begin
-- EXEC JOBBING @CharID, @CharLevel2, @Desc
-- end
-- #########################################
--JOB COINS
-- Trade Gold Coins + Anti Cheat
if @EventID = '6' and exists (Select * from rivalshd.dbo._CharTrijob where CharID = @CharID AND Contribution >= '14318688' )
begin Exec [dbo].[_JobCoins] @charid , @eventid
end
-- Contri Save
if (@EventID= '4') begin Exec [_Contribt] @charid end
-- ########################################
--
--Declares first,
DECLARE
@Masterame0 varchar(50) = (select CharID from rivalshd.dbo._Char where CharID in (select Charid from rivalshd.dbo._GuildMember where GuildID in (select GuildID from rivalshd.dbo._SiegeFortress) and MemberClass = '0' and Permission = '-1' and SiegeAuthority = '1')),
@checkit int = (select JobID from rivalshd.dbo._TimedJob where JobID = '70004' and CharID not in (select Charid from rivalshd.dbo._GuildMember where GuildID in (select GuildID from rivalshd.dbo._SiegeFortress) and MemberClass = '0' and Permission = '-1' and SiegeAuthority = '1')),
@checkithwan int = (select Charid from rivalshd.dbo._Char where HwanLevel = '113' and CharID not in (select Charid from rivalshd.dbo._GuildMember where GuildID in (select GuildID from rivalshd.dbo._SiegeFortress) and MemberClass = '0' and Permission = '-1' and SiegeAuthority = '1'))
if (@EventID=11)
OR (@EventID=9)
begin
exec SRO_VT_ERIUS.dbo._SpecialGReward @Masterame0,@checkit,@checkithwan
end
|
انت معدل فيه حاجة أو ضايف في حاجة ؟ ولاهو زي ماهو كده ؟!
لو هو زي ماهو اعمل الكويري اللي انا كاتبهولك
ولو معدل فيه حاجة
ضيف اللي انا عاملهولك و تحتيه الروسيدرات اللي انت عاملها
|