Pāʻani Snake i ka hoʻohana ʻana i ka Module Python

Manaʻo wau e kōkua kēia ʻatikala iā ʻoe inā makemake ʻoe i ka pāʻani o nā nahesa. E hele au iā ʻoe ma nā ʻanuʻu o ka hana ʻana i kahi pāʻani maʻalahi i kēia pou e ʻike maʻalahi ai nā mea hou Python e hana. ʻO ka waihona PyGame ma Python, ʻo ia kahi pūʻolo Python a mākou e hoʻohana ai e hoʻomohala i nā pāʻani, ʻo ia kekahi o nā ala like ʻole e hoʻolālā i ka pāʻani.

ʻO ka hoʻohana ʻana i ka honu waihona kahi hoʻolālā hou. Hiki i nā mea hoʻohana ke hana i nā kiʻi a huki i nā palapala ma ka canvas pūnaewele me ka mahalo i kēia module, i hoʻokomo mua ʻia me Python. No laila, ea, ma keia kumu a'o, e hoʻohana mākou i ka waihona honu e kūkulu i kā mākou nahesa kumu

Pāʻani Nahesa ma Python

  • module manawa. Hiki i kēia ʻenehana ke nānā i ka nui o nā kekona i hala mai ka manawa ma mua.
  • ka pāʻani nahesa Random module – Hoʻokumu ia i nā helu helu ma Python.

ʻO nā mea hana ʻē aʻe āu e makemake ai e hoʻopili i kahi mea hoʻoponopono no ka kikokikona āu e makemake ai. E hoʻohana wau i ka VSCode i kēia pou. Ae nō hoʻi, pono ʻoe e hoʻonohonoho iā Python 3 ma kāu kelepona inā ʻaʻole ʻoe i hoʻokomo ʻia. Hiki iā ʻoe ke hoʻoiho e hoʻokomo i ka Geekflare Compiler. He mea leʻaleʻa paha kēia!

Contents

Pehea ka hana o ka pāʻani nahesa

Pono nā mea pāʻani e hoʻopunipuni i ka nahesa e loaʻa i ka meaʻai i hōʻike ʻia ma ka pale i mea e loaʻa ai ka helu maikaʻi loa i kēia pāʻani.. Hoʻokele ka mea pāʻani i ka nahesa ma ke kaomi ʻana i kekahi o nā kī kuhikuhi ʻehā e kuhikuhi ana i ke ala e neʻe ai ka nahesa..

E hoʻoneʻe ʻia ka nahesa mai ka pāʻani inā hahau ʻo ia i kahi mea pāʻani a mea paha. ʻO nā kaʻina hana a mākou e hoʻohana ai e pāʻani i kēia pāʻani e neʻe nei i mua.

  • Ke lawe mai nei i loko o kā mākou mau noi i nā modula i hoʻokomo mua ʻia (manawa honu, honu a me ka honu).
  • Hoʻokumu ʻia ka hōʻike pale o ka pāʻani me ka module Turtle.
  • E hoʻonoho i nā kī e hoʻomalu i ka neʻe ʻana o ka nahesa a puni ka pale.
  • Ka hoʻokō ʻana o ka pāʻani.

E hana i ka faila snakegame.py kahi e hoʻohui ai mākou i kahi papahana hoʻokō.

Ke lawe mai nei i nā modula

Hoʻouka kēia ʻāpana o ka papahana i ka manawa i hoʻokomo ʻia e Python, honu, a me nā modules random. Eia kekahi, nā helu paʻamau no ka helu mua o ka mea pāʻani, ka helu kiʻekiʻe i hiki iā lākou ke loaʻa, a e wehewehe ʻia ka nui o ka manawa e hoʻopaneʻe ai ka mea pāʻani ma waena o kēlā me kēia neʻe. I mea e hoʻoholo ai i ka nui o ka manawa i hoʻopaneʻe ʻia, pono ka module manawa.

import turtle
import random
import time

player_score = 0
highest_score = 0
delay_time = 0.1

Ke hana nei i ka pale o ka pāʻani

ʻO ka module honu a mākou e hoʻokomo ai e hiki iā mākou ke hana i kahi pale aniani e lilo i ka pale puka makani o ka pāʻani. Hiki iā mākou ke kūkulu i ke kino o ka nahesa, a me na mea ai a ka nahesa e ai ai. E hōʻike pū ka pale i ka helu o ka tracker o ka mea pāʻani.

# window screen created
wind = turtle.Screen()
wind.title("Snake Maze")
wind.bgcolor("red")

# The screen size
wind.setup(width=600, height=600)


# creating the snake 
snake = turtle.Turtle()
snake.shape("square")
snake.color("black")
snake.penup()
snake.goto(0, 0)
snake.direction = "Stop"

# creating the food
snake_food = turtle.Turtle()
shapes = random.choice('triangle','circle')
snake_food.shape(shapes)
snake_food.color("blue")
snake_food.speed(0)
snake_food.penup()
snake_food.goto(0, 100)

pen = turtle.Turtle()
pen.speed(0)
pen.shape('square')
pen.color('white')
pen.penup()
pen.hideturtle()
pen.goto(0, 250)
pen.write("Your_score: 0 Highest_Score : 0", align="center", 
font=("Arial", 24, "normal"))
turtle.mainloop()

Hoʻokumu ke code ma ka ʻāpana i ʻōlelo ʻia ma mua i ka pale honu ma mua o ka hoʻohui ʻana i kahi inoa mua a me ka waihoʻoluʻu backdrop.. E koho mua mākou i ka nui ma mua o ke kahakaha ʻana i ke ʻano o ka nahesa ma kā mākou kāwele kikohoʻe. I mea e pale ai i ka hana ʻia ʻana o nā laina i ka wā e neʻe ana ka honu, ʻo ke ʻano penip e ʻohi i ka peni a ka honu.

Me ka hoʻohana ʻana i kāna ʻenehana goto, Hiki ke kuhikuhi ʻia ka honu i kahi kūpono me ka hoʻohana ʻana i nā hoʻonohonoho. ʻO ka meaʻai a ka nahesa e ʻai ai, na mākou i hana.

I kēlā me kēia manawa e ʻohi ai ka nahesa i ka ʻai, makemake mākou e hōʻike i ka helu o kēlā me kēia mea pāʻani. Makemake mākou e hōʻike i ka helu kiʻekiʻe loa i loaʻa i ke kanaka i ka wā o ka pāʻani. No keia kumu, hoʻohana mākou i nā peni. E like me ka peni, kakau. E wehewehe i kahi ala e hoʻopau ai.

Ka hoʻonohonoho ʻana i nā kī kuhikuhi no ka nahesa

Ma keia hihia, hoʻolālā mākou i kekahi mau kī e hoʻomalu i ka neʻe o ka nahesa ma luna o ka pale. E hoʻohana mākou i ka leka “L” e like me ke kī hema, “R” no ka hema, “U” no luna, a me ka “ʻO D” no lalo. E hoʻokō ʻia kēia mau ʻōlelo aʻo ma ke kāhea ʻana i ka nahesa me ka hoʻohana ʻana i ka hana kuhikuhi a ka honu.

E hoʻokomo i nā hiʻohiʻona code ma kāu.

# Assigning directions
def moveleft():
    if snake.direction != "right":
        snake.direction = "left"

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

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

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

def move():
    if snake.direction == "up":
        coord_y = snake.ycor()
        snake.sety(coord_y+20)

    if snake.direction == "down":
        coord_y = snake.ycor()
        snake.sety(coord_y-20)

    if snake.direction == "right":
        coord_x = snake.xcor()
        snake.setx(coord_x+20)

    if snake.direction == "left":
        coord_x = snake.xcor()
        snake.setx(coord_x-20)

wind.listen()
wind.onkeypress(moveleft, 'L')
wind.onkeypress(moveright, 'R')
wind.onkeypress(moveup, 'U')
wind.onkeypress(movedown, 'D')

Neʻe() ʻO ka hana i ʻōlelo ʻia ma luna nei e ʻae i ka neʻe ʻana o ka nahesa i ke kūlana i kuhikuhi ʻia i loko o kahi coordinate i kuhikuhi ʻia. E hoʻolohe() hana ma ke ʻano he mea hoʻolohe hanana e kāhea ana i nā ala e alakaʻi ai i ka nahesa i kekahi ʻaoʻao i ka wā e kaomi ai ka mea hoʻohana i ke pihi..

ʻO ka hoʻokōʻana i ka pāʻani pāʻani ma keʻano o ka nahesa

Pono e hoʻololi ʻia ka pāʻani i kahi hana ola ma hope o ka hoʻokumu ʻia ʻana o ke ʻano kumu. ʻO kēia ka mea e komo ai:

  • e hoʻolōʻihi i ka lōʻihi o ka nahesa me kahi kala ʻokoʻa i kēlā me kēia manawa e ʻai ai i ka meaʻai.
  • ke ʻai ka nahesa i ka ʻai, hoʻonui ʻia ka helu o ka mea pāʻani, a laila ʻike ʻia ka helu kiʻekiʻe.
  • Hiki ke hoʻopaʻa ʻia ka nahesa no ka pale ʻana mai ka paʻi ʻana i ka paia a i ʻole kona kino ponoʻī.
  • Ma hope o ka hahau ʻana i ka nahesa, hoʻomau ka pāʻani.
  • Ma ka pale nae, ʻo ia ka helu kiʻekiʻe loa o ka mea pāʻani ʻoiai ua hoʻihoʻi ʻia ka helu o ka mea pāʻani i ka ʻole ke hoʻomaka hou ka pāʻani.
segments = []

#Implementing the gameplay
while True:
    wind.update()
    if snake.xcor() > 290 or snake.xcor() < -290 or snake.ycor() > 290 or snake.ycor() < -290:
        time.sleep(1)
        snake.goto(0, 0)
        snake.direction = "Stop"
        snake.shape("square")
        snake.color("green")

        for segment in segments:
            segment.goto(1000, 1000)
            segments.clear()
            player_score = 0
            delay_time = 0.1
            pen.clear()
            pen.write("Player's_score: {} Highest_score: {}".format(player_score, highest_score), align="center", font=("Arial", 24, "normal"))

        if snake.distance(snake_food) < 20:
            coord_x = random.randint(-270, 270)
            coord_y = random.randint(-270, 270)
            snake_food.goto(coord_x, coord_y)

            # Adding segment
            added_segment = turtle.Turtle()
            added_segment.speed(0)
            added_segment.shape("square")
            added_segment.color("white")
            added_segment.penup()
            segments.append(added_segment)
            delay_time -= 0.001
            player_score += 5

            if player_score > highest_score:
                highest_score = player_score
                pen.clear()
                pen.write("Player's_score: {} Highest_score: {}".format(player_score, highest_score), align="center", font=("Arial", 24, "normal"))

    # checking for collisions
    for i in range(len(segments)-1, 0, -1):
        coord_x = segments[i-1].xcor()
        coord_y = segments[i-1].ycor()
        segments[i].goto(coord_x, coord_y)

    if len(segments) > 0:
        coord_x = snake.xcor()
        coord_y = snake.ycor()
        segments[0].goto(coord_x, coord_y)
    move()

    for segment in segments:
        if segment.distance(snake) < 20:
            time.sleep(1)
            snake.goto(0, 0)
            snake.direction = "stop"
            snake.color('white')
            snake.shape('square')

            for segment in segments:
                segment.goto(1000, 1000)
                segment.clear()
                player_score = 0
                delay_time = 0.1
                pen.clear()
                pen.write("Player's_score: {} Highest_score: {}".format(player_score, highest_score), align="center", font=("Arial", 24, "normal"))

     time.sleep(delay_time)

turtle.mainloop()

Ma ka snippet code ma luna a mākou i hoʻohana ai, ua hāʻawi mākou i kahi wahi no ka ʻai a ka nahesa ma ka pale. I kēlā me kēia manawa e ʻai ai ka nahesa i ka meaʻai, ulu ke kino i ke kala ʻokoʻa, keʻokeʻo i kēia manawa, e maopopo ai ka okoa ana o kona ulu ana.

Ke hōʻiliʻili ka nahesa i ka meaʻai a ʻaʻole kuʻi, hōʻike ʻia ka meaʻai ma kahi wahi ʻokoʻa i loko o ka 270-degree coordinate area o ka nui o ka pale.. I kēlā me kēia manawa e ʻai ai ka nahesa, piʻi ka helu o ka mea pāʻani e 5. Inā pili ka nahesa i ka hui ʻana me ka mea pāʻani, ua hoʻonohonoho hou ʻia kā lākou helu 0 a mālama ka pale i kāna helu kiʻekiʻe.

Panina Manaʻo

ʻO ka waihona honu he ala leʻaleʻa a maʻalahi e hana i ka pāʻani nahesa a mākou i ʻike ai ma kēia kumu aʻo. Hiki iā ʻoe ke hoʻohana i ka waihona PyGame ma Python e hoʻokō i ka pāʻani like. E ʻike pehea ʻoe e hoʻohana ʻokoʻa ai i ka pāʻani ma ka heluhelu ʻana i kēia mau mea PyGame kuhikuhi.

Hoʻoiho i ka Snake Rivals Fun Snake Game

Snake Run Race 3D Running Game

Hoʻoiho iā Snake.io - Nā Pāʻani Leʻaleʻa .io