Çözüldü Pygame 4 yöne mermi atışı nasıl yapılır?

Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.

jinwo

Centipat
Katılım
3 Aralık 2022
Mesajlar
23
Çözümler
2
Daha fazla  
Cinsiyet
Erkek
Pygame ile oyun yapmaya çalışıyorum. Tek düzlemde atışlar gerçekleştirebiliyorum. Ama mouse ile imleci tuttuğum yere doğru ateş etmesini istiyorum. Örnek kod verebilir misiniz? Ve mantığını anlatabilir misiniz?
 
Son düzenleyen: Moderatör:
Çözüm

Çok teşekkürler hocam,
Bu kodun mantığını kavramaya çalışacağım.
İlgin ve yardımların için ayrı ayırdığın vakit için ayrı teşekkür ederim.
Bana göre çok bilgilisiniz ne kadar sürede bu kadar geliştiniz merak ettim

Siz inceleyip düzenleyene kadar denemeye çalışacağım. Teşekkürler beklemedeyim.


Sanırsam mesajım gitmedi dediğinizi anladığım kadarıyla deneyeceğim sizin düzenlediğiniz hali içinde beklemedeyim teşekkürler şimdiden.
/düzenleme = ikinci bir sayfaya geçmişiz yeni anladım yabancıyım buraya baya
 
Son düzenleme:
Beklettiğim için üzgünüm. Kodu şimdi okudum da anlamamanıza şaşmamalı. Kod bildiğiniz spagetti.

Açıkçası işlerim hâlâ bitmedi ve muhtemelen bütün gece onlarla uğraşacağım ama koda baktığım kadarıyla neredeyse tamamını sizin tekrar yazmanız gerekiyor istediğiniz gibi yapabilmeniz için. Örneğin ana class'lar değişecek, tercihen canavar için de ayrı bir class açılacak. Ana döngüdeki kodlar class'ların içine taşınacak. Gereksiz kodlar ve fonksiyonlar değişecek. Ayrıca kodlar dosyalara ayrılacak.

Anlayacağınız, bu kodun üzerinden anlatmaktansa kodu baştan yazmak daha kolay ki bunun için ancak yarın vaktim olabilir.

Bu vakte kadar boşuna beklettiğim için tekrardan üzgünüm.
 

Ne yalan söyleyeyim heyecanla siteyi yenileyip duruyordum mesaj bir şekilde gözümden kaçmış şimdi gördüm bende
Üzgün olmanızı gerektiren bir durum söz konusu olamaz ne kadar teşekkür etsem azdır.
Ben sabırla bekleyeceğim sonuç alabilirsem, sizin yazacağınız kodu anlayıp kavrayabilirsem ve projem için bir adım dahi atabilsem benim için müthiş bir durum.
Kod konusunda kesinlikle haklısınız her yer her yerde benim gibi iki haftalık birinin bunda düzenleme yapması çok zor. İşleriniz için kolaylık diliyorum geri dönüşünüzü dört gözle bekliyorum sağlacakla kalın


Bu kodu dediklerinizi yapınca çalıştırmayı başardım mermiler ekranda sekiyor dışarı çıkmıyor. Siz mi böyle mi yazdınız? Yoksa ben mi bir yerde hata yaptım
 
Son düzenleme:
Bu kodu dediklerinizi yapınca çalıştırmayı başardım mermiler ekranda sekiyor dışarı çıkmıyor. Siz mi böyle mi yazdınız? Yoksa ben mi bir yerde hata yaptım
Ben öyle yapmıştım, onu sağlayan kodun başına bir # yorumu bırakmıştım, istemiyorsanız o kısmı silebilirsiniz.
 

Çok teşekkürler hocam,
Bu kodun mantığını kavramaya çalışacağım.
İlgin ve yardımların için ayrı ayırdığın vakit için ayrı teşekkür ederim.
Bana göre çok bilgilisiniz ne kadar sürede bu kadar geliştiniz merak ettim
 
Çözüm
Rica ederim. Açıkçası çok bilgili olduğumu söylemek hata olur. Şahsen programlamayı iş amaçlı değil de tamamen zevk amaçlı yapanlardanım, dolayısıyla profesyoneller kadar iyi olmam imkânsız. Yaklaşık 4 yıldır Python biliyorum diyebilirim sanırım. Öylesine eğlence amaçlı projeler yapmak için öğrenmiştim, sonra yavaş yavaş bir iki nispeten elle tutulabilir şeyler yazdım ama herhalde 3. seneme tekabül ediyor zamanı. Arada canım sıkıldığı için az biraz C# ve Unity öğrenmişliğim var, şu anda da yine canım sıkıldığı için boş zamanlarımda C++ öğrenmeye çalışıyorum.
 

Anladım hocam, Python konusunda kaynak veya öğrenme şekli açısından tavsiyelerin varsa açığım.
Az çok anladığım kadarıyla bu öğrenme safası da zaten epey uzun, ne kadar çok mesai harcarsan o kadar gelişirsin.
Python'da kendimi tatmin edecek seviyelere gelince bende oyun motorlarını kullanmaya başlayacağım.
 
Anladım hocam, Python konusunda kaynak veya öğrenme şekli açısından tavsiyelerin varsa açığım.
Tek öğrenme şekli proje yapmak. Proje yaptıkça önünüze sürekli sorun çıkacak ve siz de o sorunları çöze çöze kendinizi geliştireceksiniz. Projeden kastımı yanlış anlamayın, illa büyük şeyler olması gerekmiyor. Örneğin işlem önceliklerine dikkat eden bir hesap makinesi, internetten otomatik olarak sevdiğiniz animelerin bölüm bilgilerini çeken bir bot, hatta bu soruyu sormanıza sebep olan basit bir PyGame oyunu da olur. Ayrıca dilin detaylarına hakim olmanın tek yolu ne yazık ki İngilizce. Programlamada ne ile uğraşırsanız uğraşın, hangi dili kullanırsanız kullanın İngilizce eksiği bir yerden sonra sizi sınırlamaya başlayacaktır.

Az çok anladığım kadarıyla bu öğrenme safası da zaten epey uzun, ne kadar çok mesai harcarsan o kadar gelişirsin.
Çok doğru ama kendinizi aşırı zorlamamaya dikkat edin. Şayet sonra sıkılıp birdenbire kodlamayı bırakabiliyorsunuz.

Python'da kendimi tatmin edecek seviyelere gelince bende oyun motorlarını kullanmaya başlayacağım.
Fena fikir değil ancak Python dili genel olarak oyun yapımında kullanılan dillerden çok farklı bir yapıda olduğundan geçiş aşamasında yine bolca zorlanacaksınız. Benim tavsiyem çok geçmeden C ile başlayın ve bir miktar C öğrendikten (C dilinde usta olmanıza gerek yok, sadece temel bilgi bile yeterli olabilir, hatta C'yi temelli es geçebilirsiniz) sonra C++ öğrenmeye başlayın. Eğer Unity kullanacaksanız direkt olarak C# da öğrenebilirsiniz.
 
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için çerezleri kabul etmelisiniz. Daha Fazlasını Öğren.…