[PYTHON] Ich habe mit Sense HAT ein gefallenes Monospiel gemacht

Ich habe ein Spiel mit Raspberry Pi für Kinder gemacht. Dient auch als Sense HAT-Praxis. Obere Hälfte von Risse Es ist ein Spiel wie.

Es ist ein Artikel, den ich wirklich nur zeigen wollte, dass ich es geschafft habe. .. ..

IMG_5732.jpg

from sense_hat import SenseHat, ACTION_PRESSED, ACTION_HELD, ACTION_RELEASED
from time import sleep
from random import randint
from copy import copy

#Sense HAT-Initialisierung
sense = SenseHat()
sense.clear()

red = (255, 0, 0)
blue = (0, 0, 255)
yellow=(255,255,0)
purple=(128,0,128)
green=(0,255,0)
indigg=(75,0,130)
orange=(255,128,0)
black=(0,0,0)

#Feste Ausrichtung
sense.set_rotation(0)

#Parametereinstellungen
fall_interval = 3
fall_speed = 0.5
fall_color = orange
fall_num = 8

#Generieren Sie fallende Objekte und speichern Sie sie in einem Array
blocks = list()
for i in range(0,fall_num):
    blocks.append((randint(0,7), 0-i*fall_interval))

bar_init = (3, 6)
bar_color = blue
sense.set_pixel(bar_init[0], bar_init[1], bar_color)
bar = copy(bar_init)

#Verarbeitung, wenn der Joystick nach links geneigt ist (Empfangsblock nach links vorschieben)
def moveleft(event):
    global bar
    if event.action != ACTION_PRESSED:
        return
    sense.set_pixel(bar[0], bar[1], black)
    bar_moved_x = bar[0] - 1
    if bar_moved_x < 0:
        bar_moved_x = 0
    elif bar_moved_x > 7:
        bar_moved_x = 7
    bar = (bar_moved_x, bar[1])
    sense.set_pixel(bar[0], bar[1], bar_color)

#Verarbeitung, wenn der Joystick nach rechts geneigt ist (Empfangsblock nach rechts vorschieben)
def moveright(event):
    global bar
    if event.action != ACTION_PRESSED:
        return
    sense.set_pixel(bar[0], bar[1], black)
    bar_moved_x = bar[0] + 1
    if bar_moved_x < 0:
        bar_moved_x = 0
    elif bar_moved_x > 7:
        bar_moved_x = 7
    bar = (bar_moved_x, bar[1])
    sense.set_pixel(bar[0], bar[1], bar_color)

#Legen Sie eine Funktion im Ereignishandler des Joysticks fest
sense.stick.direction_left = moveleft
sense.stick.direction_right = moveright

#Spiel starten
#Bewegen Sie jedes Mal jeden Block des fallenden Objektarrays nacheinander nach unten.
#Stellen Sie fest, ob das heruntergefallene Objekt den Boden erreicht hat (Fehler) oder der Empfangsblock es empfangen hat (sicher).
#Erfolg, wenn alle Blöcke akzeptiert werden.
blocks_tmp = copy(blocks)
failed = False
while blocks_tmp:
    tmp = list()
    for blk in blocks_tmp:
        blk_moved = (blk[0], blk[1] + 1)
        if blk_moved[1] > 7:
            failed = True
            break
            #sense.set_pixel(blk[0], blk[1], black)
            #continue
        if blk_moved == bar:
            sense.set_pixel(blk[0], blk[1], black)
            continue
        if blk[1] >= 0 and blk[1] < 8:
            sense.set_pixel(blk[0], blk[1], black)
        if blk_moved[1] >= 0 and blk_moved[1] < 8:
            sense.set_pixel(blk_moved[0], blk_moved[1], fall_color)
        blk = blk_moved
        tmp.append(blk_moved)
    print(tmp)
    blocks_tmp = copy(tmp)
    sleep(fall_speed)

#Ergebnisanzeige
if not failed:
    sense.show_letter("O")
else:
    sense.show_letter("X")

sleep(3)
sense.clear()

del bar
del sense

Dann!

Recommended Posts

Ich habe mit Sense HAT ein gefallenes Monospiel gemacht
Ich habe mit Python ein schurkenhaftes Spiel gemacht
〇✕ Ich habe ein Spiel gemacht
Ich habe mit Python ein Bin-Picking-Spiel gemacht
Ich habe mit Python ein Weihnachtsbaum-Beleuchtungsspiel gemacht
Ich habe mit Python eine Lotterie gemacht.
Ich habe mit Python einen Daemon erstellt
Ich habe ein einfaches Tippspiel mit tkinter of Python gemacht
Ich habe mit Tkinter of Python ein Puzzlespiel (wie) gemacht
Ich habe mit Python eine Hex-Map erstellt
Ich habe einen Hanko-Generator mit GAN gemacht
Ich habe einen Pokerspielserver Chat-Holdem mit Websocket mit Python erstellt
Ich habe mit Python einen einfachen Blackjack gemacht
Ich habe mit Python eine Einstellungsdatei erstellt
Ich habe eine WEB-Bewerbung bei Django gemacht
Ich habe mit Python einen Neuronensimulator erstellt
Ich habe einen Stempelersatzbot mit Linie gemacht
Ich habe mit Python eine Bot-Wettervorhersage gemacht.
Ich habe eine GUI-App mit Python + PyQt5 erstellt
Ich habe versucht, mit Python einen Twitter-Blocker für faule Mädchen zu machen
Ich möchte ein Spiel mit Python machen
[Python] Ich habe mit Tkinter einen Youtube Downloader erstellt.
Ich habe eine einfache Brieftasche aus Bitcoin mit Pycoin gemacht
Ich habe einen LINE Bot mit Serverless Framework erstellt!
Ich habe mit Numpy eine Grafik mit Zufallszahlen erstellt
Mattermost Bot mit Python gemacht (+ Flask)
[AWS] Ich habe BOT mit LINE WORKS daran erinnert
Ich habe einen Twitter BOT mit GAE (Python) gemacht (mit einer Referenz)
Ich habe mit LINE Bot ein Haushaltsbuch für Bot erstellt
Ich habe mit Play with Docker einen gebrauchsfertigen Syslog-Server erstellt
Ich habe mit Tkinter ein Fenster für die Protokollausgabe erstellt
Ich habe mit Python eine App für die Benachrichtigung über Netznachrichten erstellt
Ich habe eine Python3-Umgebung unter Ubuntu mit direnv erstellt.
Ich habe versucht, LINE BOT mit Python und Heroku zu machen
Ich habe mit Ren’py ein Einführungsspiel für das Schulfest gemacht
Ich habe einen Blackjack mit Python gemacht!
Ich habe einen Python-Text gemacht
Ich habe einen Zwietrachtbot gemacht
Ich habe mit Python einen Blackjack gemacht.
Ich habe Wordcloud mit Python gemacht.
Eine Geschichte, die stolperte, als ich mit Transformer einen Chat-Chat-Bot erstellte
Ich habe ein Paket erstellt, um Zeitreihen mit Python zu filtern
Ich habe eine einfache Buch-App mit Python + Flask ~ Introduction ~ erstellt
Ich habe ein Numer0n-Kampfspiel in Java gemacht (ich habe auch KI gemacht)
Ich habe einen Ressourcenmonitor für Raspberry Pi mit einer Tabelle erstellt
Ich habe einen harten Pomodoro-Timer entwickelt, der mit CUI funktioniert
Ich habe zum ersten Mal eine Überwachungskamera mit Raspberry PI gemacht.
Ich habe versucht, die Wahrscheinlichkeit eines Bingospiels mit Python zu simulieren
Ich habe ein Plug-In erstellt, das "Daruma-san Fell" mit Minecraft ausführen kann
[AWS] Ich habe BOT mit LINE WORKS (Implementierung) in Erinnerung gerufen.
Lebensspiel mit Python [ich habe es geschafft] (auf Terminal & Tkinter)
Ich habe eine C ++ - Lernseite erstellt
Ich habe eine einfache Schaltung mit Python gemacht (AND, OR, NOR, etc.)
Ich habe eine Bibliothek erstellt, die Konfigurationsdateien mit Python einfach lesen kann
Ich habe ein Paket erstellt, das morphologische Analysegeräte mit Python vergleichen kann
Ich habe ein Spiel namens Battle Ship mit Pygame und Tkinter gemacht
Ich habe einen Line-Bot mit Python gemacht!