المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : PVP Recorder Table


HB#
25-09-2017, 03:30 PM
https://upload.wikimedia.org/wikipedia/ar/c/c6/%D8%A8%D8%B3%D9%85_%D8%A7%D9%84%D9%84%D9%87_%D8%A7 %D9%84%D8%B1%D8%AD%D9%85%D9%86_%D8%A7%D9%84%D8%B1% D8%AD%D9%8A%D9%85.png

هو مش موضوع كبير بس ممكن يساعد ناس كتير ويسهل عليهم انهم يعملوا pvp rank في السايت بتاعهم فا حبيت اعملهم ال table دي ... الموضوع كله عباره عن table بتسجل ال pvp ال بيحصل .. table بيبقا فيها اسم الكاركتر وال ID بتاعه وعدد ال kills وعدد ال deaths في ال pvp ... نخش في الموضوع :

اولا : هنعمل ال table ال هتلاقي فيها اللوج بتاع الpvp :

USE [SRO_VT_SHARDLOG]
GO

/****** Object: Table [dbo].[_CharactersKillsRecord] Script Date: 9/25/2017 2:21:52 PM ******/
SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO

SET ANSI_PADDING ON
GO

CREATE TABLE [dbo].[_CharactersKillsRecord](
[CharName] [varchar](max) NOT NULL,
[CharID] [int] NOT NULL,
[Kills] [int] NOT NULL,
[Deaths] [int] NOT NULL
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]

GO

SET ANSI_PADDING OFF
GO




بعد كده هنخش في البروسيدور في المسار ده : SRO_VT_SHARDLOG >>> Programmability >> Stored Procedures >> _AddLogChar وتضيف الكلام دا :

--Characters kills table recorder , all credits goes to #HB
declare @LoserCharName varchar(max)
declare @WinnerCharName varchar(max)
declare @WinnerCharID varchar(max)
declare @TableCheckKiller varchar(max)
declare @TableCheckKilled varchar(max)
set @LoserCharName = (select CharName16 from [SRO_VT_SHARD].dbo._Char where CharID = @CharID)

IF (@EventID = 20)
begin
Select @Desc = REPLACE(@Desc, LEFT(@Desc, CHARINDEX('(', @Desc)),'')
Select @Desc = REPLACE(@Desc, RIGHT(@Desc, CHARINDEX(')', REVERSE(@Desc))),'')
set @WinnerCharName = @Desc
set @WinnerCharID = (select CharID from [SRO_VT_SHARD].dbo._Char where CharName16 = @WinnerCharName)
set @TableCheckKiller = (Select CharName from _CharactersKillsRecord where CharID = @WinnerCharID)
set @TableCheckKilled = (select CharName from _CharactersKillsRecord where CharID = @CharID)
IF (@TableCheckKiller is NULL) and (@TableCheckKilled is NULL)
begin
INSERT INTO _CharactersKillsRecord (CharName,CharID,Kills,Deaths) values (@WinnerCharName,@WinnerCharID,'1','0')
INSERT INTO _CharactersKillsRecord (CharName,CharID,Kills,Deaths) values (@LoserCharName,@CharID,'0','1')
end
delete from _LogEventChar where CharID = @CharID
end

IF (@EventID = 20)
begin
Select @Desc = REPLACE(@Desc, LEFT(@Desc, CHARINDEX('(', @Desc)),'')
Select @Desc = REPLACE(@Desc, RIGHT(@Desc, CHARINDEX(')', REVERSE(@Desc))),'')
set @WinnerCharName = @Desc
set @WinnerCharID = (select CharID from [SRO_VT_SHARD].dbo._Char where CharName16 = @WinnerCharName)
set @TableCheckKiller = (Select CharName from _CharactersKillsRecord where CharID = @WinnerCharID)
set @TableCheckKilled = (select CharName from _CharactersKillsRecord where CharID = @CharID)
IF (@TableCheckKiller is not null) and (@TableCheckKilled is not NULL)
begin
UPDATE _CharactersKillsRecord set Kills = Kills + '1' where CharName = @WinnerCharName
UPDATE _CharactersKillsRecord set Deaths = Deaths + '1' where CharName = @LoserCharName
end
delete from _LogEventChar where CharID = @CharID
end

IF (@EventID = 20)
begin
Select @Desc = REPLACE(@Desc, LEFT(@Desc, CHARINDEX('(', @Desc)),'')
Select @Desc = REPLACE(@Desc, RIGHT(@Desc, CHARINDEX(')', REVERSE(@Desc))),'')
set @WinnerCharName = @Desc
set @WinnerCharID = (select CharID from [SRO_VT_SHARD].dbo._Char where CharName16 = @WinnerCharName)
set @TableCheckKiller = (Select CharName from _CharactersKillsRecord where CharID = @WinnerCharID)
set @TableCheckKilled = (select CharName from _CharactersKillsRecord where CharID = @CharID)
IF (@TableCheckKiller is null) and (@TableCheckKilled is not NULL)
begin
INSERT INTO _CharactersKillsRecord (CharName,CharID,Kills,Deaths) values (@WinnerCharName,@WinnerCharID,'1','0')
UPDATE _CharactersKillsRecord set Deaths = Deaths + '1' where CharName = @LoserCharName
end
delete from _LogEventChar where CharID = @CharID
end

IF (@EventID = 20)
begin
Select @Desc = REPLACE(@Desc, LEFT(@Desc, CHARINDEX('(', @Desc)),'')
Select @Desc = REPLACE(@Desc, RIGHT(@Desc, CHARINDEX(')', REVERSE(@Desc))),'')
set @WinnerCharName = @Desc
set @WinnerCharID = (select CharID from [SRO_VT_SHARD].dbo._Char where CharName16 = @WinnerCharName)
set @TableCheckKiller = (Select CharName from _CharactersKillsRecord where CharID = @WinnerCharID)
set @TableCheckKilled = (select CharName from _CharactersKillsRecord where CharID = @CharID)
IF (@TableCheckKiller is not null) and (@TableCheckKilled is NULL)
begin
UPDATE _CharactersKillsRecord set Kills = Kills + '1' where CharName = @WinnerCharName
INSERT INTO _CharactersKillsRecord (CharName,CharID,Kills,Deaths) values (@LoserCharName,@CharID,'0','1')
end
delete from _LogEventChar where CharID = @CharID
end
--Character kills table recorder (finish) , all credits goes to #HB

بس كده وهتلاقي كل الpvp في الtable دي في الSRO_VT_SHARDLOG ولو عاوز تعمل reset للtable اعمل الكويري دي :

USE [SRO_VT_SHARDLOG]
UPDATE _CharactersKillsRecord Set Kills = '0' , Deaths = '0'
DELETE from _LogEventChar where EventID = '20'

لل Anti-Cheat اعمل الكويري دي قبل ما تعمل السيستم :

USE [SRO_VT_SHARDLOG]
DELETE from _LogEventChar where EventID = '20'

ان شاء الله تساعدكم :loveletter: :hands:

Hamza FiGo
26-09-2017, 07:45 PM
تسلم ايدك

HB#
26-09-2017, 11:09 PM
تسلم ايدك

:inlove:

Destructions
27-09-2017, 09:35 PM
تسلم ايدك بس يريت لو حطيط PHP او صفحة كاملة للرانك علي السايت

HB#
27-09-2017, 10:22 PM
تسلم ايدك بس يريت لو حطيط PHP او صفحة كاملة للرانك علي السايت

هوا انا معملتش صفحه للرانك بس انا عامل الtable عشان تساعد الناس تعمل صفحه لرانك الpvp عشان انا مش بفهم اوي في السايت وكدا :kiss2:

™ EgY_KhaN ™
28-09-2017, 11:29 PM
جميله جدا والله تسلم ايدك

Neoon
29-09-2017, 12:02 AM
تسلم,


بس " ان شاء " وليس " انشاء "

HB#
29-09-2017, 04:29 PM
جميله جدا والله تسلم ايدك

تسلم يا كبير :play_ball:

تسلم,

بس " ان شاء " وليس " انشاء "


:inlove:

GM_Jo
06-10-2017, 01:45 PM
جميله جدا شغل عالى تسلم ايدك

الله ينور عليك

HB#
06-10-2017, 02:19 PM
جميله جدا شغل عالى تسلم ايدك

الله ينور عليك

حبيبي ... دا من ذوقك :xmas:

Helper4You
13-10-2017, 11:25 AM
تسلم ايدك

HB#
13-10-2017, 02:56 PM
نورت :grin:

Scrox
17-10-2017, 07:45 PM
good work :icecream:

HB#
18-10-2017, 12:51 AM
تسلم :icon2:

H I T L E R
24-10-2017, 10:54 AM
وربناا تسلم

HB#
24-10-2017, 12:48 PM
انا فالخدمه :original:

AhmedNESTA3
08-03-2018, 03:51 PM
حضرتك ممكن احد يجيب char تاني و ايعميل kill ويتحسبلو points
:wallbash::wallbash: