Python'da Yılan Oyunu yapımı

1wexter1

Katılımcı Üye
24 Eyl 2021
921
647
Uzayda1yer
Başlıkta da gördüğünüz gibi Vazgeçilmez olan Yılan Oyununu yapacağız Fazla uzatmadan Kodlara geçelim:
Bu arada kodları açıklayamayacağım çünkü 3 saattir kod yazıyorum ve kodları açıklamaya zamanım yetmez.


148 SATIRLIK KOD;

Python:
import turtle
import random
import time

screen = turtle.Screen()
screen.title("YILAN OYUNU")
screen.setup(width=700, height=700)
screen.tracer(0)
screen.bgcolor("#1d1d1d")


turtle.speed(5)
turtle.pensize(4)
turtle.penup()
turtle.goto(-310,250)
turtle.pendown()
turtle.color("red")
turtle.forward(600)
turtle.right(90)
turtle.forward(500)
turtle.right(90)
turtle.forward(600)
turtle.right(90)
turtle.forward(500)
turtle.penup()
turtle.hideturtle()


score =0;
delay = 0.1


snake = turtle.Turtle()
snake.speed()
snake.shape("square")
snake.color("green")
snake.penup()
snake.goto(0,0)
snake.direction ='stop'


fruit = turtle.Turtle()
fruit.speed(0)
fruit.shape("square")
fruit.color("white")
fruit.penup()
fruit.goto(30,30)

old_fruit = []

scoring = turtle.Turtle()
scoring.color("white")
scoring.penup()
scoring.hideturtle()
scoring.goto(0,300)
scoring.write("Score: ", align="center", font=("Courier",24,"bold"))


def snake_go_up():
    if snake.direction != "down":
        snake.direction = "up"

def snake_go_down():
    if snake.direction != "up":
        snake.direction = "down"

def snake_go_left():
    if snake.direction != "right":
        snake.direction = "left"

def snake_go_right():
    if snake.direction != "left":
        snake.direction = "right"

def snake_move():
    if snake.direction == "up":
        y = snake.ycor()
        snake.sety(y + 20)
    if snake.direction == "down":
        y = snake.ycor()
        snake.sety(y - 20)
    if snake.direction == "left":
        x = snake.xcor()
        snake.setx(x - 20)
    if snake.direction == "right":
        x = snake.xcor()
        snake.setx(x + 20)


screen.listen()
screen.onkeypress(snake_go_up, "Up")
screen.onkeypress(snake_go_down, "Down")
screen.onkeypress(snake_go_left, "Left")
screen.onkeypress(snake_go_right, "Right")


while True:
    screen.update()

    if snake.distance(fruit) < 20:
        x = random.randint(-290, 270)
        y = random.randint(-240, 240)
        fruit.goto(x,y)
        scoring.clear()
        score += 1
        scoring.write("Score: {}".format(score), align="center", font=("Courier", 24,"bold"))
        delay -= 0.001

        new_fruit = turtle.Turtle()
        new_fruit.speed(0)
        new_fruit.shape("square")
        new_fruit.color("red")
        new_fruit.penup()
        old_fruit.append(new_fruit)


    for index in range(len(old_fruit)-1, 0, -1):
        a = old_fruit[index -1].xcor()
        b = old_fruit[index -1].ycor()

        old_fruit[index].goto(a,b)

    if len(old_fruit) > 0:
        a = snake.xcor()
        b = snake.ycor()
        old_fruit[0].goto(a, b)
    snake_move()


    if snake.xcor() > 280 or snake.xcor() < -300 or snake.ycor() > 240 or snake.ycor() < -240:
        time.sleep(1)
        screen.clear()
        screen.bgcolor("turquoise")
        scoring.goto(0,0)
        scoring.write("    Game Over \n Your score is {}".format(score), align="center", font=("Courier", 30,"bold"))


        for food in old_fruit:
            if food.distance(snake) < 20:
                time.sleep(1)
                screen.clear()
                screen.bgcolor("turquoise")
                scoring.goto(0, 0)
                scoring.write("    Game Over \n Your score is {}".format(score), align="center",font=("Courier", 30, "bold"))

    time.sleep(delay)

turtle.Terminator

Evet bu kadardı konuyu fazla uzun tutmamaya çalıştım eğer siz oyunu geliştirirseniz siz de paylaşın.


NOT: Bu konu alttaki videodan alıntıdır ama kanal sahibi kodları paylaşmamış ondan dolayı bütün kodları kendim yazdım. Türkçeye çevirip yazacaktım ama kodun orijinal halini isteyeceğinizi düşündüğümden çevirmedim.


İYİ EĞLENCELERR.....
 

Helmsys

Yazılım Ekibi Kıdemli
16 Mar 2022
1,492
1,649
Alıntı yaptığını açıklayamayanlar var inanılmaz. Aralarından mükemmel ayrılıyorsun. Ben alıntıdır ibaresini ve kaynağıda belirttiğin için bizzat teşekkür ediyorum.
Elinize sağlık.
 

1wexter1

Katılımcı Üye
24 Eyl 2021
921
647
Uzayda1yer
Alıntı yaptığını açıklayamayanlar var inanılmaz. Aralarından mükemmel ayrılıyorsun. Ben alıntıdır ibaresini ve kaynağıda belirttiğin için bizzat teşekkür ediyorum.
Elinize sağlık.
Asıl ben teşekkür ederim değerli yorumun için.
evet bende rastlıyorum bazen alıntı yapıp bunu açıklamıyorlar ve anlamıyorum yani sen eğer bu forumda bir şey paylaşıyorsan forumda bilgi paylaşmak için
ama alıntı yaptıysan eğer bu bilgiyi forum için yararlı bulduğun için paylaşıyorsundur ve bunu belirtirsin yani ama neden belirtmediklerini bende tam olarak anlamıyorum.
 

1wexter1

Katılımcı Üye
24 Eyl 2021
921
647
Uzayda1yer
Eline emeğine sağlık dostum
Teşekkür ederim Cixx 🥰

Arkadaşlar yeni fark ettim oyunda önemli bir nokta es geçilmiş bildiğiniz gibi Yılan kendi kuyruğuna vs. dokunduğunda normalde oyun biter ama bunda yılan kendi kuyruğunun içinden geçip oyun devam edebiliyor ve biraz uğraştım bunun için ama beceremedim eğer bunu yapabilecek var ise yorumlarda kodu paylaşabilir mi?
 

Helmsys

Yazılım Ekibi Kıdemli
16 Mar 2022
1,492
1,649
Arkadaşlar yeni fark ettim oyunda önemli bir nokta es geçilmiş bildiğiniz gibi Yılan kendi kuyruğuna vs. dokunduğunda normalde oyun biter ama bunda yılan kendi kuyruğunun içinden geçip oyun devam edebiliyor ve biraz uğraştım bunun için ama beceremedim eğer bunu yapabilecek var ise yorumlarda kodu paylaşabilir mi?
Videoda yılan kendine çarptığında oyun bitiyor. Orayı es geçmiş olabilir misiniz ?
27:55 civarlarını izleyin.
 

Rocemis

Üye
24 May 2022
145
52
Başlıkta da gördüğünüz gibi Vazgeçilmez olan Yılan Oyununu yapacağız Fazla uzatmadan Kodlara geçelim:
Bu arada kodları açıklayamayacağım çünkü 3 saattir kod yazıyorum ve kodları açıklamaya zamanım yetmez.


148 SATIRLIK KOD;

Python:
import turtle
import random
import time

screen = turtle.Screen()
screen.title("YILAN OYUNU")
screen.setup(width=700, height=700)
screen.tracer(0)
screen.bgcolor("#1d1d1d")


turtle.speed(5)
turtle.pensize(4)
turtle.penup()
turtle.goto(-310,250)
turtle.pendown()
turtle.color("red")
turtle.forward(600)
turtle.right(90)
turtle.forward(500)
turtle.right(90)
turtle.forward(600)
turtle.right(90)
turtle.forward(500)
turtle.penup()
turtle.hideturtle()


score =0;
delay = 0.1


snake = turtle.Turtle()
snake.speed()
snake.shape("square")
snake.color("green")
snake.penup()
snake.goto(0,0)
snake.direction ='stop'


fruit = turtle.Turtle()
fruit.speed(0)
fruit.shape("square")
fruit.color("white")
fruit.penup()
fruit.goto(30,30)

old_fruit = []

scoring = turtle.Turtle()
scoring.color("white")
scoring.penup()
scoring.hideturtle()
scoring.goto(0,300)
scoring.write("Score: ", align="center", font=("Courier",24,"bold"))


def snake_go_up():
    if snake.direction != "down":
        snake.direction = "up"

def snake_go_down():
    if snake.direction != "up":
        snake.direction = "down"

def snake_go_left():
    if snake.direction != "right":
        snake.direction = "left"

def snake_go_right():
    if snake.direction != "left":
        snake.direction = "right"

def snake_move():
    if snake.direction == "up":
        y = snake.ycor()
        snake.sety(y + 20)
    if snake.direction == "down":
        y = snake.ycor()
        snake.sety(y - 20)
    if snake.direction == "left":
        x = snake.xcor()
        snake.setx(x - 20)
    if snake.direction == "right":
        x = snake.xcor()
        snake.setx(x + 20)


screen.listen()
screen.onkeypress(snake_go_up, "Up")
screen.onkeypress(snake_go_down, "Down")
screen.onkeypress(snake_go_left, "Left")
screen.onkeypress(snake_go_right, "Right")


while True:
    screen.update()

    if snake.distance(fruit) < 20:
        x = random.randint(-290, 270)
        y = random.randint(-240, 240)
        fruit.goto(x,y)
        scoring.clear()
        score += 1
        scoring.write("Score: {}".format(score), align="center", font=("Courier", 24,"bold"))
        delay -= 0.001

        new_fruit = turtle.Turtle()
        new_fruit.speed(0)
        new_fruit.shape("square")
        new_fruit.color("red")
        new_fruit.penup()
        old_fruit.append(new_fruit)


    for index in range(len(old_fruit)-1, 0, -1):
        a = old_fruit[index -1].xcor()
        b = old_fruit[index -1].ycor()

        old_fruit[index].goto(a,b)

    if len(old_fruit) > 0:
        a = snake.xcor()
        b = snake.ycor()
        old_fruit[0].goto(a, b)
    snake_move()


    if snake.xcor() > 280 or snake.xcor() < -300 or snake.ycor() > 240 or snake.ycor() < -240:
        time.sleep(1)
        screen.clear()
        screen.bgcolor("turquoise")
        scoring.goto(0,0)
        scoring.write("    Game Over \n Your score is {}".format(score), align="center", font=("Courier", 30,"bold"))


        for food in old_fruit:
            if food.distance(snake) < 20:
                time.sleep(1)
                screen.clear()
                screen.bgcolor("turquoise")
                scoring.goto(0, 0)
                scoring.write("    Game Over \n Your score is {}".format(score), align="center",font=("Courier", 30, "bold"))

    time.sleep(delay)

turtle.Terminator

Evet bu kadardı konuyu fazla uzun tutmamaya çalıştım eğer siz oyunu geliştirirseniz siz de paylaşın.


NOT: Bu konu alttaki videodan alıntıdır ama kanal sahibi kodları paylaşmamış ondan dolayı bütün kodları kendim yazdım. Türkçeye çevirip yazacaktım ama kodun orijinal halini isteyeceğinizi düşündüğümden çevirmedim.


İYİ EĞLENCELERR.....
Yararlı İçerik Eline sağlık
 

1wexter1

Katılımcı Üye
24 Eyl 2021
921
647
Uzayda1yer


Yararlı İçerik Eline sağlık
Hepinize teşekkür ederim ilginiz için.

Videoda yılan kendine çarptığında oyun bitiyor. Orayı es geçmiş olabilir misiniz ?
27:55 civarlarını izleyin.
Evet orayı es geçmişim.
çok teşekkür ederim iyi yakalamışsın.
 

ATE$

Moderasyon Ekibi Çaylak
9 Kas 2021
317
128
Siber Şubede geziyor.
Başlıkta da gördüğünüz gibi Vazgeçilmez olan Yılan Oyununu yapacağız Fazla uzatmadan Kodlara geçelim:
Bu arada kodları açıklayamayacağım çünkü 3 saattir kod yazıyorum ve kodları açıklamaya zamanım yetmez.


148 SATIRLIK KOD;

Python:
import turtle
import random
import time

screen = turtle.Screen()
screen.title("YILAN OYUNU")
screen.setup(width=700, height=700)
screen.tracer(0)
screen.bgcolor("#1d1d1d")


turtle.speed(5)
turtle.pensize(4)
turtle.penup()
turtle.goto(-310,250)
turtle.pendown()
turtle.color("red")
turtle.forward(600)
turtle.right(90)
turtle.forward(500)
turtle.right(90)
turtle.forward(600)
turtle.right(90)
turtle.forward(500)
turtle.penup()
turtle.hideturtle()


score =0;
delay = 0.1


snake = turtle.Turtle()
snake.speed()
snake.shape("square")
snake.color("green")
snake.penup()
snake.goto(0,0)
snake.direction ='stop'


fruit = turtle.Turtle()
fruit.speed(0)
fruit.shape("square")
fruit.color("white")
fruit.penup()
fruit.goto(30,30)

old_fruit = []

scoring = turtle.Turtle()
scoring.color("white")
scoring.penup()
scoring.hideturtle()
scoring.goto(0,300)
scoring.write("Score: ", align="center", font=("Courier",24,"bold"))


def snake_go_up():
    if snake.direction != "down":
        snake.direction = "up"

def snake_go_down():
    if snake.direction != "up":
        snake.direction = "down"

def snake_go_left():
    if snake.direction != "right":
        snake.direction = "left"

def snake_go_right():
    if snake.direction != "left":
        snake.direction = "right"

def snake_move():
    if snake.direction == "up":
        y = snake.ycor()
        snake.sety(y + 20)
    if snake.direction == "down":
        y = snake.ycor()
        snake.sety(y - 20)
    if snake.direction == "left":
        x = snake.xcor()
        snake.setx(x - 20)
    if snake.direction == "right":
        x = snake.xcor()
        snake.setx(x + 20)


screen.listen()
screen.onkeypress(snake_go_up, "Up")
screen.onkeypress(snake_go_down, "Down")
screen.onkeypress(snake_go_left, "Left")
screen.onkeypress(snake_go_right, "Right")


while True:
    screen.update()

    if snake.distance(fruit) < 20:
        x = random.randint(-290, 270)
        y = random.randint(-240, 240)
        fruit.goto(x,y)
        scoring.clear()
        score += 1
        scoring.write("Score: {}".format(score), align="center", font=("Courier", 24,"bold"))
        delay -= 0.001

        new_fruit = turtle.Turtle()
        new_fruit.speed(0)
        new_fruit.shape("square")
        new_fruit.color("red")
        new_fruit.penup()
        old_fruit.append(new_fruit)


    for index in range(len(old_fruit)-1, 0, -1):
        a = old_fruit[index -1].xcor()
        b = old_fruit[index -1].ycor()

        old_fruit[index].goto(a,b)

    if len(old_fruit) > 0:
        a = snake.xcor()
        b = snake.ycor()
        old_fruit[0].goto(a, b)
    snake_move()


    if snake.xcor() > 280 or snake.xcor() < -300 or snake.ycor() > 240 or snake.ycor() < -240:
        time.sleep(1)
        screen.clear()
        screen.bgcolor("turquoise")
        scoring.goto(0,0)
        scoring.write("    Game Over \n Your score is {}".format(score), align="center", font=("Courier", 30,"bold"))


        for food in old_fruit:
            if food.distance(snake) < 20:
                time.sleep(1)
                screen.clear()
                screen.bgcolor("turquoise")
                scoring.goto(0, 0)
                scoring.write("    Game Over \n Your score is {}".format(score), align="center",font=("Courier", 30, "bold"))

    time.sleep(delay)

turtle.Terminator

Evet bu kadardı konuyu fazla uzun tutmamaya çalıştım eğer siz oyunu geliştirirseniz siz de paylaşın.


NOT: Bu konu alttaki videodan alıntıdır ama kanal sahibi kodları paylaşmamış ondan dolayı bütün kodları kendim yazdım. Türkçeye çevirip yazacaktım ama kodun orijinal halini isteyeceğinizi düşündüğümden çevirmedim.


İYİ EĞLENCELERR.....
Teşekkürler
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.