PVP SERVER
CLAN LEDERİ DEĞİŞİMİ Yuo
PVP SERVER
CLAN LEDERİ DEĞİŞİMİ Yuo
PVP SERVER
Would you like to react to this message? Create an account in a few clicks or log in to continue.



 
AnasayfaAnasayfa  AramaArama  Latest imagesLatest images  Kayıt OlKayıt Ol  Giriş yapGiriş yap  

 

 CLAN LEDERİ DEĞİŞİMİ

Aşağa gitmek 
2 posters
YazarMesaj
OxyDante
Snake Queen
OxyDante


Ruh Hali : CLAN LEDERİ DEĞİŞİMİ Yurekl10
Job : CLAN LEDERİ DEĞİŞİMİ 14tc1sw
Mesaj Sayısı : 210
Kayıt tarihi : 18/09/09

CLAN LEDERİ DEĞİŞİMİ Empty
MesajKonu: CLAN LEDERİ DEĞİŞİMİ   CLAN LEDERİ DEĞİŞİMİ Icon_minitimeC.tesi Eyl. 19, 2009 6:26 pm

Selamlar,
Clan Lider Değişimi İçin Bir Procedure Oluşturdum, Umarım Herkeze Faydalı Olur.

Özelliklerini Sayacak Olursak,
1. Hataya Sebebiyet Vermemesi Açısından Karakterler Kontrolü Yapılıyor,USERDATA da Varmı Yokmu Olayı.
2. IRK Kontrolü Yapıyor, Eğer Farklı Irklardan ise Lider Değişimi
Olmuyor, Buna Gerek Yok Aslında Ama SQL i Yormamak Adına Alttaki Kodlar
İletilmesin Diye Yaptım.
3. Clan Kontrolü Yapılıyor, Eğer Farklı Clanlardan ise Lider Değişimi Olmuyor.
4. Assist Kontrolü Yapılabiliyor, İsteğe Göre Kapatıp Açabilirsiniz
yani Kısacası Assist Kontrolü Yapmadanda Sadece Clan Üyesi ise Bile
Lider Değişimi Yaptırabilirsiniz.
5. Eski Lider ile Yeni Liderin Oyundaki Durumu CurrentUserdan Kontrol Ediliyor Eğer Oyunda ise Clan Değişimi Gerçekleşmiyor.
6. Eski Kullanıcının Clan Lideri Olup Olmadığı Kontrol Ediliyor.
7. Yukarıda Yazan Herşey İçin Hata Mesajları PRINT Edilmektedir.

Kısacası Herşeyin Kontrolü Var CLAN LEDERİ DEĞİŞİMİ Smile

Kod:
CREATE PROCEDURE CHANGE_KNIGHTS_LEADER
(
@KnightsLeaderOld varchar(30),
@KnightsLeaderNew varchar(30)
)
AS
/*
Author : AKUMA
*/
BEGIN TRAN
DECLARE
@KnightsNumOldLeader int,
@FameStatusOldLeader tinyint,
@NationOldLeader tinyint,
@InGameStatusOldLeader tinyint,
@KnightsNumNewLeader int,
@NationNewLeader tinyint,
@InGameStatusNewLeader tinyint,
@KnightsName varchar(50),
@CheckChief1 tinyint,
@CheckChief2 tinyint,
@CheckChief3 tinyint,
@CheckAssist tinyint,
@CheckAssistStatus tinyint,
@CheckLeaderOld tinyint,
@CheckLeaderNew tinyint
/*
Check Assist Status
1 : On - Checking Assist
2 : Off - Not Check
*/
-- Start
SET @CheckAssistStatus = 2
-- End
SELECT @CheckLeaderOld = COUNT(strUserID) FROM USERDATA WHERE strUserID = @KnightsLeaderOld
SELECT @CheckLeaderNew = COUNT(strUserID) FROM USERDATA WHERE strUserID = @KnightsLeaderNew
IF @CheckLeaderOld = 0
BEGIN
PRINT RTRIM(LTRIM(@KnightsLeaderOld)) + ' Kullanıcı Adında Bir Oyuncu Bulunamadı.'
END
ELSE IF @CheckLeaderNew = 0
BEGIN
PRINT RTRIM(LTRIM(@KnightsLeaderNew)) + ' Kullanıcı Adında Bir Oyuncu Bulunamadı.'
END
ELSE
BEGIN
SELECT @InGameStatusOldLeader = COUNT(strCharID) FROM CURRENTUSER WHERE strCharID = @KnightsLeaderOld
SELECT @InGameStatusNewLeader = COUNT(strCharID) FROM CURRENTUSER WHERE strCharID = @KnightsLeaderNew
IF @InGameStatusOldLeader <> 0
BEGIN
PRINT RTRIM(LTRIM(@KnightsLeaderOld)) + ' Kullanıcısı Oyundadır, Bu Sebeplen Clan Lider Değişimi Yapılamadı.'
END
ELSE IF @InGameStatusNewLeader <> 0
BEGIN
PRINT RTRIM(LTRIM(@KnightsLeaderOld)) + ' Kullanıcısı Oyundadır, Bu Sebeplen Clan Lider Değişimi Yapılamadı.'
END
ELSE
BEGIN
SELECT @KnightsNumOldLeader = Knights, @FameStatusOldLeader = Fame, @NationOldLeader = Nation FROM USERDATA WHERE strUserID = @KnightsLeaderOld
SELECT @KnightsName = IDName FROM KNIGHTS WHERE IDNum = @KnightsNumNewLeader
IF @FameStatusOldLeader = 0
BEGIN
PRINT RTRIM(LTRIM(@KnightsLeaderOld)) + ' Clan Lideri Değil, Bu Sebepten Dolayı İşlem Yapılamadı.'
END
ELSE
BEGIN

