Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import time
- import random
- from pynq.lib import Button
- from pynq.lib import Switch
- from pynq.overlays.base import BaseOverlay
- import tut.arduino_led_matrix as led_matrix
- led_matrix.init()
- led_matrix.clear()
- button1 = Button(1)
- switch1 = Switch(0)
- switch2 = Switch(1)
- base = BaseOverlay("base.bit")
- pAudio = base.audio
- pAudio.load("/home/xilinx/jupyter_notebooks/bruh.pdm")
- def vilkku4():
- for i in range(0,16):
- for j in range(8,0,-1):
- vilkkupäälle(j-1,i-j, random.randint(0, 255), random.randint(0, 255), random.randint(0, 255))
- time.sleep(0.05)
- def vilkku5():
- for i in range(0,26):
- for j in range(8,0,-1):
- vilkkupois(j-1,i-j)
- time.sleep(0.05)
- def vilkkupäälle(thex, they, ther, theg, theb):
- if 0 <= thex <= 7 and 0 <= they <= 7:
- led_matrix.set_led_color(thex, they, ther, theg, theb)
- def vilkkupois(thex, they):
- if 0 <= thex <= 7 and 0 <= they <= 7:
- led_matrix.set_led_color(thex, they, 0, 0, 0)
- def ase():
- vilkkupäälle(5, 4, 0, 0, 255)
- vilkkupäälle(6, 4, 0, 0, 255)
- vilkkupäälle(7, 4, 0, 0, 255)
- vilkkupäälle(7, 5, 0, 0, 255)
- def laukaus(i, panokset, osumat):
- if button1.read() == 1:
- panokset = kuluminen(panokset)
- panokset -= 1
- for l in range(4, 0, -1):
- vilkkupäälle(l, 4, 255, 255, 0)
- time.sleep(0.03)
- vilkkupois(l, 4)
- if i == 4:
- osumat = damage(osumat)
- vilkkupäälle(0, 4, 255, 0, 0)
- pAudio.play()
- vilkkupois(0, 4)
- osumat += 1
- else:
- vilkkupäälle(0, 4, 255, 255, 0)
- time.sleep(0.03)
- vilkkupois(0, 4)
- return i, panokset, osumat
- def kuluminen(panokset):
- vilkkupois(8-panokset, 0)
- return panokset
- def damage(osumat):
- vilkkupois(5+osumat, 7)
- return osumat
- def peli(panokset, osumat):
- k = 1
- i = 1
- while switch1.read() == 1:
- vilkkupäälle(0,i,0,255,0)
- if i == 7:
- k = -1
- elif i == 0:
- k = 1
- i, panokset, osumat = laukaus(i, panokset, osumat)
- time.sleep(0.1)
- vilkkupois(0,i)
- gameovercheck(osumat,panokset,i)
- i += k
- def gameovercheck(osumat,panokset,i):
- if osumat < 3 and panokset > 0:
- return osumat, panokset
- elif osumat >= 3:
- victory()
- elif panokset <= 0:
- defeat(i)
- def victory():
- led_matrix.clear()
- switch1.wait_for_value(0)
- def defeat(i):
- while i != 4:
- vilkkupäälle(0,i,0,255,0)
- if i < 4:
- k = 1
- elif i > 4:
- k = -1
- time.sleep(0.1)
- vilkkupois(0,i)
- i += k
- i = 0
- for i in range(8):
- vilkkupäälle(i, 4, 0, 255, 0)
- time.sleep(0.3)
- vilkkupois(i,4)
- led_matrix.clear()
- verilöyly()
- switch1.wait_for_value(0)
- def verilöyly():
- for i in range(12):
- vilkkupäälle(0, -2+i, 255, 0, 0)
- vilkkupäälle(1, -4+i, 255, 0, 0)
- vilkkupäälle(2, -3+i, 255, 0, 0)
- vilkkupäälle(3, i, 255, 0, 0)
- vilkkupäälle(4, -4+i, 255, 0, 0)
- vilkkupäälle(5, -2+i, 255, 0, 0)
- vilkkupäälle(6, -1+i, 255, 0, 0)
- vilkkupäälle(7, -3+i, 255, 0, 0)
- time.sleep(0.1)
- def panoksetload():
- for i in range(7,2,-1):
- vilkkupäälle(i,0,210,105,30)
- time.sleep(0.1)
- def elämätload():
- for i in range(7,4,-1):
- vilkkupäälle(i,7,255,0,100)
- time.sleep(0.1)
- def main():
- print("jotai vaa paskaa")
- vilkkupäälle(0, 0, 0, 0, 255)
- osumat = 0
- panokset = 5
- ase()
- panoksetload()
- elämätload()
- print("joku testiprintti")
- switch1.wait_for_value(1)
- peli(panokset, osumat)
- vilkku4()
- vilkku5()
- if switch2.read() == 1:
- time.sleep(1)
- main()
- led_matrix.clear()
- print("Program finished succesfully")
- main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement