|
• الانـتـسـاب » Jun 2012
|
• رقـم العـضـويـة » 101664
|
• المشـــاركـات » 279
|
• الـدولـة » Giza
|
• الـهـوايـة »
|
• اسـم الـسـيـرفـر » Fornax
|
• الـجـنـس » Male
|
• نقـاط التقييم » 18
|
|
|
رد: مشكله في wanted system
اقتباس:
المشاركة الأصلية كتبت بواسطة Mahmoud Rashwan
عفوا ,,, لايمكنك مشاهده الروابط لانك غير مسجل لدينا [ للتسجيل اضغط هنا ]
جرب كدا الـ producer دول
SRO_VT_SHARD
كود PHP:
USE [SRO_VT_SHARDLOG]
GO
/****** Object: StoredProcedure [dbo].[_Wanted] Script Date: 9/12/2014 6:25:37 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE procedure [dbo].[_Wanted] @CharID int, @eventID tinyint, @desc varchar(128)
as
Declare @Kc int
Declare @CharName VARCHAR(52) = (SELECT CharName16 FROM SRO_VT_SHARD.dbo._Char WHERE CharID = @CharID)
DECLARE @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 [SRO_VT_SHARD].[dbo].[_Char] WHERE CharName16 = @K_Name)
------
-- Check if he kills the char more than 3 times
DECLARE @PKill int = (select COUNT(*) from _RowKills where KillerID = @CharID and KilledID = @K_CharID)
DECLARE @MaxK int = (select COUNT(Kills) from _RowKills where KillerID = @CharID and Kills = '1')
IF ( @PKill <= '9' and @MaxK <= '50' )
BEGIN
INSERT INTO _RowKills (KillerID , KilledID , Kills) VALUES @CharID , @K_CharID,'1')
END
----- End inserting
SET @Kc = (SELECT COUNT(Kills) FROM _RowKills WHERE KillerID = @CharID and Kills = '1' )--and Recived = 'OFF')
--- if he kills 10 in row give him the buff -- give Wanted level 1
IF @Kc = '10' AND NOT EXISTS (SELECT * FROM SRO_VT_SHARD.dbo._TimedJob where CharID = @CharID and JobID between '34243' and '34247')
BEGIN
INSERT INTO SRO_VT_SHARD.dbo._TimedJob (CharID ,Category , JobID , TimeToKeep , Data1 , Data2 , Data3 , Data4 , Data5 , Data6, Data7 , Data8 , Serial64 , JID )
---- Values
VALUES @CharID , 0 , 34243 , 3600 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 72339069015696862 , 0 )
INSERT INTO SRO_VT_SHARDLOG.dbo.PlusNotice VALUES ('0', @CharName+' : is Wanted "Hero Mode - 10Kills in row [Wanted Lv1]"',GETDATE())
END
--- if he kills 20 in row give him the buff -- give Wanted level 2
IF @Kc = '20' AND NOT EXISTS (SELECT * FROM SRO_VT_SHARD.dbo._TimedJob where CharID = @CharID and JobID between '34244' and '34247')
BEGIN
INSERT INTO SRO_VT_SHARDLOG.dbo.PlusNotice VALUES ('0', @CharName+' : is Wanted "Hero Mode - 20Kills in row [Wanted Lv2]"',GETDATE())
IF EXISTS (SELECT * FROM SRO_VT_SHARD.dbo._TimedJob where CharID = @CharID and JobID = '34243')
BEGIN
DELETE FROM SRO_VT_SHARD.dbo._TimedJob where CharID = @CharID and JobID = '34243'
INSERT INTO SRO_VT_SHARD.dbo._TimedJob (CharID ,Category , JobID , TimeToKeep , Data1 , Data2 , Data3 , Data4 , Data5 , Data6, Data7 , Data8 , Serial64 , JID ) VALUES @CharID , 0 , 34244 , 3600 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 72339069015696862 , 0 )
END
ElSE IF NOT EXISTS (SELECT * FROM SRO_VT_SHARD.dbo._TimedJob where CharID = @CharID and JobID = '34243')
BEGIN
INSERT INTO SRO_VT_SHARD.dbo._TimedJob (CharID ,Category , JobID , TimeToKeep , Data1 , Data2 , Data3 , Data4 , Data5 , Data6, Data7 , Data8 , Serial64 , JID ) VALUES @CharID , 0 , 34244 , 3600 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 72339069015696862 , 0 )
END
END
--- if he kills 30 in row give him the buff -- give Wanted level 3
IF @Kc = '30' AND NOT EXISTS (SELECT * FROM SRO_VT_SHARD.dbo._TimedJob where CharID = @CharID and JobID between '34245' and '34247')
BEGIN
INSERT INTO SRO_VT_SHARDLOG.dbo.PlusNotice VALUES ('0', @CharName+' : is Wanted "Hero Mode - 30Kills in row [Wanted Lv3]"',GETDATE())
IF EXISTS (SELECT * FROM SRO_VT_SHARD.dbo._TimedJob where CharID = @CharID and JobID between'34243' and '34244')
BEGIN
DELETE FROM SRO_VT_SHARD.dbo._TimedJob where CharID = @CharID and JobID between'34243' and '34244'
INSERT INTO SRO_VT_SHARD.dbo._TimedJob (CharID ,Category , JobID , TimeToKeep , Data1 , Data2 , Data3 , Data4 , Data5 , Data6, Data7 , Data8 , Serial64 , JID ) VALUES @CharID , 0 , 34245 , 3600 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 72339069015696862 , 0 )
END
ElSE IF NOT EXISTS (SELECT * FROM SRO_VT_SHARD.dbo._TimedJob where CharID = @CharID and JobID between'34243' and '34244')
BEGIN
INSERT INTO SRO_VT_SHARD.dbo._TimedJob (CharID ,Category , JobID , TimeToKeep , Data1 , Data2 , Data3 , Data4 , Data5 , Data6, Data7 , Data8 , Serial64 , JID ) VALUES @CharID , 0 , 34245 , 3600 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 72339069015696862 , 0 )
END
END
--- if he kills 40 in row give him the buff -- give Wanted level 4
IF @Kc = '40' AND NOT EXISTS (SELECT * FROM SRO_VT_SHARD.dbo._TimedJob where CharID = @CharID and JobID between '34246' and '34247')
BEGIN
INSERT INTO SRO_VT_SHARDLOG.dbo.PlusNotice VALUES ('0', @CharName+' : is Wanted "Hero Mode - 40Kills in row [Wanted Lv4]"',GETDATE())
IF EXISTS (SELECT * FROM SRO_VT_SHARD.dbo._TimedJob where CharID = @CharID and JobID between '34243' and '34245')
BEGIN
DELETE FROM SRO_VT_SHARD.dbo._TimedJob where CharID = @CharID and JobID between '34243' and '34245'
INSERT INTO SRO_VT_SHARD.dbo._TimedJob (CharID ,Category , JobID , TimeToKeep , Data1 , Data2 , Data3 , Data4 , Data5 , Data6, Data7 , Data8 , Serial64 , JID ) VALUES @CharID , 0 , 34246 , 3600 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 72339069015696862 , 0 )
END
ElSE IF NOT EXISTS (SELECT * FROM SRO_VT_SHARD.dbo._TimedJob where CharID = @CharID and JobID between '34243' and '34245')
BEGIN
INSERT INTO SRO_VT_SHARD.dbo._TimedJob (CharID ,Category , JobID , TimeToKeep , Data1 , Data2 , Data3 , Data4 , Data5 , Data6, Data7 , Data8 , Serial64 , JID ) VALUES @CharID , 0 , 34246 , 3600 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 72339069015696862 , 0 )
END
END
--- if he kills 50 in row give him the buff -- give Wanted level 5
IF @Kc = '50' AND NOT EXISTS (SELECT * FROM SRO_VT_SHARD.dbo._TimedJob where CharID = @CharID and JobID = '34247')
BEGIN
INSERT INTO SRO_VT_SHARDLOG.dbo.PlusNotice VALUES ('0', @CharName+' : is Wanted "Hero Mode - 50Kills in row [Wanted Lv5]"',GETDATE())
DELETE FROM _RowKills WHERE KillerID = @CharID
IF EXISTS (SELECT * FROM SRO_VT_SHARD.dbo._TimedJob where CharID = @CharID and JobID between '34243' and '34246')
BEGIN
DELETE FROM SRO_VT_SHARD.dbo._TimedJob where CharID = @CharID and JobID between '34243' and '34246'
INSERT INTO SRO_VT_SHARD.dbo._TimedJob (CharID ,Category , JobID , TimeToKeep , Data1 , Data2 , Data3 , Data4 , Data5 , Data6, Data7 , Data8 , Serial64 , JID ) VALUES @CharID , 0 , 34247 , 3600 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 72339069015696862 , 0 )
END
ElSE IF NOT EXISTS (SELECT * FROM SRO_VT_SHARD.dbo._TimedJob where CharID = @CharID and JobID between '34243' and '34246')
BEGIN
INSERT INTO SRO_VT_SHARD.dbo._TimedJob (CharID ,Category , JobID , TimeToKeep , Data1 , Data2 , Data3 , Data4 , Data5 , Data6, Data7 , Data8 , Serial64 , JID ) VALUES @CharID , 0 , 34247 , 3600 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 72339069015696862 , 0 )
END
END
Create Table
كود PHP:
USE [SHARDLOG]
GO
/****** Object: Table [dbo].[_RowKills] Script Date: 09/13/2014 11:35:20 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [dbo].[_RowKills](
[ID] [int] IDENTITY(1,1) NOT NULL,
[KillerID] [int] NULL,
[KilledID] [varchar](50) NULL,
[Kills] [int] NULL,
CONSTRAINT [PK__RowKills] PRIMARY KEY CLUSTERED
(
[ID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
SET ANSI_PADDING OFF
GO
AddLogChar -> (SRO_VT_LOG -> Programmability -> Stored Procedures -> Right click on _AddLogChar and press on 'Modify')
كود PHP:
--- Wanted System
if @eventID = '19' -- Count kills
BEGIN
if (@strPos like '%(0x679a)%')
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 @killedName VARCHAR(512) = @desc
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 [SRO_VT_SHARD].[dbo].[_Char] WHERE CharName16 = @killedName
if @ReqLevel >= 90
BEGIN
Exec [_Wanted] @CharID , @eventID , @desc
End
END
END
END
if @eventID = '20' -- if dies
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 SRO_VT_SHARD.dbo._TimedJob WHERE CharID = @CharID AND JobID = '33862' or CharID = @CharID and JobID between '50021' and '50024')
BEGIN
DELETE FROM SRO_VT_SHARD.dbo._TimedJob WHERE CharID = @CharID and JobID = '33862' or CharID = @CharID and JobID between '50021' and '50024'
END
END
END
--------- End of wanted system
|
جربتهم و نفس المشكله لما thief بيموت hunter او العكس مفيش حاجه بتتسجل فال rowkills
|