Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import appuifw as A
- import graphics as G
- from random import choice
- # pertanyaan, biar gak monoton permainannya, kata tanya ini nanti di pilih acak
- PERTANYAAN=[
- 'Warna apa ini?',
- 'Kalo ini warna apa?',
- 'Hayo warna apa nih',
- 'Warna apa sih?',
- 'Ini warnanya apa?'
- ]
- # contoh soal, bisa diganti objek/gambar,dll (jawaban,soal)
- SOAL=[
- ('hitam',0),
- ('merah',0xff0000),
- ('hijau',0x00ff00),
- ('biru',0x0000ff),
- ('kuning',0xffff00)
- ]
- class Kuis:
- def __init__(self):
- self.w,self.h=G.sysinfo.display_pixels()
- self.bg=G.Image.new((self.w,self.h))
- self.run=0
- self.pos=0
- self.tanya=choice(PERTANYAAN)
- A.app.screen='full'
- self.c=A.Canvas(redraw_callback=self._redraw)
- A.app.body=self.c
- A.app.menu=[(u'Jawab',self.jawab)]
- A.app.exit_key_handler=self.exit
- def exit(self):
- self.run=0
- def _redraw(self,rect):
- if self.bg:
- self.c.blit(self.bg)
- def jawab(self):
- A.e32.ao_sleep(0)
- jwb=A.query(u'Jawaban','text')
- if jwb is None:return
- # jika benar
- if str(jwb).lower()==SOAL[self.pos][0]:
- A.note(u'Pinter','conf')
- self.pos+=1
- self.tanya=choice(PERTANYAAN)
- if self.pos>len(SOAL)-1:self.pos=0
- #if self.pos>len(SOAL)-1:A.note(u'Permainan selesai')
- # salah
- else:
- A.note(u'Salah','error')
- return
- def play(self):
- self.run=1
- while self.run:
- self.bg.clear(SOAL[self.pos][1])
- self.bg.rectangle((5,5,self.w-5,25),0xffffff,0)
- self.bg.text((10,20),u'%s' %self.tanya,0xffffff)
- self._redraw(0)
- A.e32.ao_sleep(0.01)
- Kuis().play()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement