Discuss Scratch

gorkemyapimcilik
Scratcher
99 posts

SCRATCH YARDIMI

yusaTR wrote:

yusaTR wrote:

Abiler Ablalar En Yüksek Skor Yapmaya Çalışıyorum Ama Yapamıyorum Nasıl Yapabilirim
Bulut veri dediğimiz bir veri türü kullanmanız gerekiyor. Değişken oluştururken seçeneklerde işaretleyerek bu değişken türünü oluşturabilirsiniz. Bu sayede elinizde internet üzerinde tüm oyuncularınızın ulaşabileceği sabit bir veri olur. Sistemini kurmak için ise kendiniz o değişkene 0 sayısını atayın. Oyununuzu her bitiminde skoru o değişken ile karşılaştıracak şekilde programlayın. Eğer skor daha büyük ise değişkenin değerini skorunki olarak ayarlasın, değilse bir şeyi değiştirmesine gerek yok, neticede rekor bu. Ha, tabii rekoru geçemediğine dair oyuncuya bir mesaj vermek isteyebilirsiniz. Orası sizin hayal gücünüze kalmış.
Bu arada bir not düşeyim:
Bulut veri özelliğinden Yeni Scratchçiler kuölanıcı olarak da yapımcı olarak da yararlanamazlar, çünkü Scratch ekibi sunucularını meşgul ettiği için bulut verinin bilinçsizce kullanılmasını hiç hoş karşılamaz. Dolayısıyla bulut veri, deneyim kazanmakla birlikte sunulan bir ayrıcalıktır. Bulut veri içeren projelerde Yeni Scratchçiler bulut verinin değerini görebilir, fakat değiştiremezler. Proje yaparken ise öyle bir özellik değişkenler bölümünde bile gözükmez..

Last edited by gorkemyapimcilik (Jan. 16, 2018 19:52:05)

aslangiizem
Scratcher
2 posts

SCRATCH YARDIMI

haber salmanın mantığı nedir, ben bi türlü çözemedim
gorkemyapimcilik
Scratcher
99 posts

SCRATCH YARDIMI

aslangiizem wrote:

haber salmanın mantığı nedir, ben bi türlü çözemedim
Kuklaların haberleşme biçimi. Bir kukla haber saldığında bunu alan başka bir kukla yazılan kodu çalıştırabilir.

Şöyle ki,
[Bir haber v] haberini sal
bloğu çalıştığında, herhangi bir kukladaki
[Bir haber v] haberi gelince
bloğu tetiklenir.

Ayrıca,
[Bir haber v] haberini sal ve bekle
bloğu haberi saldıktan sonra devam etmek için diğerinden farklı olarak haberi alan tüm kuklaların işlemlerini bitirmelerini bekler. Ekran tazelemeden çalışan bir özel taş bloğu altında kasmalara neden olabilir.

Last edited by gorkemyapimcilik (Jan. 26, 2018 17:29:49)

aslangiizem
Scratcher
2 posts

SCRATCH YARDIMI

teşekkür ederim fakat bu haber salmayı günlük hayattaki oyun ve hikayelerde tam olarak nasıl kullandığımızı çocuklara nasıl anlatabilirim henüz yeniyim
gorkemyapimcilik
Scratcher
99 posts

SCRATCH YARDIMI

aslangiizem wrote:

teşekkür ederim fakat bu haber salmayı günlük hayattaki oyun ve hikayelerde tam olarak nasıl kullandığımızı çocuklara nasıl anlatabilirim henüz yeniyim
Hmmm… Aralarındaki haberleşme biçimi olarak düşünebileceklerini söyleyebilirsiniz. Kendi düşünceleri sadece onların durumunu etkiler. Yürümek istediklerinde yürür, oyun oynamak istediklerinde oyun oynarlar, fakat bir arkadaşlarının onlarla birlikte oyun oynamalarını isterlerse onlara haber vermelidirler ki o arkadaşları da oyuna katılsın. Bu örnekte çocukları birer kukla, oyun oynamayı bir kod bloğu olarak düşünebiliriz.
oyun oyna  
:
Tahatamer
Scratcher
3 posts

SCRATCH YARDIMI

Şunu anlatabilir misiniz?
https://hizliresim.com/NZDoEk
Ben bu haber3 haberini sal'ı nasıl sürekli tekrarlanın ardına nasıl koyacağım?

Last edited by Tahatamer (Feb. 26, 2018 16:51:23)

gorkemyapimcilik
Scratcher
99 posts

SCRATCH YARDIMI

Tahatamer wrote:

Şunu anlatabilir misiniz?
https://hizliresim.com/NZDoEk
Ben bu haber3 haberini sal'ı nasıl sürekli tekrarlanın ardına nasıl koyacağım?
“Sürekli tekrarla” bloğunun ardına bir şey koyamayız ve bu oldukça mantıklıdır, çünkü programımız “sürekli tekrarla” bloğuna geldiği zaman, koşulsuz olarak içindekileri devamlı tekrarlamaya başlar ve ardına geçmesinin bir yolu yoktur. Ancak, tekrarlar ardından alt satıra geçmesini istiyorsak “sürekli tekrarla” bloğu yerine amacımıza göre şunlar gibi sınırlı tekrar blokları kullanmamız gerekir:
Belli veya hesaplanabilir sayıda tekrar istediğimizde,
() defa tekrarla

end
Belli bir şart sağlanana kadar tekrar istediğimizde,
<> olana kadar tekrarla

end

Verdiğiniz örneğe gelecek olursam gördüğümde şöyle dedim: Ben böyle yapmazdım. Bana sorarsanız oradaki “sürekli tekrarla” bloğu gereksiz kaçmış.
[Kaçta bitsin?] diye sor ve bekle 
bloğu “Kaçta bitsin?” diye sorup ekrana cevap almak için boşluk açan bir bloktur ve kullanıcıdan bir cevap alana kadar kodu bekletir, ilerlemez. Kodun devam etmesinin tek yolu kullanıcının boşluğa hiçbir şey yazmasa bile “Enter” tuşuna basarak veya ekranda açılan tuşa basarak cevabını kabul ettirmesi gerekir. Böylece
(yanıt) 
bloğu kullanıcın boşluğa yazdığı cevaba eşit olur. (Boş bırakıldıysa da boş “” olur.)
Dolayısıyla yanıt değeri dolana kadar blokları tekrarlamamız gerekmez, zaten o bloklara geldiği zaman “yanıt” bloğu bir değer almıştır.
yeşil bayrak tıklandığında
[Kaçta bitsin?] diye sor ve bekle
eğer <(Oyuncu1) = (yanıt)> ise
[haber1 v] haberini sal
[dekor1 v] dekoruna geç
end
eğer <(Oyuncu2) = (yanıt)> ise
[haber2 v] haberini sal
[dekor2 v] dekoruna geç
end
eğer <(Oyuncu3) = (yanıt)> ise
[haber3 v] haberini sal
[dekor3 v] dekoruna geç
end
Ne yapmak istediğinizi bilmiyorum, fakat anladığım kadarıyla üçüncü “eğer…ise” bloğunu böyle ekleyebilir, “sürekli tekrarla” bloğunu çıkarabilirsiniz.
Yardımcı olduysam ne mutlu bana.

Last edited by gorkemyapimcilik (Feb. 24, 2018 16:28:24)

Tahatamer
Scratcher
3 posts

SCRATCH YARDIMI

gorkemyapimcilik wrote:

Tahatamer wrote:

Şunu anlatabilir misiniz?
https://hizliresim.com/NZDoEk
Ben bu haber3 haberini sal'ı nasıl sürekli tekrarlanın ardına nasıl koyacağım?
“Sürekli tekrarla” bloğunun ardına bir şey koyamayız ve bu oldukça mantıklıdır, çünkü programımız “sürekli tekrarla” bloğuna geldiği zaman, koşulsuz olarak içindekileri devamlı tekrarlamaya başlar ve ardına geçmesinin bir yolu yoktur. Ancak, tekrarlar ardından alt satıra geçmesini istiyorsak “sürekli tekrarla” bloğu yerine amacımıza göre şunlar gibi sınırlı tekrar blokları kullanmamız gerekir:
Belli veya hesaplanabilir sayıda tekrar istediğimizde,
() defa tekrarla

end
Belli bir şart sağlanana kadar tekrar istediğimizde,
<> olana kadar tekrarla

end

Verdiğiniz örneğe gelecek olursam gördüğümde şöyle dedim: Ben böyle yapmazdım. Bana sorarsanız oradaki “sürekli tekrarla” bloğu gereksiz kaçmış.
[Kaçta bitsin?] diye sor ve bekle 
bloğu “Kaçta bitsin?” diye sorup ekrana cevap almak için boşluk açan bir bloktur ve kullanıcıdan bir cevap alana kadar kodu bekletir, ilerlemez. Kodun devam etmesinin tek yolu kullanıcının boşluğa hiçbir şey yazmasa bile “Enter” tuşuna basarak veya ekranda açılan tuşa basarak cevabını kabul ettirmesi gerekir. Böylece
(yanıt) 
bloğu kullanıcın boşluğa yazdığı cevaba eşit olur. (Boş bırakıldıysa da boş “” olur.)
Dolayısıyla yanıt değeri dolana kadar blokları tekrarlamamız gerekmez, zaten o bloklara geldiği zaman “yanıt” bloğu bir değer almıştır.
yeşil bayrak tıklandığında
[Kaçta bitsin?] diye sor ve bekle
eğer <(Oyuncu1) = (yanıt)> ise
[haber1 v] haberini sal
[dekor1 v] dekoruna geç
end
eğer <(Oyuncu2) = (yanıt)> ise
[haber2 v] haberini sal
[dekor2 v] dekoruna geç
end
eğer <(Oyuncu3) = (yanıt)> ise
[haber3 v] haberini sal
[dekor3 v] dekoruna geç
end
Ne yapmak istediğinizi bilmiyorum, fakat anladığım kadarıyla üçüncü “eğer…ise” bloğunu böyle ekleyebilir, “sürekli tekrarla” bloğunu çıkarabilirsiniz.
Yardımcı olduysam ne mutlu bana.

Teşekkür ederim.Çok yardımı oldu.
Tahatamer
Scratcher
3 posts

SCRATCH YARDIMI

Bu arada yapmaya çalıştığım oyunu tamamladım. Teşekkürler Görkem ağabey!
https://scratch.mit.edu/projects/206313886/

Last edited by Tahatamer (Feb. 26, 2018 18:23:28)

muzikogretmeni
New to Scratch
1 post

SCRATCH YARDIMI

LÜTFEN YARDIM!
Bir nesnenin herhangi bir tuşa basınca görünmesini bırakınca gizlenmesini hangi kodlarla sağlayabilirim? Ancak tuştan elimi kaldırmadığım müddetçe nesnenin kaybolmaması gerekiyor. Bu konuda yardım eder misiniz?
createdbymert
Scratcher
16 posts

SCRATCH YARDIMI

Acemiler için güzel bi konu :D

New Big Update Is Coming! (Maps, New Menu, Maybe New Characters) Play It Now! : https://scratch.mit.edu/projects/227765682/
when green flag clicked
forever
if <Project Good> then
say [Like]


else
say [Dislike]
end
end
Kaan_Candemir
Scratcher
4 posts

SCRATCH YARDIMI

Arkadaşlarım Ağabeylerim Blokun Türü Nasıl Değiştirilebilir? Mesela Çevresi Yuvarlak Olan Bir Bloku Altıgen Bir Bloka Dönüştürmek İstiyorum.

<<> veya <>>
^
I
          (Yanlış Cevap)
(Cevap)

Mesela Bir Öğrenciye Soru Sorduk. Ya Gerçek Cevabı Söyleyecek veya da Kafasından Atıcak

Last edited by Kaan_Candemir (June 10, 2018 06:13:25)

berkayahiska2
Scratcher
100+ posts

SCRATCH YARDIMI

Kaan_Candemir wrote:

Arkadaşlarım Ağabeylerim Blokun Türü Nasıl Değiştirilebilir? Mesela Çevresi Yuvarlak Olan Bir Bloku Altıgen Bir Bloka Dönüştürmek İstiyorum.

<<> veya <>>
^
I
          (Yanlış Cevap)
(Cevap)

Mesela Bir Öğrenciye Soru Sorduk. Ya Gerçek Cevabı Söyleyecek veya da Kafasından Atıcak
bunu o bloklardan farklı olarak daha farklı şekilde şöyle yapabilirsin cevabı 1 olan soru sorduk
yeşil bayrak tıklandığında
eğer <yanıt=1> ise
[tebrikler] de (2) saniye


değilse
[otur 0 aldın] de (2) saniye
end

gorkemyapimcilik
Scratcher
99 posts

SCRATCH YARDIMI

muzikogretmeni wrote:

LÜTFEN YARDIM!
Bir nesnenin herhangi bir tuşa basınca görünmesini bırakınca gizlenmesini hangi kodlarla sağlayabilirim? Ancak tuştan elimi kaldırmadığım müddetçe nesnenin kaybolmaması gerekiyor. Bu konuda yardım eder misiniz?
yeşil bayrak tıklandığında
sürekli tekrarla
eğer <[X v] tuşu basılı \(mı?\)> ise
görün
değilse
gizlen
end
end

Last edited by gorkemyapimcilik (July 1, 2018 12:29:43)

gorkemyapimcilik
Scratcher
99 posts

SCRATCH YARDIMI

Kaan_Candemir wrote:

Arkadaşlarım Ağabeylerim Blokun Türü Nasıl Değiştirilebilir? Mesela Çevresi Yuvarlak Olan Bir Bloku Altıgen Bir Bloka Dönüştürmek İstiyorum.

<<> veya <>>
^
I
          (Yanlış Cevap)
(Cevap)

Mesela Bir Öğrenciye Soru Sorduk. Ya Gerçek Cevabı Söyleyecek veya da Kafasından Atıcak
Scratch'teki bloklar şekillerine göre sınıflanırlar.
<[#422ec5] rengine değdi \(mi?\)>
şeklindeki altıgen bloklar doğru/yanlış (“boolean” sözcüğünü çeviremedim.) blokları,
(veri)
şeklindeki bloklar veri bloklarıdır.
Yani, altıgen blokları doğru veya yanlışa; veri blokları sayıdan sözcüğe, herhangi bir yazı karakterinden doğru/yanlışa kadar birçok şeye eşit olabilirler.

Şöyle bir çevrim mümkündür:
[veri v] , <[#422ec5] rengine değdi \(mi?\)> olsun
Burada veri değerine doğru/yanlış bloğu doğruysa ‘true’, değilse ‘false’ atanacaktır.

Şöyle bir şey de mümkündür:
[] de
(() - ())
İlk bloktaki dikdörtgen beyaz boşluk, bloğun yazı değerini kullandığını ifade eder.
İkinci bloktaki yuvarlaklar ise bloğun sayı değerini kullandığını ifade eder.
Ve şu örnekte ikisi de doğrudur:
(veri) de
<[20] > [15]> de
Kuklada bu blokları veri bloğu ile kullandığımızda verideki değeri, doğru/yanlış bloğu ile kullandığımızda doğruysa ‘true’, yanlışsa ‘false’ dediğini göreceğiz. Aynı şekilde,
((veri) - (5))
(<[20] > [15]> - (5))
bu blokları veri bloğu ile kullandığımızda veri'nin sayı değerini, doğru/yanlış bloğu kullandığımızda doğruysa 1'i, yanlışsa 0'ı 5'ten çıkardığını görürüz.

Yapmak istediğiniz koda gelirsek şöyle bir şey düşünüyorum:
[Soruyu Cevapla v] haberi gelince
eğer <((0) ile (1) arasında bir sayı \(tut\)) = [1]>ise
[cevap v] , (doğru cevap) olsun
değilse
[cevap v] , ((1) ile (1000) arasında bir sayı \(tut\)) olsun
end
Tabii benimki sadece bir örnek. İstediğiniz gibi isimlerle oynayabilir, başlangıç bloğunu değiştirebilir veya kodu alıp istediğiniz bir yere koyabilirsiniz

Last edited by gorkemyapimcilik (July 1, 2018 13:11:25)

akodlama
Scratcher
26 posts

SCRATCH YARDIMI

nasıl online oyun yaparım
akodlama
Scratcher
26 posts

SCRATCH YARDIMI

online oyun nasılyapılır
gorkemyapimcilik
Scratcher
99 posts

SCRATCH YARDIMI

akodlama wrote:

online oyun nasılyapılır
Online oyun yapmak için bulut veri değişkenlerini kullanmalısınız. Bu veriler diğerlerinden farklı olarak programınızı kullanan her kullanıcı için aynı değerleri alır ve her biri tarafından değiştirilebilir. Dolayısıyla farklı bilgisayarlarda çalışan programlarınız arası iletişim sağlanır.
Teoride böyle, ancak pratik çok karmaşık. İki bilgisayar arası senkronizasyonu sağlamak kolay iş değil. Ayrıca, siz şu an için bu verileri kullanamazsınız. Scratch ekibinin koyduğu kurallara göre Yeni Scratch'çiler bulut veri özelliğini kullanamıyorlar, hatta bulut veri içeren projelerde bulut veriyi değiştiremiyorlar. (Değiştirebildiğinizi görebilirsiniz, ancak bunu diğer kullanıcılar görmez. Örneğin bir oyundaki en yüksek skoru yapsanız bile high-score bulut verisi değişmeyecektir ve en yüksek skoru yaptığınızı kimseye ispatlayamazsınız.)
Yeni Scratch'çilikten çıkıp “has” Scratch'çiliğe ulaşmak ve bulut veri kullanmaya hak kazanmak için ise Scratch'te aktif olmalı ve proje yapmalısınız.
asli-alb
Scratcher
4 posts

SCRATCH YARDIMI

Ben listeye farklı kullanıcı adlarını eklemek istiyorum. Bir tuşa basınca adınızı listeye ekliyor. Ama sadece benim adım görünüyor. Çıkıp tekrar girdiğimde ise adım kayboluyor ve başka kimsenin adları görünmüyor. Nasıl istediğim sonuca ulaşabilirim?
gorkemyapimcilik
Scratcher
99 posts

SCRATCH YARDIMI

asli-alb wrote:

Ben listeye farklı kullanıcı adlarını eklemek istiyorum. Bir tuşa basınca adınızı listeye ekliyor. Ama sadece benim adım görünüyor. Çıkıp tekrar girdiğimde ise adım kayboluyor ve başka kimsenin adları görünmüyor. Nasıl istediğim sonuca ulaşabilirim?

Anladığım kadarıyla projenizi kullanan herkesin kullanıcı adını bir listede toplamak istiyorsunuz. Yapılabilir, ama üzgünüm ki o kadar kolay bir iş değil Scratch'te.

Öncelikle tüm kullanıcılara aynı değer alan bulut verisine (cloud data) ihtiyacınız var ve ne yazık ki listelerin bulutta toplanan bir türleri yok, sadece değişkenlerin var. Onlar da sadece sayı değeri alabiliyor. Dolayısıyla yapmanız gereken şey, bir bulut veri oluşturmak ve projenizi o ‘tuşa’ basıldığı zaman kullanıcı adını kodlayıp bulut veriye ekleyecek ve tersine, kodlanmış tüm kullanıcı adlarını okuyup, kodlarını çözüp, bir listeye dizecek şekilde programlamak. Kodlama için her karaktere alfabetik olarak sayı atamanızı öneririm. <space>-01, A-02, B-03 gibi. Sayılar tek basamaklıysa soluna bir sıfır eklemeniz gerekir ki karmaşa olmasın. (okurken 14'ün 1 ve 4'ü mü yoksa 14'ü mü kastettiği anlaşılmaz yoksa.) Ayrıca kullanıcı adlarını ayırmak için de sayı kullanmalısınız. Benim önerim 00 (O yüzden 01'den başlatmıştım.) Ve yine ayrıca büyük ve küçük harfler için ayrı kodlar ile ekstra karakterler ( _,-,:,?,! gibi) için de ayrı kodlar belirleyebilirsiniz. Eğer karakter sayısı 99'u geçerse üçlü değil ikili kodlar oluşturmanız gerekecek. Dolayısıyla 01, olacak 001; 57 olacak 057.

Şimdi bir örnek vereyim:
Projenizi paylaştınız ve projenizi daha kimse görmedi. Yani bulut veriniz boş.
Şimdi bir arkadaş geldi ve kullanıcı adı -ne işse- ‘ABC’. Projenizi gördü ‘tuşuna’ bastı ve gitti. Şimdi bulut verinize baktınız ve ne gördünüz? 020304 olmuş.
Şimdi de başka bir arkadaş geldi. Hadi onun ismi de ‘GHIJ’ olsun. O da aynı şekilde geldi ve gitti ve yine bulut verisine baktınız. Şimdi ise 0203040008091011.

Umarım açıklayıcı olmuştur.

Last edited by gorkemyapimcilik (Sept. 24, 2018 19:24:38)

Powered by DjangoBB