RonnyFebrianSaputra MI 1C

  • Home
  • Tutorial Pemograman Web
  • Jaringan Komputer

Game Dengan Python and PyGame

 Ronny Febrian Saputra     Januari 24, 2019     No comments   

Game Dengan Python and PyGame



  Pada blog kali ini saya akan membuat game ular-ular dengan menggunakan bahasa pemograman Python dan juga menggunakan PyGame. Bagi yang belum tau apa itu Python/Pygame bisa di lihat pada postingan saya sebelum nya dengan cara ke HOME / dengan click link berikut --> http://ngoding-gan.blogspot.com/2018/12/mengenal-bahasa-pemograman-python.html untuk PyGame --> http://ngoding-gan.blogspot.com/2019/01/pygame.html

Yang Harus di Persiapkan 

  • Niat
  • Python
  • Pycharm

Yang pertama Dilakukan 

  • Buat folder 
  • Buat File dengan nama snake.py (Bebas)

Codingannya :

import pygame
import sys
import random
import time

class Snake():
    def __init__(self):
        self.position = [100,50]
        self.body = [[100,50 ],[90,50],[80,50]]
        self.direction = "RIGHT"        self.changeDirectionTo = self.direction


    def chageDriTo(self,dir):
        if dir == "RIGHT" and not self.direction== "LEFT":
            self.direction = "RIGHT"        if dir == "LEFT" and not self.direction== "RIGHT":
            self.direction = "LEFT"        if dir == "UP" and not self.direction== "DOWN":
            self.direction = "UP"        if dir == "DOWN" and not self.direction== "UP":
            self.direction = "DOWN"
    def move(self,FoodPos):
        if self.direction == "RIGHT":
            self.position[0] += 10        if self.direction == "LEFT":
            self.position[0] -= 10        if self.direction == "UP":
            self.position[1] -= 10        if self.direction == "DOWN":
            self.position[1] += 10
        self.body.insert(0,list(self.position))
        if self.position == FoodPos:
            return 1        else:
            self.body.pop()
            return 0
    def checkCollision(self):
        if self.position[0] > 490 or self.position[0]< 0:
            return 1        elif self.position[1] > 490 or self.position[1] < 0:
            return 1        for bodyPart in self.body[1:]:
            if self.position == bodyPart:
                return 1            return 0    def getHeadPos(self):
        return self.position

    def getBody(self):
        return self.body

class FoodSpawer():
    def __init__(self):
        self.position = [random.randrange(1,50)*10,random.randrange(1,50)*10]
        self.isFoodOnScreen = True
    def spawnFood(self):
        if self.isFoodOnScreen == False:
            self.position = [random.randrange(1,50)*10,random.randrange(1,50)*10]
            self.isFoodOnScreen = True        return self.position

    def setFoodScreen(self,b):
        self.isFoodOnScreen = b

window = pygame.display.set_mode((500,500))
pygame.display.set_caption("WoW Snake")
fps = pygame.time.Clock()

score = 0
snake = Snake()
foodSpawner = FoodSpawer()

def gameOver():
    pygame.quit()
    sys.exit()

while True:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            gameOver();
        elif event.type == pygame.KEYDOWN:
            if event.key == pygame.K_RIGHT:
                snake.chageDriTo('RIGHT')
            if event.key == pygame.K_UP:
                snake.chageDriTo('UP')
            if event.key == pygame.K_DOWN:
                snake.chageDriTo('DOWN')
            if event.key == pygame.K_LEFT:
                snake.chageDriTo('LEFT')

    foodPos = foodSpawner.spawnFood()
    if(snake.move(foodPos)==1):
        score+=1        foodSpawner.setFoodScreen(False,)

    window.fill(pygame.Color(225,225,225))
    for pos in snake.getBody():
        pygame.draw.rect(window,pygame.Color(0,225,0),pygame.Rect(pos[0],pos[1],10,10))
    pygame.draw.rect(window, pygame.Color(225,0,0), pygame.Rect(foodPos[0], foodPos[1], 
    10, 10))

    if(snake.checkCollision()==1):
        gameOver()
    pygame.display.set_caption("Wow Snake | Score:" + str(score))
    pygame.display.flip()
    fps.tick(24)
    print(score)\




    HASIL NYA SEBAGAI BERIKUT







  • Share This:  
  •  Facebook
  •  Twitter
  •  Google+
  •  Stumble
  •  Digg