SELECT @KnightsNumNewLeader = Knights, @NationNewLeader = Nation FROM USERDATA WHERE strUserID = @KnightsLeaderNew

IF @NationOldLeader = @NationNewLeader
BEGIN

IF @KnightsNumOldLeader <> @KnightsNumNewLeader
BEGIN
PRINT RTRIM(LTRIM(@KnightsLeaderNew)) + ' Kullanıcısı Farklı Bir Clanda, Lider Değişimi İçin Kullanıcın Aynı Clanda Olması ve Assist Gerekmektedir.'
END
ELSE IF @CheckAssistStatus = 1
BEGIN

SELECT @CheckChief1 = Count(ViceChief_1) FROM KNIGHTS WHERE ViceChief_1 = @KnightsLeaderNew AND ViceChief_1 is not null
SELECT @CheckChief2 = Count(ViceChief_2) FROM KNIGHTS WHERE ViceChief_2 = @KnightsLeaderNew AND ViceChief_2 is not null
SELECT @CheckChief3 = Count(ViceChief_3) FROM KNIGHTS WHERE ViceChief_3 = @KnightsLeaderNew AND ViceChief_3 is not null
IF (@CheckChief1 <> 0) OR (@CheckChief2 <> 0) OR (@CheckChief3 <> 0)
BEGIN
PRINT RTRIM(LTRIM(@KnightsLeaderNew)) + ' Kullanıcısı ' + RTRIM(LTRIM(@KnightsName)) + ' Clanında Assist Değildir, Lütfen Assist Yapınız.'
END
END
ELSE
BEGIN
-- Updating Table for Old Leader
UPDATE USERDATA SET Knights = @KnightsNumOldLeader, Fame = 0 WHERE strUserID = @KnightsLeaderOld

-- Updating Table for New Leader
UPDATE KNIGHTS SET ViceChief_1 = NULL WHERE Chief = @KnightsLeaderNew AND ViceChief_1 is not null
UPDATE KNIGHTS SET ViceChief_2 = NULL WHERE Chief = @KnightsLeaderNew AND ViceChief_2 is not null
UPDATE KNIGHTS SET ViceChief_3 = NULL WHERE Chief = @KnightsLeaderNew AND ViceChief_3 is not null
UPDATE KNIGHTS SET Chief = @KnightsLeaderNew WHERE Chief = @KnightsLeaderOld
UPDATE USERDATA SET Fame = 1 WHERE strUserID = @KnightsLeaderNew
PRINT RTRIM(LTRIM(@KnightsName)) + ' Clanın, Clan Lideri ' + RTRIM(LTRIM(@KnightsLeaderNew)) + ' Olarak Değişmiştir.'
END
END
ELSE
BEGIN
PRINT RTRIM(LTRIM(@KnightsLeaderOld)) + ' İle ' + RTRIM(LTRIM(@KnightsLeaderNew)) + ' Farklı IRKlardan, Bu Sebeple Lider Değişimi Yapılamadı.'
END

END
END
END
COMMIT TRAN

Kullanımına İlişkin Bilgiler ;

Kod:
Kullanım : EXEC CHANGE_KNIGHTS_LEADER 'ESKICLANLIDERI','YENICLANLIDERI'
Örnek : EXEC CHANGE_KNIGHTS_LEADER 'AKUMA','GOUKI'

Eğer Ben Assit Kontrolü Yaptırmayacam Clan ÜYeside Olsa Yapsın Lider Değişimini Diyorsanız

