Selamlar







Merhaba Arkadaşlar...











Daha önce forumlarda verilmiş bir çok BAN SİSTEMİ vardı, Kimin verdiğini hatırlamıyorum. Bende bunları kendi çalışmalarımda basit bir şekilde geliştirerek kullandım...







Ban sistemi AŞAMALI çalışmaktadır. Oyuncu ilk defa banlanıyorsa 7 Gün banlanıyor, Eğer ikinci defa banlanıyorsa 30 gün. Eğer üçüncü sefer banlanıyorsa 9999 Gün banlanıyor...







Öncelikle USERDATA tablomuza iki yeni table ekliyoruz.



İsterseniz Veri Tabanında DESİGN seçeneğinden ekleyin isterseniz QA olarak...







USERDATA'ya DESİGN ile table eklemek için







Column Name: BANSURE



Data Type: nvarchar



Lenghth: 50







Column Name: BANSAYI



Data Type: nvarchar



Lenghth: 50







USERDATA'ya QA ile satır eklemek için:









Kod:

ALTER TABLE USERDATA

ADD BANSURE nvarchar



ALTER TABLE USERDATA

ADD BANSAYI nvarchar

Oluşturalacak Procedures'ler:









Kod:

CREATE PROCEDURE char_sureli_ban AS



-- Bu Script BoyuBeyi Tarafından Geliştirilmiştir!..

-- JOB Ayarları her 1 saatte gerçekleştirilicektir!..



update USERDATA set BANSURE = '7', BANSAYI = '1' where authority ='255' and BANSURE ='0' and BANSAYI ='0'



-- Eğer oyuncu ilk defa banlanıyorsa 7 gün banlıyor!..



update USERDATA set BANSURE= '30', BANSAYI = '2' where authority ='255' and BANSURE ='0' and BANSAYI ='1'



-- Eğer oyuncu ikinci defa banlanıyorsa 30 gün banlıyor!..



update USERDATA set BANSURE = '9999', BANSAYI = '3' where authority ='255' and BANSURE ='0' and BANSAYI ='2'



-- Eğer oyuncu üçüncü defa banlanıyorsa 9999 gün banlıyor!..



GO

ve...









Kod:

CREATE PROCEDURE char_sureli_ban_guncelle AS



-- Bu Script BoyuBeyi Tarafından Geliştirilmiştir!..

-- JOB Ayarları her gün 1 sefer gerçekleştirilicektir!..



update USERDATA set BANSURE = BANSURE - 1 where BANSURE > '0' and authority ='255'



-- Gün sayısı 0 dan yüksek olan banlı charların süresini 1 gün azaltıyor!..



update USERDATA set authority ='1' where BANSURE ='0' and authority = '255'



-- Ban süresi bitmiş olan banlı charların banını açıyor!..



GO

Şimdi Herşey tamamsa, Artık bunlara JOB eklemek yeterli.







EXEC char_sureli_ban Saat'te 1 sefer çalışacak şekilde ayarlayın...



EXEC char_sureli_ban_guncelle Günde 1 sefer çalışacak şekilde ayarlayın...







Kullanımı ...







1 Başlat > Tüm Programlar > Microsoft SQL Server > Query Analyzer ‘ a giriyoruz.



2 SQL Server’ a bağlanıyoruz ve açılan ekranda ” master ” yerine ” DBmizi ” seçiyoruz.



3 Seçtikten sonra aşağıdaki kodu kopyalayıp , yapıştırıyoruz ve F5 yaparak kodumuzu uyguluyoruz.