مشاهدة النسخة كاملة : مشكلة في دخول اللعبه
tarekelpop1
26-06-2017, 06:15 PM
لما باجي ادوس ستارت علشان اخش اللعبه كرااش من قبل مشوف المدينه ال هنزل فيها اصلا ودي صوره من Sr_SHARDManger
https://f.top4top.net/p_5422vodz1.jpg (https://up.top4top.net/)
™Ozoo-Eboda™
26-06-2017, 07:02 PM
اتأكد من ان المدينة اللي بتنزل فيها الكراكتر مفتوحة ..
تاني حاجة اتأكد من الايتم اللي بتنزل مع الشخصية ..ممكن يكون ايتم هو سبب الكراش ..
حل اخر..
حضرتك ممكن تستخدم الكويري دى ..
دى عبارة عن بروسيدور AddNewChar مكان اللي عندك
USE [SRO_VT_SHARD]
GO
/****** Object: StoredProcedure [dbo].[_AddNewChar] Script Date: 26/06/2017 06:00:18 م ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [dbo].[_AddNewChar]
@UserJID INT,
--@CharSlot INT,
@RefCharID INT,
@CharName varchar (64),
@CharScale tinyINT,
@StartRegionID INT,
@StartPos_X real,
@StartPos_Y real,
@StartPos_Z real,
@DefaultTeleport INT,
@RefMailID INT,
@RefPantsID INT,
@RefBootsID INT,
@RefWeaponID INT,
@RefShield INT,
@DurMail tinyINT,
@DurPants tinyINT,
@DurBoots tinyINT,
@DurWeapon tinyINT,
@DurShield tinyINT,
@DefaultArrow INT
AS
SET NOCOUNT ON
DECLARE @Slot INT
DECLARE @temp INT
DECLARE @NewCharID INT
SET @NewCharID = 0
-----------------------------------------------------------------------------
-- 1. أ„³¸¯أ…أچ ½½·أ” ³أ‘¹أ¶°آ، validأ‡أ‘ °أچأ€أژأپأ¶, ±×¸®°أ* آ؛أ³½½·أ”أ€أŒ ¸أ‚´أ‚أپأ¶ ¸أ•أ€أ؛ أƒ¼أ…©أ‡أ‘´أ™.
-----------------------------------------------------------------------------
-- start by novice.
SELECT @temp = count(CharID) FROM _User WITH (NOLOCK) WHERE UserJID = @UserJID
IF (@temp >= 4)
BEGIN
-- ³أٹ¹« ¸¹أ€أڑ³آھ
RETURN -2
END
-- finish by novice.
-----------------------------------------------------------------------------
-- 2. أ„³¸¯أ…أچ أƒأں°آ،أ‡أڈ±â
-----------------------------------------------------------------------------
IF (@CharScale > 68) -- 0100 0100 --> 68 أ€أŒ´أ™!
BEGIN
-- أ„³¸¯أ…أچ »أ½¼آ؛ ½أ‡أ†أگ! ½آ؛أ„أ‰أ€أڈ °آھأ€أŒ أ€أŒ»أ³أ‡أڈ´أ™!
RETURN -3
END
EXEC @temp = _IsExistingCharName @CharName
IF (@temp <> 0)
BEGIN
-- أ€أŒ¹أŒ »çآ؟ëأپأںأ€أژ أ€أŒ¸§أ€أŒ¶أ³´أ‚µ¥?
RETURN -4
END
BEGIN TRANSACTION
-- أ€أژ´أ¸½أƒ½آ؛أ…أ›أ€أŒ أ€ûآ؟ëµأ‡¸é¼* ¸¶أپأ¶¸·آ؟آ، WorldIDآ؟أچ 1°آھأ€» ´أµ ³أ–¾î أپأ–¾أ؛´أ™!
INSERT INTO _Char (RefObjID, CharName16, Scale, Strength, Intellect, LatestRegion,PosX, PosY, PosZ, AppointedTeleport, InventorySize,
LastLogout, CurLevel, MaxLevel, RemainGold, RemainStatPoint, RemainSkillPoint, HP, MP, JobLvl_Trader, JobLvl_Hunter, JobLvl_Robber, WorldID)
VALUES (@RefCharID, @CharName, @CharScale, 20, 20, @StartRegionID, @StartPos_X, @StartPos_Y, @StartPos_Z, @DefaultTeleport, 45,
GetDate(), 1, 1, 0, 0, 0, 200,200, 1, 1, 1, 1)
SET @NewCharID = @@IDENTITY
IF (@@ERROR <> 0 OR @@ROWCOUNT = 0)
BEGIN
-- أ„³¸¯أ…أچ »أ½¼آ؛ ½أ‡أ†أگ!
ROLLBACK TRANSACTION
RETURN -5
END
-- start by novice.
-- أ€أŒأپ¦ Slot ¾أˆ¾´´أ™.. ±×³أ‰ Insert ¸¸..
INSERT INTO _User VALUES (@UserJID, @NewCharID)
-- finish by novice.
-----------------------------------------------------------------------------
-- 3-1. أ€أ¥آ؛أ± ½½·أ” أƒ¤آ؟أ¬±â
-- [أ€أژآ؛¥أ…أ¤¸® ½½·أ” 96°³] + [أ€أ¥آ؛أ±½½·أ” 13°³] <- أ€أژآ؛¥أ…أ¤¸® أˆ®أ€أ¥ ¼*آ؛أ±½آ؛ أˆأ„ 48°³آ؟آ،¼* 96°³·أژ أپأµ°آ،!!!(woos0)
-----------------------------------------------------------------------------
--PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!
INSERT INTO _Inventory(CharID, Slot, ItemID)
SELECT @NewCharID, cnt, 0
FROM _RefDummySlot with( nolock )
WHERE cnt < 109
IF (@@ERROR <> 0)
BEGIN
-- أ€أژآ؛¥أ…أ¤¸® »أ½¼آ؛ ½أ‡أ†أگ!
ROLLBACK TRANSACTION
RETURN -7
END
--PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!
-- µأ°أ†أ؛أ†®·أژ ¼±أ…أƒأ‡أ‘ ¾أ†أ€أŒأ…أ›أ€» ´أ™½أƒ ³أ–¾îأپأ–أ€أڑ...
/* آ؟أ¤·± ¼أ¸¼*·أژ أپ¤أ€أ‡µأ‡¾î أ€أ–´أ™.
0: EQUIP_SLOT_HELM
1: EQUIP_SLOT_MAIL,
2: EQUIP_SLOT_SHOULDERGUARD,
3: EQUIP_SLOT_GAUNTLET,
4: EQUIP_SLOT_PANTS,
5: EQUIP_SLOT_BOOTS,
6: EQUIP_SLOT_WEAPON,
7: EQUIP_SLOT_SHIELD or ARROW,
8: EQUIP_SLOT_EARRING,
9: EQUIP_SLOT_NECKLACE,
10: EQUIP_SLOT_L_RING,
11: EQUIP_SLOT_R_RING,
*/
DECLARE @ItemID BIGINT
SET @ItemID = 0
-- »أ³°©
IF (@RefMailID <> 0)
BEGIN
EXEC @ItemID = _FN_ADD_INITIAL_EQUIP @NewCharID, 1, @RefMailID, @DurMail
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -8
END
END
-- ¹أ™أپأ¶
IF (@RefPantsID <> 0)
BEGIN
EXEC @ItemID = _FN_ADD_INITIAL_EQUIP @NewCharID, 4, @RefPantsID, @DurPants
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -9
END
END
-- Boots
IF (@RefBootsID <> 0)
BEGIN
EXEC @ItemID = _FN_ADD_INITIAL_EQUIP @NewCharID, 5, @RefBootsID, @DurBoots
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -10
END
END
-- Weapon
IF (@RefWeaponID <> 0)
BEGIN
EXEC @ItemID = _FN_ADD_INITIAL_EQUIP @NewCharID, 6, @RefWeaponID, @DurWeapon
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -11
END
END
-- ¹أ¦أ†أگ
IF (@RefShield <> 0)
BEGIN
EXEC @ItemID = _FN_ADD_INITIAL_EQUIP @NewCharID, 7, @RefShield, @DurShield
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -12
END
END
-- أˆ¤½أƒ default·أژ ¼±أ…أƒأ‡أ‘ ¹«±â°آ، أˆ°أ€أŒ¶أ³¸é أˆ*»أ¬ 250°³µéأ€أŒ أˆ°أ…ëµµ أ‡أ”²² أپأک´أ™. أپأ’أ„آ،?
IF (@DefaultArrow <> 0)
BEGIN
EXEC @ItemID = _FN_ADD_INITIAL_EQUIP @NewCharID, 7, @DefaultArrow, 250
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -13
END
END
-----------------------------------------------------------------------------
-- 3-2. ¾أ†¹أ™أ…¸ Inventory ½½·أ” أƒ¤آ؟أ¬±â
-- [¾أ†¹أ™أ…¸ أ€أژآ؛¥أ…أ¤¸® ½½·أ” 5°³]
-- APPLY_AVATAR_SYSTEMأ€أŒ أ€ûآ؟ëµأ‡¸é¼* أƒأں°آ،µأ‡´أ‚ آ؛أژآ؛أگ
-----------------------------------------------------------------------------
--PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!
INSERT INTO _InventoryForAvatar(CharID, Slot, ItemID)
SELECT @NewCharID, cnt, 0
FROM _RefDummySlot with( nolock )
WHERE cnt < 5
IF (@@ERROR <> 0)
BEGIN
-- ¾أ†¹أ™أ…¸ أ€أژآ؛¥أ…أ¤¸® »أ½¼آ؛ ½أ‡أ†أگ!
ROLLBACK TRANSACTION
RETURN -14
END
--PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!
-----------------------------------------------------------------------------
-- default skill³أ–¾îأپأ–±â
-----------------------------------------------------------------------------
DECLARE @country tinyINT
EXEC @country = _GetObjCountry @RefCharID
INSERT INTO _CharSkillMastery (CharID, MasteryID, Level)
SELECT @NewCharID, MasteryID, 0
FROM _RefCharDefault_SkillMastery with(nolock)
WHERE Race = @country or Race = 3
IF (@@error <> 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -15
END
INSERT INTO _CharSkill (CharID,SkillID,Enable)
SELECT @NewCharID, SkillID, 1
FROM _RefCharDefault_Skill with(nolock)
WHERE Race = @country or Race = 3
IF (@@error <> 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -16
END
-----------------------------------------------------------------------------
-- ±âآ؛» أ„ù½آ؛أ†® ³أ–¾îأپأ–±â
-----------------------------------------------------------------------------
INSERT INTO _CharQuest (CharID, QuestID, Status, AchievementCount, StartTime, EndTime, QuestData1, QuestData2)
SELECT @NewCharID, ID, 1, 0, getdate(), getdate(), 0, 0
FROM _RefQuest
WHERE CodeName in (SELECT CodeName FROM _RefCharDefault_Quest with(nolock) WHERE (Race = @country or Race = 3) and RequiredLevel = 1 and Service = 1)
IF (@@error <> 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -17
END
-----------------------------------------------------------------------------
-- Static Avatar Initial Record ³أ–±â
-----------------------------------------------------------------------------
INSERT INTO _StaticAvatar(CharID) values(@NewCharID)
IF (@@ERROR <> 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -18
END
-----------------------------------------------------------------------------
-- Trijob أƒ¤آ؟أ¶³أ–±â!!!!!
-----------------------------------------------------------------------------
INSERT INTO _CharTrijob VALUES (@NewCharID, 0, 1, 0, 0, 0)
IF (@@ERROR <> 0)
BEGIN
-- أ€أژآ؛¥أ…أ¤¸® »أ½¼آ؛ ½أ‡أ†أگ!
ROLLBACK TRANSACTION
RETURN -19
END
-----------------------------------------------------------------------------
-- CharListآ؟آ، ID ³أ–¾îأپأ–±â
-----------------------------------------------------------------------------
INSERT _CharNameList VALUES(@CharName, @NewCharID)
exec _ADD_ITEM_EXTERN @CharName,'ITEM_ETC_E060118_60EXP_HELP',1,1
exec _ADD_ITEM_EXTERN @CharName,'ITEM_ETC_E060118_100EXP_HELP',1,1
exec _ADD_ITEM_EXTERN @CharName,'ITEM_ETC_SCROLL_RETURN_NEWBIE_01',20,1
-- Quick Slot أپ¤آ؛¸ أ€أ؛أ€أ¥آ؟ë!!!
exec _AddNewClientConfig @NewCharID -- by novice...... for saving client configurations...
COMMIT TRANSACTION
RETURN @NewCharID
..
و اتأكد انك ضايف الداتا الخاصه بالسيرفر مع ملفات تشغيل السيرفر ...بالتوفيق
tarekelpop1
26-06-2017, 07:12 PM
اتأكد من ان المدينة اللي بتنزل فيها الكراكتر مفتوحة ..
تاني حاجة اتأكد من الايتم اللي بتنزل مع الشخصية ..ممكن يكون ايتم هو سبب الكراش ..
حل اخر..
حضرتك ممكن تستخدم الكويري دى ..
دى عبارة عن بروسيدور AddNewChar مكان اللي عندك
USE [SRO_VT_SHARD]
GO
/****** Object: StoredProcedure [dbo].[_AddNewChar] Script Date: 26/06/2017 06:00:18 م ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [dbo].[_AddNewChar]
@UserJID INT,
--@CharSlot INT,
@RefCharID INT,
@CharName varchar (64),
@CharScale tinyINT,
@StartRegionID INT,
@StartPos_X real,
@StartPos_Y real,
@StartPos_Z real,
@DefaultTeleport INT,
@RefMailID INT,
@RefPantsID INT,
@RefBootsID INT,
@RefWeaponID INT,
@RefShield INT,
@DurMail tinyINT,
@DurPants tinyINT,
@DurBoots tinyINT,
@DurWeapon tinyINT,
@DurShield tinyINT,
@DefaultArrow INT
AS
SET NOCOUNT ON
DECLARE @Slot INT
DECLARE @temp INT
DECLARE @NewCharID INT
SET @NewCharID = 0
-----------------------------------------------------------------------------
-- 1. أ„³¸¯أ…أچ ½½·أ” ³أ‘¹أ¶°آ، validأ‡أ‘ °أچأ€أژأپأ¶, ±×¸®°أ* آ؛أ³½½·أ”أ€أŒ ¸أ‚´أ‚أپأ¶ ¸أ•أ€أ؛ أƒ¼أ…©أ‡أ‘´أ™.
-----------------------------------------------------------------------------
-- start by novice.
SELECT @temp = count(CharID) FROM _User WITH (NOLOCK) WHERE UserJID = @UserJID
IF (@temp >= 4)
BEGIN
-- ³أٹ¹« ¸¹أ€أڑ³آھ
RETURN -2
END
-- finish by novice.
-----------------------------------------------------------------------------
-- 2. أ„³¸¯أ…أچ أƒأں°آ،أ‡أڈ±â
-----------------------------------------------------------------------------
IF (@CharScale > 68) -- 0100 0100 --> 68 أ€أŒ´أ™!
BEGIN
-- أ„³¸¯أ…أچ »أ½¼آ؛ ½أ‡أ†أگ! ½آ؛أ„أ‰أ€أڈ °آھأ€أŒ أ€أŒ»أ³أ‡أڈ´أ™!
RETURN -3
END
EXEC @temp = _IsExistingCharName @CharName
IF (@temp <> 0)
BEGIN
-- أ€أŒ¹أŒ »çآ؟ëأپأںأ€أژ أ€أŒ¸§أ€أŒ¶أ³´أ‚µ¥?
RETURN -4
END
BEGIN TRANSACTION
-- أ€أژ´أ¸½أƒ½آ؛أ…أ›أ€أŒ أ€ûآ؟ëµأ‡¸é¼* ¸¶أپأ¶¸·آ؟آ، WorldIDآ؟أچ 1°آھأ€» ´أµ ³أ–¾î أپأ–¾أ؛´أ™!
INSERT INTO _Char (RefObjID, CharName16, Scale, Strength, Intellect, LatestRegion,PosX, PosY, PosZ, AppointedTeleport, InventorySize,
LastLogout, CurLevel, MaxLevel, RemainGold, RemainStatPoint, RemainSkillPoint, HP, MP, JobLvl_Trader, JobLvl_Hunter, JobLvl_Robber, WorldID)
VALUES (@RefCharID, @CharName, @CharScale, 20, 20, @StartRegionID, @StartPos_X, @StartPos_Y, @StartPos_Z, @DefaultTeleport, 45,
GetDate(), 1, 1, 0, 0, 0, 200,200, 1, 1, 1, 1)
SET @NewCharID = @@IDENTITY
IF (@@ERROR <> 0 OR @@ROWCOUNT = 0)
BEGIN
-- أ„³¸¯أ…أچ »أ½¼آ؛ ½أ‡أ†أگ!
ROLLBACK TRANSACTION
RETURN -5
END
-- start by novice.
-- أ€أŒأپ¦ Slot ¾أˆ¾´´أ™.. ±×³أ‰ Insert ¸¸..
INSERT INTO _User VALUES (@UserJID, @NewCharID)
-- finish by novice.
-----------------------------------------------------------------------------
-- 3-1. أ€أ¥آ؛أ± ½½·أ” أƒ¤آ؟أ¬±â
-- [أ€أژآ؛¥أ…أ¤¸® ½½·أ” 96°³] + [أ€أ¥آ؛أ±½½·أ” 13°³] <- أ€أژآ؛¥أ…أ¤¸® أˆ®أ€أ¥ ¼*آ؛أ±½آ؛ أˆأ„ 48°³آ؟آ،¼* 96°³·أژ أپأµ°آ،!!!(woos0)
-----------------------------------------------------------------------------
--PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!
INSERT INTO _Inventory(CharID, Slot, ItemID)
SELECT @NewCharID, cnt, 0
FROM _RefDummySlot with( nolock )
WHERE cnt < 109
IF (@@ERROR <> 0)
BEGIN
-- أ€أژآ؛¥أ…أ¤¸® »أ½¼آ؛ ½أ‡أ†أگ!
ROLLBACK TRANSACTION
RETURN -7
END
--PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!
-- µأ°أ†أ؛أ†®·أژ ¼±أ…أƒأ‡أ‘ ¾أ†أ€أŒأ…أ›أ€» ´أ™½أƒ ³أ–¾îأپأ–أ€أڑ...
/* آ؟أ¤·± ¼أ¸¼*·أژ أپ¤أ€أ‡µأ‡¾î أ€أ–´أ™.
0: EQUIP_SLOT_HELM
1: EQUIP_SLOT_MAIL,
2: EQUIP_SLOT_SHOULDERGUARD,
3: EQUIP_SLOT_GAUNTLET,
4: EQUIP_SLOT_PANTS,
5: EQUIP_SLOT_BOOTS,
6: EQUIP_SLOT_WEAPON,
7: EQUIP_SLOT_SHIELD or ARROW,
8: EQUIP_SLOT_EARRING,
9: EQUIP_SLOT_NECKLACE,
10: EQUIP_SLOT_L_RING,
11: EQUIP_SLOT_R_RING,
*/
DECLARE @ItemID BIGINT
SET @ItemID = 0
-- »أ³°©
IF (@RefMailID <> 0)
BEGIN
EXEC @ItemID = _FN_ADD_INITIAL_EQUIP @NewCharID, 1, @RefMailID, @DurMail
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -8
END
END
-- ¹أ™أپأ¶
IF (@RefPantsID <> 0)
BEGIN
EXEC @ItemID = _FN_ADD_INITIAL_EQUIP @NewCharID, 4, @RefPantsID, @DurPants
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -9
END
END
-- Boots
IF (@RefBootsID <> 0)
BEGIN
EXEC @ItemID = _FN_ADD_INITIAL_EQUIP @NewCharID, 5, @RefBootsID, @DurBoots
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -10
END
END
-- Weapon
IF (@RefWeaponID <> 0)
BEGIN
EXEC @ItemID = _FN_ADD_INITIAL_EQUIP @NewCharID, 6, @RefWeaponID, @DurWeapon
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -11
END
END
-- ¹أ¦أ†أگ
IF (@RefShield <> 0)
BEGIN
EXEC @ItemID = _FN_ADD_INITIAL_EQUIP @NewCharID, 7, @RefShield, @DurShield
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -12
END
END
-- أˆ¤½أƒ default·أژ ¼±أ…أƒأ‡أ‘ ¹«±â°آ، أˆ°أ€أŒ¶أ³¸é أˆ*»أ¬ 250°³µéأ€أŒ أˆ°أ…ëµµ أ‡أ”²² أپأک´أ™. أپأ’أ„آ،?
IF (@DefaultArrow <> 0)
BEGIN
EXEC @ItemID = _FN_ADD_INITIAL_EQUIP @NewCharID, 7, @DefaultArrow, 250
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -13
END
END
-----------------------------------------------------------------------------
-- 3-2. ¾أ†¹أ™أ…¸ Inventory ½½·أ” أƒ¤آ؟أ¬±â
-- [¾أ†¹أ™أ…¸ أ€أژآ؛¥أ…أ¤¸® ½½·أ” 5°³]
-- APPLY_AVATAR_SYSTEMأ€أŒ أ€ûآ؟ëµأ‡¸é¼* أƒأں°آ،µأ‡´أ‚ آ؛أژآ؛أگ
-----------------------------------------------------------------------------
--PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!
INSERT INTO _InventoryForAvatar(CharID, Slot, ItemID)
SELECT @NewCharID, cnt, 0
FROM _RefDummySlot with( nolock )
WHERE cnt < 5
IF (@@ERROR <> 0)
BEGIN
-- ¾أ†¹أ™أ…¸ أ€أژآ؛¥أ…أ¤¸® »أ½¼آ؛ ½أ‡أ†أگ!
ROLLBACK TRANSACTION
RETURN -14
END
--PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!
-----------------------------------------------------------------------------
-- default skill³أ–¾îأپأ–±â
-----------------------------------------------------------------------------
DECLARE @country tinyINT
EXEC @country = _GetObjCountry @RefCharID
INSERT INTO _CharSkillMastery (CharID, MasteryID, Level)
SELECT @NewCharID, MasteryID, 0
FROM _RefCharDefault_SkillMastery with(nolock)
WHERE Race = @country or Race = 3
IF (@@error <> 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -15
END
INSERT INTO _CharSkill (CharID,SkillID,Enable)
SELECT @NewCharID, SkillID, 1
FROM _RefCharDefault_Skill with(nolock)
WHERE Race = @country or Race = 3
IF (@@error <> 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -16
END
-----------------------------------------------------------------------------
-- ±âآ؛» أ„ù½آ؛أ†® ³أ–¾îأپأ–±â
-----------------------------------------------------------------------------
INSERT INTO _CharQuest (CharID, QuestID, Status, AchievementCount, StartTime, EndTime, QuestData1, QuestData2)
SELECT @NewCharID, ID, 1, 0, getdate(), getdate(), 0, 0
FROM _RefQuest
WHERE CodeName in (SELECT CodeName FROM _RefCharDefault_Quest with(nolock) WHERE (Race = @country or Race = 3) and RequiredLevel = 1 and Service = 1)
IF (@@error <> 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -17
END
-----------------------------------------------------------------------------
-- Static Avatar Initial Record ³أ–±â
-----------------------------------------------------------------------------
INSERT INTO _StaticAvatar(CharID) values(@NewCharID)
IF (@@ERROR <> 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -18
END
-----------------------------------------------------------------------------
-- Trijob أƒ¤آ؟أ¶³أ–±â!!!!!
-----------------------------------------------------------------------------
INSERT INTO _CharTrijob VALUES (@NewCharID, 0, 1, 0, 0, 0)
IF (@@ERROR <> 0)
BEGIN
-- أ€أژآ؛¥أ…أ¤¸® »أ½¼آ؛ ½أ‡أ†أگ!
ROLLBACK TRANSACTION
RETURN -19
END
-----------------------------------------------------------------------------
-- CharListآ؟آ، ID ³أ–¾îأپأ–±â
-----------------------------------------------------------------------------
INSERT _CharNameList VALUES(@CharName, @NewCharID)
exec _ADD_ITEM_EXTERN @CharName,'ITEM_ETC_E060118_60EXP_HELP',1,1
exec _ADD_ITEM_EXTERN @CharName,'ITEM_ETC_E060118_100EXP_HELP',1,1
exec _ADD_ITEM_EXTERN @CharName,'ITEM_ETC_SCROLL_RETURN_NEWBIE_01',20,1
-- Quick Slot أپ¤آ؛¸ أ€أ؛أ€أ¥آ؟ë!!!
exec _AddNewClientConfig @NewCharID -- by novice...... for saving client configurations...
COMMIT TRANSACTION
RETURN @NewCharID
..
و اتأكد انك ضايف الداتا الخاصه بالسيرفر مع ملفات تشغيل السيرفر ...بالتوفيق
شكرا لردك ال بينزل مع الاكونت حجات عاديه مستحيل تجيب كراش او مش تكون موجوده في السيرفر
والمدينه مفتوح انا اصلا نقلت كل الاكونتات لجنجان
والداتا انا ضيفها في ملفات السيرفر
™Ozoo-Eboda™
26-06-2017, 07:20 PM
شكرا لردك ال بينزل مع الاكونت حجات عاديه مستحيل تجيب كراش او مش تكون موجوده في السيرفر
والمدينه مفتوح انا اصلا نقلت كل الاكونتات لجنجان
والداتا انا ضيفها في ملفات السيرفر
تمام..
استخدم الكويري دى و هتتحل انشاءالله
MORJANA
27-06-2017, 11:03 AM
المشكلة في البروسيدر بتاع الـ AddLogChar مش في الـ AddNewchar:nono2:
أتفضل أستخدم الكويري ده و إن شاء الله تشتغل تمام :mexicano:
USE [SRO_VT_SHARDLOG]
GO
/****** Object: StoredProcedure [dbo].[_AddLogChar] Script Date: 27/6/2017 10:00:10 AM ******/
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 @len_pos int
declare @len_desc int
set @len_pos = len(@strPos)
set @len_desc = len(@Desc)
if (@len_pos > 0 and @len_desc > 0)
begin
insert _LogEventChar 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) values(@CharID, GetDate(), @EventID, @Data1, @Data2, @strPos)
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
tarekelpop1
27-06-2017, 11:06 AM
ده ال Addlogchar ال عندي
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,1 29,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,2 4438,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
MORJANA
27-06-2017, 11:26 AM
ده ال Addlogchar ال عندي
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,1 29,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,2 4438,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
انت معدل فيه حاجة أو ضايف في حاجة ؟ ولاهو زي ماهو كده ؟!
لو هو زي ماهو اعمل الكويري اللي انا كاتبهولك
ولو معدل فيه حاجة
ضيف اللي انا عاملهولك و تحتيه الروسيدرات اللي انت عاملها
ahmedbadrbedo
27-06-2017, 11:41 AM
يا باشا غير الsilkroad.exe+sro_clinet.exe وهتشتغل معاك علشان مفيش مشكله فى addlogchar او addnewchar :gun_bandana:
tarekelpop1
27-06-2017, 11:44 AM
انت معدل فيه حاجة أو ضايف في حاجة ؟ ولاهو زي ماهو كده ؟!
لو هو زي ماهو اعمل الكويري اللي انا كاتبهولك
ولو معدل فيه حاجة
ضيف اللي انا عاملهولك و تحتيه الروسيدرات اللي انت عاملها
شكرا لهتمامك لا انا مش معدل فيه هوا كده وانا فعلا جربت الكيوري بتاعتك ومكتبليش كدا في الشرد بس بردو كراش اول ما بدوس استارت
tarekelpop1
27-06-2017, 11:45 AM
يا باشا غير الsilkroad.exe+sro_clinet.exe وهتشتغل معاك علشان مفيش مشكله فى addlogchar او addnewchar :gun_bandana:
ازاي حضرتك وال silkroad.exe+sro_clinet.exe بتوع اللعبه
ahmedbadrbedo
27-06-2017, 11:51 AM
ازاي حضرتك وال silkroad.exe+sro_clinet.exe بتوع اللعبه
باشا انتا شغال على erius-sro وانا مجرب قبلك كمان هتلقى ال.exe الى شغال فى ملف الsetting أو ملف تانى مش فاكر جرب وعيش
tarekelpop1
27-06-2017, 12:03 PM
باشا انتا شغال على erius-sro وانا مجرب قبلك كمان هتلقى ال.exe الى شغال فى ملف الsetting أو ملف تانى مش فاكر جرب وعيش
شكرا لهتمامك بس مفيش ملفات .exe لو انت ممكن ترفعها ابقي مشكور ليك جدا
ahmedbadrbedo
27-06-2017, 12:25 PM
شكرا لهتمامك بس مفيش ملفات .exe لو انت ممكن ترفعها ابقي مشكور ليك جدا
اتفضل
https://mega.nz/#!AzJ2XTYQ!eKB9n69TN1RAaRfpWjHaEfrOPpN4CjxLl64LFVF lriI
maro20009
27-06-2017, 01:29 PM
انا المشكله ديه كانت عندى والاستاذ ozoo حل لى المشكله ديه هيا كانت انى واخد داتا غير الكلينت وكانت شغاله مع ال server files بس مكنتش شغاله على ال client فغيرت ال data لل data بتاعت الكلنت فظهرت مشكله تانيه انى لازم احمل ال server files بتاعت اللعبه, فانت اتكد انك معاك ال data و ال client وال server files جيبهم من موضوع واحد.
tarekelpop1
27-06-2017, 01:38 PM
انا المشكله ديه كانت عندى والاستاذ ozoo حل لى المشكله ديه هيا كانت انى واخد داتا غير الكلينت وكانت شغاله مع ال server files بس مكنتش شغاله على ال client فغيرت ال data لل data بتاعت الكلنت فظهرت مشكله تانيه انى لازم احمل ال server files بتاعت اللعبه, فانت اتكد انك معاك ال data و ال client وال server files جيبهم من موضوع واحد.
لا طبعا الحجات دي كلها انا عارفها وشكرا لردك
MookaVip
12-07-2017, 10:51 PM
ممكن يكون حضرتك معدلتش علي Files في ملف wwwroot
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions, Inc