Merhaba Değerli GamePvps Ailesi.
Sizlere yeni yazmış olduğum Job'dan ayrılınca 7 gün ceza yiyen Charların cezalarının gün sınırlamasının değişimini paylaşacağım.
Sistemin Çalışma Şekli:
Sistem her jobdan ayrılışta karakterlerin CharID'lerini Kontrol tablosuna gönderir. Bu tablo da, prosedürde belirlemiş oldugunuz gün sayısı CharID ile birlikte yer almaktadır.
Karakterler her oyundan çıkış ve girişlerde bu tablo AddLogChar üzerinden kontrol edilir. Sizin belirlemiş olduğunuz gün geldiğinde ise ceza otomatik olarak silinir.
Kontrol Tablosu
SRO_VT_LOG AddLogChar Prosedürüne AS' dan sonra ekleyebilirsiniz.
Sizlere yeni yazmış olduğum Job'dan ayrılınca 7 gün ceza yiyen Charların cezalarının gün sınırlamasının değişimini paylaşacağım.
Sistemin Çalışma Şekli:
Sistem her jobdan ayrılışta karakterlerin CharID'lerini Kontrol tablosuna gönderir. Bu tablo da, prosedürde belirlemiş oldugunuz gün sayısı CharID ile birlikte yer almaktadır.
Karakterler her oyundan çıkış ve girişlerde bu tablo AddLogChar üzerinden kontrol edilir. Sizin belirlemiş olduğunuz gün geldiğinde ise ceza otomatik olarak silinir.
Kontrol Tablosu
Kod:
USE [SRO_VT_LOG]
GO
/****** Object: Table [dbo].[Job_Ceza_Promaker] Script Date: 20.02.2018 06:40:34 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE IF NOT EXISTS [dbo].[Job_Ceza_Promaker](
[CharID] [int] NULL,
[JobDate] [date] NULL,
[PromakerNo1] [int] NULL
) ON [PRIMARY]
GO
SRO_VT_LOG AddLogChar Prosedürüne AS' dan sonra ekleyebilirsiniz.
Kod:
Declare @Gün int = 3 -- Buraya Cezanın Kaç Gün Sürmesi Gerektiğini Yazacaksınız ben örn=3 yazdım. NOT= Ceza 7 günden fazla süremez.
Declare @Promaker int = (SELECT CONVERT(INT, RAND() * 100))
Declare @Date varchar (55) = (SELECT CAST(CONVERT(VARCHAR(10), GETDATE()+@Gün, 111) AS DATETIME))
IF @EventID=94 -- Jobdan Ayrılış (CodedByPromaker)
BEGIN
insert into Job_Ceza_Promaker values (@CharID,@Date,1)
END
Declare @Date2 varchar (55) = (SELECT CAST(CONVERT(VARCHAR(10), GETDATE(), 111) AS DATETIME))
if @EventID in (4,6)
begin
if exists (select CharID from Job_Ceza_Promaker where JobDate=@Date2 and CharID=@CharID)
begin
DELETE FROM SRO_VT_SHARD.dbo._TimedJob where JobID=2 and CharID=@CharID
end
if exists (select CharID from Job_Ceza_Promaker where JobDate=@Date2 and CharID=@CharID)
begin
delete from Job_Ceza_Promaker where CharID=@CharID
end
end