vSRO Çözüldü job kill honor point sistem

  • Konuyu Başlatan Konuyu Başlatan apple46
  • Başlangıç tarihi Başlangıç tarihi

apple46

.
.
Aktiflik: 2%
100 mesaj Muhafız
Katılım
30 Ocak 2019
Mesajlar
136
Tepkime puanı
27
Puan
28
Konum
Antalya
Thread owner
merhaba arkadaşlar elinde job kill honor point sistem olan paylaşabilir mi ?
forumda var ama İstenen konu bulunamadı. böyle bir hata alıyorum yardımcı olur musunuz?
 
Thread owner
Prosedürleri kurcalasan çok da zor değil aslında. Notice kısmına gelirsek sağ altta yazı belirir puan kazandığına dair varolanı değiştiricen sadece
hocam hepsini denedim farklı farklı dblerden çektim ama kesen ve kesilen kişiyi tabloya yazdıramadım onu yapsam sorun kalmayacak sanırsam.
 
Oyla 0
Thread owner
Arkadaşlar kullandığım prosedürler bunlar bilen birisi bakabilir mi sorun var mı ?

USE [SRO_VT_LOG]
GO
/****** Object: StoredProcedure [dbo].[sp_JobKill] Script Date: 7/17/2020 4:16:21 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO


ALTER procedure [dbo].[sp_JobKill]
@CharID int,
@Desc varchar(128)
as

Declare @K_Name varchar(512) = @Desc
Declare @Kesilen int = @CharID
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))), '')

Declare @Kesen INT =(SELECT CharID FROM [SRO_VT_SHARD].[dbo].[_Char] with(nolock) WHERE CharName16 = @K_Name)
Declare @Count smallint = (Select Count(Kesen) from _RowKills2 with(nolock) where Kesen=@Kesen and Kesilen=@Kesilen and DescType=1 )
Declare @CountHonor int = (Select Count(Kesen) from _HonorKills with(nolock) where Kesen=@Kesen and Kesilen=@Kesilen and DescType=2 )
Declare @KesilenName varchar(60)= (select CharName16 from SRO_VT_SHARD.._Char with(nolock) where CharID=@Kesilen)


IF @CountHonor < 3 and exists (select CampID from SRO_VT_SHARD.._TrainingCampMember with(nolock) where CharID=@Kesen) and
exists (select CampID from SRO_VT_SHARD.._TrainingCampMember with(nolock) where CharID=@Kesilen) BEGIN
Declare @KesilenCamp int = (select CampID from SRO_VT_SHARD.._TrainingCampMember with(nolock) where CharID=@Kesilen)
Declare @KesilenPuan int = (Select EvaluationPoint from SRO_VT_SHARD.._TrainingCamp with(nolock) where ID=@KesilenCamp)

IF @KesilenPuan >=1 BEGIN
Declare @CampID int = (select CampID from SRO_VT_SHARD.._TrainingCampMember with(nolock) where CharID=@Kesen)
Declare @Job tinyint = (select JobType from SRO_VT_SHARD.._CharTrijob with(nolock) where CharID=@Kesen)

INSERT INTO _HonorKills VALUES (@Kesen,@Kesilen,2)
UPDATE SRO_VT_SHARD.._TrainingCamp set GraduateCount=GraduateCount+1, EvaluationPoint=EvaluationPoint+1 Where ID=@CampID
insert into Bot1..iLegend_Tool (Service,Type,Target,Message,Date)
values (1,'Private',@K_Name,'1 honor puanı kazandınız.',GETDATE())

UPDATE SRO_VT_SHARD.._TrainingCamp set GraduateCount=GraduateCount-1, EvaluationPoint=EvaluationPoint-1 Where ID=@KesilenCamp
insert into Bot1..iLegend_Tool (Service,Type,Target,Message,Date)
values (1,'Private',@KesilenName,'1 honor puanı kaybettiniz.',GETDATE())
END

IF @KesilenPuan <1 BEGIN
insert into Bot1..iLegend_Tool (Service,Type,Target,Message,Date)
values (1,'Private',@K_Name,'Honor puanı olmayan oyunculardan puan kazanamazsınız.',GETDATE())
END

END

IF @Count <=1 BEGIN
INSERT INTO _RowKills2 VALUES (@Kesen,@Kesilen,1)
END

_AddLogChar Prosedürü

IF @EventID = '20'
begin

IF (@Desc LIKE '%Trader, Neutral, no freebattle team%' OR @Desc LIKE '%Hunter, Neutral, no freebattle team%' OR @Desc LIKE '%Robber, Neutral, no freebattle team%') BEGIN
exec sp_JobKill @CharID,@Desc
END
END
 
Oyla 0
SQL:
İçeriği görebilmek için Giriş yap ya da üye ol.

Burdaki kodun amacı ne anlamadım gitti.
Left komudu ile neyi ilk baştan okuyor ve right komutu ile neyi en sağdan okuyor ve reverse komudu ile veri türünü neden tersten okuyor amaç ney bu kodda
 
Oyla 0
Thread owner
SQL:
İçeriği görebilmek için Giriş yap ya da üye ol.

Burdaki kodun amacı ne anlamadım gitti.
Left komudu ile neyi ilk baştan okuyor ve right komutu ile neyi en sağdan okuyor ve reverse komudu ile veri türünü neden tersten okuyor amaç ney bu kodda
çektiğim db de aynen böyle yazıyordu hocam direk aldım orada çalışıyor burada çalışmıyor.
 
Oyla 0
SQL:
İçeriği görebilmek için Giriş yap ya da üye ol.

Burdaki kodun amacı ne anlamadım gitti.
Left komudu ile neyi ilk baştan okuyor ve right komutu ile neyi en sağdan okuyor ve reverse komudu ile veri türünü neden tersten okuyor amaç ney bu kodda
Karakter adını parantez içine almak için olduğunu anlıyorum hep ama tersten yazma ne alaka bende anlamadım...
 
Oyla 0
Thread owner
Oyla 0

Bu konuyu görüntüleyen kullanıcılar

Geri
Üst Alt