Bulundu Para Çek sistemi

  • Konuyu Başlatan Konuyu Başlatan LanisseLossa
  • Başlangıç tarihi Başlangıç tarihi
  • Görüntüleme 265
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...

LanisseLossa

Bir Kömür Göründü Kaptanım!
Katılım
30 Mayıs 2020
Mesajlar
167
Elmaslar
45
Puan
13.605
Yaş
28
Minecraft
TheJesterLossa

Discord:

thejesterlossa

Başlıktaki gibi basitce bir para çek sistemi yazabilcek var mıdır acaba ?
 
Basit olarak /yatır miktar şeklinde ister isen aşağıdaki skripti kullanabilirsiniz.
Kod:
command /yatir [<number>]:
    trigger:
        if arg 1 is not set:
            send "&cLütfen bir miktar belirt!"
            stop
        if player's balance < arg 1:
            send "&cYeterli paran yok!"
            stop
        remove arg 1 from player's balance
        give player a paper named "&fÇek" with lore "&7Miktar: &a%arg 1%", "&8Sağ tıklayarak bozdur"
        send "&aBaşarıyla &e%arg 1% &aTL'lik çek oluşturdun!"

on rightclick:
    if name of event-item is "&fÇek":
        set {_miktar} to lore of event-item
        set {_miktar} to {_miktar} parsed as text
        replace all "&7Miktar: &a" with "" in {_miktar}
        add {_miktar} parsed as number to player's balance
        send "&a%{_miktar}% TL hesabına yatırıldı!"
        remove event-item from player

Eğer daha detaylı yani açıklama ve çekin oluşturulma tarihinin de olduğu /yatır miktar açıklama (tarihi sistem otomatik veriyor) şeklinde bir skript ister iseniz de aşağıdaki kodu kullanabilirsiniz.

Kod:
variables:
    # Bozdurulan çeklerin ID'lerini kaydeder
    {cekler.bozduruldu::*} = false

command /yatir [<number>] [<text>]:
    trigger:
        if arg 1 is not set:
            send "&cLütfen bir miktar belirt!"
            stop
        if player's balance < arg 1:
            send "&cYeterli paran yok!"
            stop

        # Benzersiz ID üret
        set {_id} to "%random integer between 100000 and 999999%-%now%"
        set {_tarih} to now
        set {_aciklama} to "Yok"
        if arg 2 is set:
            set {_aciklama} to arg 2

        remove arg 1 from player's balance

        give player a paper named "&fÇek &8[ID: %{_id}%]" with lore "&7Miktar: &a%arg 1%", "&7Tarih: &f%{_tarih}%", "&7Açıklama: &e%{_aciklama}%", "&8Sağ tıklayarak bozdur"
        send "&a%arg 1% TL'lik çek oluşturuldu! (ID: %{_id}%)"
Kod:
on rightclick:
    if name of event-item contains "&fÇek &8[ID: ":
        set {_idline} to name of event-item
        replace all "&fÇek &8[ID: " with "" in {_idline}
        replace all "]" with "" in {_idline}

        if {cekler.bozduruldu::%{_idline}%} is true:
            send "&cBu çek zaten bozdurulmuş!"
            stop

        set {_lore::*} to lore of event-item
        loop {_lore::*}:
            if loop-value contains "Miktar:":
                replace all "&7Miktar: &a" with "" in loop-value
                set {_miktar} to loop-value parsed as number

        add {_miktar} to player's balance
        send "&aÇek bozduruldu! &e%{_miktar}% TL hesabına yatırıldı."
        remove event-item from player
        set {cekler.bozduruldu::%{_idline}%} to true
 
Basit olarak /yatır miktar şeklinde ister isen aşağıdaki skripti kullanabilirsiniz.
Kod:
command /yatir [<number>]:
    trigger:
        if arg 1 is not set:
            send "&cLütfen bir miktar belirt!"
            stop
        if player's balance < arg 1:
            send "&cYeterli paran yok!"
            stop
        remove arg 1 from player's balance
        give player a paper named "&fÇek" with lore "&7Miktar: &a%arg 1%", "&8Sağ tıklayarak bozdur"
        send "&aBaşarıyla &e%arg 1% &aTL'lik çek oluşturdun!"

on rightclick:
    if name of event-item is "&fÇek":
        set {_miktar} to lore of event-item
        set {_miktar} to {_miktar} parsed as text
        replace all "&7Miktar: &a" with "" in {_miktar}
        add {_miktar} parsed as number to player's balance
        send "&a%{_miktar}% TL hesabına yatırıldı!"
        remove event-item from player

Eğer daha detaylı yani açıklama ve çekin oluşturulma tarihinin de olduğu /yatır miktar açıklama (tarihi sistem otomatik veriyor) şeklinde bir skript ister iseniz de aşağıdaki kodu kullanabilirsiniz.

Kod:
variables:
    # Bozdurulan çeklerin ID'lerini kaydeder
    {cekler.bozduruldu::*} = false

command /yatir [<number>] [<text>]:
    trigger:
        if arg 1 is not set:
            send "&cLütfen bir miktar belirt!"
            stop
        if player's balance < arg 1:
            send "&cYeterli paran yok!"
            stop

        # Benzersiz ID üret
        set {_id} to "%random integer between 100000 and 999999%-%now%"
        set {_tarih} to now
        set {_aciklama} to "Yok"
        if arg 2 is set:
            set {_aciklama} to arg 2

        remove arg 1 from player's balance

        give player a paper named "&fÇek &8[ID: %{_id}%]" with lore "&7Miktar: &a%arg 1%", "&7Tarih: &f%{_tarih}%", "&7Açıklama: &e%{_aciklama}%", "&8Sağ tıklayarak bozdur"
        send "&a%arg 1% TL'lik çek oluşturuldu! (ID: %{_id}%)"
Kod:
on rightclick:
    if name of event-item contains "&fÇek &8[ID: ":
        set {_idline} to name of event-item
        replace all "&fÇek &8[ID: " with "" in {_idline}
        replace all "]" with "" in {_idline}

        if {cekler.bozduruldu::%{_idline}%} is true:
            send "&cBu çek zaten bozdurulmuş!"
            stop

        set {_lore::*} to lore of event-item
        loop {_lore::*}:
            if loop-value contains "Miktar:":
                replace all "&7Miktar: &a" with "" in loop-value
                set {_miktar} to loop-value parsed as number

        add {_miktar} to player's balance
        send "&aÇek bozduruldu! &e%{_miktar}% TL hesabına yatırıldı."
        remove event-item from player
        set {cekler.bozduruldu::%{_idline}%} to true
hocam yanlış anlamayın ben hangisini kullancam şimdi bir tanesi yeterdi ama anlamadım açıkçası
 
hocam yanlış anlamayın ben hangisini kullancam şimdi bir tanesi yeterdi ama anlamadım açıkçası
Basit tarzda olanı istiyorsanız üstteki biraz daha gelişmiş istiyorsanız alttakileri skript olarak ekleyeceksiniz.

Hangi skript hangi şekilde kullanılacağını yazdım.
 
Basit tarzda olanı istiyorsanız üstteki biraz daha gelişmiş istiyorsanız alttakileri skript olarak ekleyeceksiniz.

Hangi skript hangi şekilde kullanılacağını yazdım.
ben oyuncular kendi paralarını alsın sonra npc ile satış yapsın diye istiyorum o zaman hangisini alıcam ?
 
Basit olarak /yatır miktar şeklinde ister isen aşağıdaki skripti kullanabilirsiniz.
Kod:
command /yatir [<number>]:
    trigger:
        if arg 1 is not set:
            send "&cLütfen bir miktar belirt!"
            stop
        if player's balance < arg 1:
            send "&cYeterli paran yok!"
            stop
        remove arg 1 from player's balance
        give player a paper named "&fÇek" with lore "&7Miktar: &a%arg 1%", "&8Sağ tıklayarak bozdur"
        send "&aBaşarıyla &e%arg 1% &aTL'lik çek oluşturdun!"

on rightclick:
    if name of event-item is "&fÇek":
        set {_miktar} to lore of event-item
        set {_miktar} to {_miktar} parsed as text
        replace all "&7Miktar: &a" with "" in {_miktar}
        add {_miktar} parsed as number to player's balance
        send "&a%{_miktar}% TL hesabına yatırıldı!"
        remove event-item from player

Eğer daha detaylı yani açıklama ve çekin oluşturulma tarihinin de olduğu /yatır miktar açıklama (tarihi sistem otomatik veriyor) şeklinde bir skript ister iseniz de aşağıdaki kodu kullanabilirsiniz.

Kod:
variables:
    # Bozdurulan çeklerin ID'lerini kaydeder
    {cekler.bozduruldu::*} = false

command /yatir [<number>] [<text>]:
    trigger:
        if arg 1 is not set:
            send "&cLütfen bir miktar belirt!"
            stop
        if player's balance < arg 1:
            send "&cYeterli paran yok!"
            stop

        # Benzersiz ID üret
        set {_id} to "%random integer between 100000 and 999999%-%now%"
        set {_tarih} to now
        set {_aciklama} to "Yok"
        if arg 2 is set:
            set {_aciklama} to arg 2

        remove arg 1 from player's balance

        give player a paper named "&fÇek &8[ID: %{_id}%]" with lore "&7Miktar: &a%arg 1%", "&7Tarih: &f%{_tarih}%", "&7Açıklama: &e%{_aciklama}%", "&8Sağ tıklayarak bozdur"
        send "&a%arg 1% TL'lik çek oluşturuldu! (ID: %{_id}%)"
Kod:
on rightclick:
    if name of event-item contains "&fÇek &8[ID: ":
        set {_idline} to name of event-item
        replace all "&fÇek &8[ID: " with "" in {_idline}
        replace all "]" with "" in {_idline}

        if {cekler.bozduruldu::%{_idline}%} is true:
            send "&cBu çek zaten bozdurulmuş!"
            stop

        set {_lore::*} to lore of event-item
        loop {_lore::*}:
            if loop-value contains "Miktar:":
                replace all "&7Miktar: &a" with "" in loop-value
                set {_miktar} to loop-value parsed as number

        add {_miktar} to player's balance
        send "&aÇek bozduruldu! &e%{_miktar}% TL hesabına yatırıldı."
        remove event-item from player
        set {cekler.bozduruldu::%{_idline}%} to true
bir sürü hata verdi script çalışmıyor herhalde chatcpt ile oluşturulmadı dimi ?
 
Denemeden yazdım hataları iletirseniz yardımcı olacağım.
Çek yazılıyor güzel ama okutunca gitmiyor ve ven bunu her npcde aynı işlenmesini istiyorum yani eğer ikinci çok iyi açıklamalı ve ayrı ayrı ama eğer onu kullanırsam npcler tanımayıp trade yapmaz diye düşünüyorum o yüzden ilkinde sadece okutunca hesaba eklenmeme problemi giderse benim çok çok işime yarar
 
Çek yazılıyor güzel ama okutunca gitmiyor ve ven bunu her npcde aynı işlenmesini istiyorum yani eğer ikinci çok iyi açıklamalı ve ayrı ayrı ama eğer onu kullanırsam npcler tanımayıp trade yapmaz diye düşünüyorum o yüzden ilkinde sadece okutunca hesaba eklenmeme problemi giderse benim çok çok işime yarar
Hata mesajını bana iletmeden yardımcı olmam pek mümkün değil scripte reload atınca ne hatası veriyor ss iletiniz.
 
Hata mesajını bana iletmeden yardımcı olmam pek mümkün değil scripte reload atınca ne hatası veriyor ss iletiniz.
Şuan işteyim eve geçince atarım yine de yardımlarınız için teşekkürler
 

Ekli dosyalar

  • 2025-04-06_02.20.43.webp
    2025-04-06_02.20.43.webp
    326 KB · Görüntüleme: 69
Hata mesajını bana iletmeden yardımcı olmam pek mümkün değil scripte reload atınca ne hatası veriyor ss iletiniz.
Görmediniz diye yazıyorum konuyu güncelleme atmıyorum yanlış anlaşılmasın lazım diye bu skript yazıcam düzeltme imkanınız var mıdır ?
 
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...

Hala Discord sunucumuza katılmadın mı?

Büyük bir topluluğun parçası ol, etkinliklere katıl ve özel hediyeler kazanma şansı yakala!

Şimdi Katıl
Üst