Skript'in Variable Özelliği

ClearMan61

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

Bernard

Бернард
Site Yöneticisi
Tasarım Danışmanı
Geliştirici
Mesajlar
1,258
En iyi cevaplar
59
Beğeniler
2,029
Puanları
4,290
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ı
600
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 Yöneticisi
Tasarım Danışmanı
Geliştirici
Mesajlar
1,258
En iyi cevaplar
59
Beğeniler
2,029
Puanları
4,290
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ı
600
{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 Yöneticisi
Tasarım Danışmanı
Geliştirici
Mesajlar
1,258
En iyi cevaplar
59
Beğeniler
2,029
Puanları
4,290
Ç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

Elmas Madencisi
Reborn Project
Mesajlar
855
En iyi cevaplar
8
Beğeniler
616
Puanları
2,110
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ı
600
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
Süper Üye
Uzman
Mesajlar
2,364
En iyi cevaplar
93
Beğeniler
2,363
Puanları
8,000
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ı
600
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
Süper Üye
Uzman
Mesajlar
2,364
En iyi cevaplar
93
Beğeniler
2,363
Puanları
8,000
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