Skript'in Variable Özelliği

ClearMan61

Kömür Madencisi
Mesajlar
140
En iyi cevaplar
0
Beğeniler
25
Puanları
210
ARKADAŞLAR DETAYLI OLARAK - Skriptin Variable özelliğini - Anlata bilirmisiniz?
 


Bernard

Бернард
Site Danışmanı
Geliştirici
Mesajlar
1,286
En iyi cevaplar
61
Beğeniler
2,129
Puanları
5,790
Variable/değişken. Bir yazı içinde yazmasını istediğin şeyleri atıyorsun.
Örnek: kodlama alanında skript içinde %yazı% yazdığımda "Merhaba" yazmasını istiyorum.
yazı: "Merhaba"
şeklinde yaparsam nerede %yazı% yazsam "Merhaba" yazacaktır.
 

ClearMan61

Kömür Madencisi
Mesajlar
140
En iyi cevaplar
0
Beğeniler
25
Puanları
210
Variable/değişken. Bir yazı içinde yazmasını istediğin şeyleri atıyorsun.
Örnek: kodlama alanında skript içinde %yazı% yazdığımda "Merhaba" yazmasını istiyorum.
yazı: "Merhaba"
şeklinde yaparsam nerede %yazı% yazsam "Merhaba" yazacaktır.
Tmm iiyide ir sürü şeyi var set {yazı.player} gibi onları anlatırmısın detaylı
 

Bernard

Бернард
Site Danışmanı
Geliştirici
Mesajlar
1,286
En iyi cevaplar
61
Beğeniler
2,129
Puanları
5,790
Tmm iiyide ir sürü şeyi var set {yazı.player} gibi onları anlatırmısın detaylı
{yazi.%player%} var bu ise yazi değişkeninin komutu kullanan oyuncu için ayarlamaktır.
Örnek:
Kod:
options:
    yazi: merhaba
command /merhaba:
    trigger:
        send "su anda yazi = {@yazi}"
        set {yazi.%player%} to "selam"
Bu örnekte "yazi" değişkeni başta merhaba olarak ayarlanıyor. Merhaba komutu girilince önce "yazi" değişkeninin değeri gönderiliyor ardından komutu kullanan oyuncu için geçerli olacak olan "yazi" değişkeni içindeki "merhaba" -> "selam" olarak değiştiriliyor.
 

ClearMan61

Kömür Madencisi
Mesajlar
140
En iyi cevaplar
0
Beğeniler
25
Puanları
210
{yazi.%player%} var bu ise yazi değişkeninin komutu kullanan oyuncu için ayarlamaktır.
Örnek:
Kod:
options:
    yazi: merhaba
command /merhaba:
    trigger:
        send "su anda yazi = {@yazi}"
        set {yazi.%player%} to "selam"
Bu örnekte "yazi" değişkeni başta merhaba olarak ayarlanıyor. Merhaba komutu girilince önce "yazi" değişkeninin değeri gönderiliyor ardından komutu kullanan oyuncu için geçerli olacak olan "yazi" değişkeni içindeki "merhaba" -> "selam" olarak değiştiriliyor.
Çok Teşekkürler bide kredi felan yaparken kullanıyorlar
set add to 1{kredi. %player%}
Bu nasıl yapılıyor onuda yazarmısın bi

{yazi.%player%} var bu ise yazi değişkeninin komutu kullanan oyuncu için ayarlamaktır.
Örnek:
Kod:
options:
    yazi: merhaba
command /merhaba:
    trigger:
        send "su anda yazi = {@yazi}"
        set {yazi.%player%} to "selam"
Bu örnekte "yazi" değişkeni başta merhaba olarak ayarlanıyor. Merhaba komutu girilince önce "yazi" değişkeninin değeri gönderiliyor ardından komutu kullanan oyuncu için geçerli olacak olan "yazi" değişkeni içindeki "merhaba" -> "selam" olarak değiştiriliyor.
Çok Teşekkürler bide kredi felan yaparken kullanıyorlar
set add to 1{kredi. %player%}
Bu nasıl yapılıyor onuda yazarmısın bi
 

Bernard

Бернард
Site Danışmanı
Geliştirici
Mesajlar
1,286
En iyi cevaplar
61
Beğeniler
2,129
Puanları
5,790
Çok Teşekkürler bide kredi felan yaparken kullanıyorlar
set add to 1{kredi. %player%}
Bu nasıl yapılıyor onuda yazarmısın bi


Çok Teşekkürler bide kredi felan yaparken kullanıyorlar
set add to 1{kredi. %player%}
Bu nasıl yapılıyor onuda yazarmısın bi
Bu sorduğun şey yine kişiye özel değişken oluyor. Başta kredi değişkenini oluşturman gerekiyor. Krediye ekleme yapmak için şu kodu kullanabilirsin:
Kod:
add 1 to {kredi.%player%}
"add 1" olan kısımdaki sayıyı değiştirerek daha fazla ekleme yapabilirsin. Sayı azaltmak için şu kodu kullanabilirsin:
Kod:
remove 1 from {kredi.%player%}
 

Mr_Obliviate

Play.BlokDunyasi.Net
Mesajlar
1,002
En iyi cevaplar
18
Beğeniler
749
Puanları
1,480
Ruh hali
Variables

Bilgiyi saklamanı sağlar. süslü parantez içine yazılarak isimlendirilir.
Kod:
add 1 to {a}
burda "a" adındaki variable'a 1 eklemeni istiyor. eğer "a" daha önce yapılmamış yada sayı olarak tanımlanmışsa bu işlemi yapar. ama unutmaman gereken şu, eğer
Kod:
set {a} to "Hayaller"
yaparsan bu variable bir yazı olarak tanımlanır. ve sen buna istediğin kadar sayı ekle yinede o "hayaller" olarak kalır.

Bir variable'ı kontrol edebilirsin.
Kod:
if {a} is "hayaller":
Bir variable'ın ne olduğunu öğrenebilirsin.
Kod:
send "%{a}%" to player
bir variable'ı eğer yazı olarak dökmek istiyorsan yukardaki işlemi yapmalısın. ve bu çok basit sadece "%" içine yazman yeterli

Genellikle her oyuncuya ait farklı variable yapmak için onları oyuncuların adlarıyla isimlendirirler.
Kod:
set {oldurme.%player%} to 10
buradaki "%player%" oyuncunun adını alır.
örneğin senin oyuncu ismin ClearMan61 olsun. bu "{oldurme.clearman61}" olarak kaydedilir.

Variable'lar sunucundaki Plugins/skript/variables dosyasına kaydedilir. bu dosya ne kadar büyürse sunucun o kadar zorlanır. genellikle skripterler veriyi gereksiz olduğu durumlarda silmeyi tercih ederler.
Kod:
delete {a}
Şimdi bol kullanılan bir örnek göstericeğim.
Kod:
on death:
    add 1 to {oldurme.%attacker%}
    add 1 to {olme.%victim%}
    send "%victim%, %attacker% tarafından öldürüldü."
%attacker%: Saldırgan
%victim%: Öldürülen
Burda biri öldüğünde ölen kişiye 1 ölme puanı öldürenede 1 öldürme puanı ekler.
Kod:
command statlarım:
    trigger:
        send "Öldürme: %{oldurme.%player%}%"
        send "Ölme: %{olme.%player%}%"
ve burda da variable'larımızın kaç olduğunu gözlemleyebiliyoruz. unutma "%" içinde yazdık.

yalnız şöyle bir sıkıntı var eğer bir variable hiç girilmediyse "<none>" olarak tanımlanır yani biz hiç ölmediysek statlarımızda ölme sayımız <none> olarak gösterilir. bunu engellemek çok basit.

Kod:
variables:
    {olme.%player%} = 0
variables özelliklerinden birisi variable'ları tanımlayabilmek yani bir variable girilmemişse. onu nasıl tanımliyacağını biliyoruz.
eğer bir oyuncu hiç ölmediyse ölme sayısını 0 olarak tanımlar. silindiğinde de bu geçerli.
 

ClearMan61

Kömür Madencisi
Mesajlar
140
En iyi cevaplar
0
Beğeniler
25
Puanları
210
Variables

Bilgiyi saklamanı sağlar. süslü parantez içine yazılarak isimlendirilir.
Kod:
add 1 to {a}
burda "a" adındaki variable'a 1 eklemeni istiyor. eğer "a" daha önce yapılmamış yada sayı olarak tanımlanmışsa bu işlemi yapar. ama unutmaman gereken şu, eğer
Kod:
set {a} to "Hayaller"
yaparsan bu variable bir yazı olarak tanımlanır. ve sen buna istediğin kadar sayı ekle yinede o "hayaller" olarak kalır.

Bir variable'ı kontrol edebilirsin.
Kod:
if {a} is "hayaller":
Bir variable'ın ne olduğunu öğrenebilirsin.
Kod:
send "%{a}%" to player
bir variable'ı eğer yazı olarak dökmek istiyorsan yukardaki işlemi yapmalısın. ve bu çok basit sadece "%" içine yazman yeterli

Genellikle her oyuncuya ait farklı variable yapmak için onları oyuncuların adlarıyla isimlendirirler.
Kod:
set {oldurme.%player%} to 10
buradaki "%player%" oyuncunun adını alır.
örneğin senin oyuncu ismin ClearMan61 olsun. bu "{oldurme.clearman61}" olarak kaydedilir.

Variable'lar sunucundaki Plugins/skript/variables dosyasına kaydedilir. bu dosya ne kadar büyürse sunucun o kadar zorlanır. genellikle skripterler veriyi gereksiz olduğu durumlarda silmeyi tercih ederler.
Kod:
delete {a}
Şimdi bol kullanılan bir örnek göstericeğim.
Kod:
on death:
    add 1 to {oldurme.%attacker%}
    add 1 to {olme.%victim%}
    send "%victim%, %attacker% tarafından öldürüldü."
%attacker%: Saldırgan
%victim%: Öldürülen
Burda biri öldüğünde ölen kişiye 1 ölme puanı öldürenede 1 öldürme puanı ekler.
Kod:
command statlarım:
    trigger:
        send "Öldürme: %{oldurme.%player%}%"
        send "Ölme: %{olme.%player%}%"
ve burda da variable'larımızın kaç olduğunu gözlemleyebiliyoruz. unutma "%" içinde yazdık.

yalnız şöyle bir sıkıntı var eğer bir variable hiç girilmediyse "<none>" olarak tanımlanır yani biz hiç ölmediysek statlarımızda ölme sayımız <none> olarak gösterilir. bunu engellemek çok basit.

Kod:
variables:
    {olme.%player%} = 0
variables özelliklerinden birisi variable'ları tanımlayabilmek yani bir variable girilmemişse. onu nasıl tanımliyacağını biliyoruz.
eğer bir oyuncu hiç ölmediyse ölme sayısını 0 olarak tanımlar. silindiğinde de bu geçerli.
Çok sağol bide en kötüsünden bi kredi skripti örneği atarmısın.
 

LifeMCServer

Nether Yerlisi
Mesajlar
2,410
En iyi cevaplar
98
Beğeniler
2,461
Puanları
10,250
Ruh hali
Konudaki herkes normal variable örneği atmış ilerde bunları değiştirmesi gerekecek top 10 yaparken, topluca variable silerken vs. lazım oluyor.

Bu yüzden her zaman liste variableleri kullan ve variablelerin başına değişkenlik gösteren değerler ekleme.
örn. {%player%.level} yerine {level::%player%} kullan.

Daha fazlası:
https://forum.gamer.com.tr/konu/skr...-skriptden-kaynakli-sorunlari-coezuen.383414/

Ek: Arkadaşların bahsetmediği bi olaydan bahsetmek istiyorum. Parse ve Variable çeşitleri.
Parse ve Variable Çeşitleri;

Text - Yazı. Genelde "" içerisine yazılır. -> set {_a} to "Yazı"
Integer - Tam sayı. Direk yazılır. -> set {_b} to 1
Number - Sayı. Tüm sayılar olabilir. Direk yazılır. -> set {_c} to 1.5
Boolean - True/False olabilen değişken. Direk yazılır. -> set {_d} to true
Date - Tarih. Now olarak yazılabilir ya da parse ile parselenebilir. -> set {_e} to now
Timespan - Süre. 1 dakika, 2 dakika vb. ingilizce olarak yazılır. -> set {_f} to 1 minutes
Location - Yer/Lokasyon. Bir objenin lokasyonu olarak girilebilir. -> set {_g} to location of player

Daha fazlası: https://docs.skunity.com/syntax/search/addon:skript category:type

Ek: Skript variablelerinde default confige göre büyük küçük harf ayrımı yoktur yani {deNeMe::%player%}'a {deneme::%player%} ile de ulaşabilirsin. Oyuncu adlarıda yine bunun gibi küçük harf ile kaydedilir ve küçük büyük harf ayrımı yoktur.
 

ClearMan61

Kömür Madencisi
Mesajlar
140
En iyi cevaplar
0
Beğeniler
25
Puanları
210
Konudaki herkes normal variable örneği atmış ilerde bunları değiştirmesi gerekecek top 10 yaparken, topluca variable silerken vs. lazım oluyor.

Bu yüzden her zaman liste variableleri kullan ve variablelerin başına değişkenlik gösteren değerler ekleme.
örn. {%player%.level} yerine {level::%player%} kullan.

Daha fazlası:
https://forum.gamer.com.tr/konu/skr...-skriptden-kaynakli-sorunlari-coezuen.383414/

Ek: Arkadaşların bahsetmediği bi olaydan bahsetmek istiyorum. Parse ve Variable çeşitleri.
Parse ve Variable Çeşitleri;

Text - Yazı. Genelde "" içerisine yazılır. -> set {_a} to "Yazı"
Integer - Tam sayı. Direk yazılır. -> set {_b} to 1
Number - Sayı. Tüm sayılar olabilir. Direk yazılır. -> set {_c} to 1.5
Boolean - True/False olabilen değişken. Direk yazılır. -> set {_d} to true
Date - Tarih. Now olarak yazılabilir ya da parse ile parselenebilir. -> set {_e} to now
Timespan - Süre. 1 dakika, 2 dakika vb. ingilizce olarak yazılır. -> set {_f} to 1 minutes
Location - Yer/Lokasyon. Bir objenin lokasyonu olarak girilebilir. -> set {_g} to location of player

Daha fazlası: https://docs.skunity.com/syntax/search/addon:skript category:type

Ek: Skript variablelerinde default confige göre büyük küçük harf ayrımı yoktur yani {deNeMe::%player%}'a {deneme::%player%} ile de ulaşabilirsin. Oyuncu adlarıda yine bunun gibi küçük harf ile kaydedilir ve küçük büyük harf ayrımı yoktur.

Tanıtım yapmışsın benim bunların kullanımını öğrenmem gerek
 

LifeMCServer

Nether Yerlisi
Mesajlar
2,410
En iyi cevaplar
98
Beğeniler
2,461
Puanları
10,250
Ruh hali
Tanıtım yapmışsın benim bunların kullanımını öğrenmem gerek

Örnek olarak kullanımlarını ->'dan sonra verdim kullanımlarını arkadaş zaten vermiş tekrar yazmaya gerek duymadım sadece arkadaşların yazdıklarına ek birşeyler ekledim.
 

Üst