Kirimkan Ini lewat EmailBlogThis!Bagikan ke XBerbagi ke Facebook
Ronny Febrian Saputra
Nama Saya Ronny Febrian Saputra Umur 16 thn Hobi Main Asal Sekolah SMKN 4 Payakumbuh Alamat Harau
Posting Lebih Baru Posting Lama Beranda

0 Comments:

Posting Komentar

Popular Posts

  • Pengertian Dual Boot Serta Kelebihan dan Kekurangan
    Pengertian Dual Boot Serta Kelebihan dan Kekurangan  Apa itu Dual Boot? Lalu apa saja kelebihan dan kekurangannya? Adakah manfaat...
  • Game Dengan Python and PyGame
    Game Dengan Python and PyGame   Pada blog kali ini saya akan membuat game ular-ular dengan menggunakan bahasa pemograman Python dan...
  • Kelebihan dan Kekurangan OpenSuse
    Kelebihan dan Kekurangan OpenSuse Berbicara Linux tentu tidak ada habisnya, mengingat sistem operasi yang satu ini memiliki varian...
  • Pengenalan Bahasa Pemograman Javascript
    Javascript Apa Itu Javascript? Javascript adalah bahasa pemograman yang awal nya di rancang untuk berjalan di atas Browser,sintax...
  • Object-Oriented Programming
    Object-Oriented Programming Apa itu Object-Oriented Programming (OOP)? Pemrograman berorientasi objek, atau OOP singkatnya, adalah...
  • Kelebihan Text Editor Atom
    1. Terhubung dengan project Github Kelebihan Text Editor Atom yang pertama, dengan menggunakan text editor Atom, kita bisa langsung ter...
  • Cara Penggunaan Return Value pada Pemrograman Python.
    Cara Penggunaan Return Value pada Pemrograman Python Pada tutorial kali ini kita akan membahas tentang  Cara Penggunaan Return V...
  • Mengenal Apa itu Arduino
        Baiklah disni kita akan belajar tentang sebuah  Microkontroller  yaitu  Arduino     Arduino          adalah pengendali mikro...
  • Hosting Domain
    Domain         Domain adalah Buat penamaan website supaya lebih mudah di cari oleh pengguna           Contoh Domain  ...
  • Perulangan Pada Python
    Perulangan ( For ) Perualangan dalam bahasa pemrograman berfungsi menyuruh komputer melakukan sesuatu secara berulang-ulang. Terda...

Recent Posts

Unordered List

Pages

  • Beranda
  • Tutorial Pemograman Web

Text Widget

Blog Archive

  • ►  2021 (15)
    • ►  Juni (6)
    • ►  Mei (1)
    • ►  April (4)
    • ►  Maret (4)
  • ▼  2019 (39)
    • ►  Februari (16)
    • ▼  Januari (23)
      • Pengertian Dual Boot Serta Kelebihan dan Kekurangan
      • Framework Flask
      • 5 Alasan Programmer Memilih Sistem Operasi Linux
      • Macam-Macam Framework Python
      • 10 Bahasa pemogram yang populer di indonesia
      • Game Dengan Python and PyGame
      • PyGame
      • Game Tanya Jawab With Python
      • Membuat Program Pembagian Dengan Bahasa Pemograman...
      • HALAL NETWORK INTERNATIONAL (HNI)
      • Mengenal Variable Global dan Variable Local pada P...
      • Framework
      • Jenis-Jenis Database
      • Pengenalan Database
      • Kelebihan Dan Kekurangan Bahasa Pemograman PHP
      • Pengenalan Bahasa Pemograman PHP
      • Pengertian Framework Django
      • Kelebihan dan Kekurangan Bahasa Pemograman Python
      • Jenis-Jenis Sensor Arduino
      • Perulangan Pada Python
      • Object-Oriented Programming
      • Cara Penggunaan Return Value pada Pemrograman Python.
      • Mengenal IF dan Else pada Python
  • ►  2018 (17)
    • ►  Desember (17)

Sample Text

Copyright © ronnyfebriansaputra | Powered by Blogger
Design by Hardeep Asrani | Blogger Theme by NewBloggerThemes.com | Distributed By Gooyaabi Templates