Procedurenin En Üstüne Bakarsanız

Kod:
/*
Check Assist Status
1 : On - Checking Assist
2 : Off - Not Check
*/
-- Start
SET @CheckAssistStatus = 1
-- End

Eğer Yukarıda "SET @CheckAssistStatus = 1" Bölümünü "2" Yaparsanız, Assist Kontrolü Yapılmaz.


ALINTIDIR!!!
Sayfa başına dön Aşağa gitmek
oguzalex
Süper Aktif Üye
Süper Aktif Üye
oguzalex


Ruh Hali : CLAN LEDERİ DEĞİŞİMİ Keyifl10
Job : CLAN LEDERİ DEĞİŞİMİ 2wm3yiv
Mesaj Sayısı : 631
Kayıt tarihi : 16/09/09

CLAN LEDERİ DEĞİŞİMİ Empty
MesajKonu: Geri: CLAN LEDERİ DEĞİŞİMİ   CLAN LEDERİ DEĞİŞİMİ Icon_minitimeC.tesi Eyl. 19, 2009 7:10 pm

ty emege saygıVery Happy
Sayfa başına dön Aşağa gitmek
http://www.ikariam.net
OxyDante
Snake Queen
OxyDante


Ruh Hali : CLAN LEDERİ DEĞİŞİMİ Yurekl10
Job : CLAN LEDERİ DEĞİŞİMİ 14tc1sw
Mesaj Sayısı : 210
Kayıt tarihi : 18/09/09

CLAN LEDERİ DEĞİŞİMİ Empty
MesajKonu: Geri: CLAN LEDERİ DEĞİŞİMİ   CLAN LEDERİ DEĞİŞİMİ Icon_minitimeC.tesi Eyl. 19, 2009 7:55 pm

clanlar için ii walla yorum bekliom!!!
Sayfa başına dön Aşağa gitmek
OxyDante
Snake Queen
OxyDante


Ruh Hali : CLAN LEDERİ DEĞİŞİMİ Yurekl10
Job : CLAN LEDERİ DEĞİŞİMİ 14tc1sw
Mesaj Sayısı : 210
Kayıt tarihi : 18/09/09

CLAN LEDERİ DEĞİŞİMİ Empty
MesajKonu: Geri: CLAN LEDERİ DEĞİŞİMİ   CLAN LEDERİ DEĞİŞİMİ Icon_minitimeC.tesi Eyl. 19, 2009 7:55 pm

başkan ırk deiştircek olur clan bozulur onun yerine devreder clan durur:D
Sayfa başına dön Aşağa gitmek
oguzalex
Süper Aktif Üye
Süper Aktif Üye
oguzalex


Ruh Hali : CLAN LEDERİ DEĞİŞİMİ Keyifl10
Job : CLAN LEDERİ DEĞİŞİMİ 2wm3yiv
Mesaj Sayısı : 631
Kayıt tarihi : 16/09/09

CLAN LEDERİ DEĞİŞİMİ Empty
MesajKonu: Geri: CLAN LEDERİ DEĞİŞİMİ   CLAN LEDERİ DEĞİŞİMİ Icon_minitimeC.tesi Eyl. 19, 2009 8:28 pm

nasıl
Sayfa başına dön Aşağa gitmek
http://www.ikariam.net
OxyDante
Snake Queen
OxyDante


Ruh Hali : CLAN LEDERİ DEĞİŞİMİ Yurekl10
Job : CLAN LEDERİ DEĞİŞİMİ 14tc1sw
Mesaj Sayısı : 210
Kayıt tarihi : 18/09/09

CLAN LEDERİ DEĞİŞİMİ Empty
MesajKonu: Geri: CLAN LEDERİ DEĞİŞİMİ   CLAN LEDERİ DEĞİŞİMİ Icon_minitimeC.tesi Eyl. 19, 2009 8:53 pm

yani olursa clan lideri ncs basar veya ırk değiştirir onda clan bozma derdi olmaz diyom ok?
Sayfa başına dön Aşağa gitmek
 
CLAN LEDERİ DEĞİŞİMİ
Sayfa başına dön 
1 sayfadaki 1 sayfası
 Similar topics
-
» Clan Sembolleri
» Clan Devretme...
» CLAN IRK TRANSFERİ
» Clan isimlerii
» OYUN İÇİ KULLANICI VE CLAN SIRALAMASI

Bu forumun müsaadesi var:Bu forumdaki mesajlara cevap veremezsiniz
PVP SERVER :: Knight Online PvP :: Query Analyzer QA Kodları-
Buraya geçin: