add additional files to play with
This commit is contained in:
parent
a1c838d300
commit
5d10bd2e80
8 changed files with 102 additions and 2 deletions
Before Width: | Height: | Size: 5.4 KiB After Width: | Height: | Size: 5.4 KiB |
BIN
assets/sounds/151390__reinsamba__nightingale-brook-mix.wav
Normal file
BIN
assets/sounds/151390__reinsamba__nightingale-brook-mix.wav
Normal file
Binary file not shown.
Binary file not shown.
BIN
assets/sounds/ambience1.mp3
Normal file
BIN
assets/sounds/ambience1.mp3
Normal file
Binary file not shown.
10
main.kv
Normal file
10
main.kv
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
#: import sm kivy.uix.screenmanager
|
||||||
|
<ScreenManagement>:
|
||||||
|
transition: sm.FadeTransition()
|
||||||
|
MainScreen:
|
||||||
|
AboutScreen:
|
||||||
|
|
||||||
|
<MainScreen>:
|
||||||
|
|
||||||
|
|
||||||
|
<AboutScreen>:
|
72
main.py
72
main.py
|
@ -1,16 +1,84 @@
|
||||||
|
from random import randrange
|
||||||
|
|
||||||
from kivy.app import App
|
from kivy.app import App
|
||||||
from kivy.clock import Clock
|
from kivy.clock import Clock
|
||||||
|
|
||||||
|
from kivy.core.window import Window
|
||||||
|
|
||||||
|
|
||||||
from kivy.uix.label import Label
|
from kivy.uix.label import Label
|
||||||
from kivy.uix.widget import Widget
|
from kivy.uix.widget import Widget
|
||||||
|
|
||||||
from kivy.graphics import Rectangle
|
from kivy.graphics import Rectangle
|
||||||
|
|
||||||
|
def collides(rect1, rect2):
|
||||||
|
r1x = rect1[0][0]
|
||||||
|
r1y = rect1[0][1]
|
||||||
|
r2x = rect2[0][0]
|
||||||
|
r2y = rect2[0][1]
|
||||||
|
r1w = rect1[1][0]
|
||||||
|
r1h = rect1[1][1]
|
||||||
|
r2w = rect2[1][0]
|
||||||
|
r2h = rect2[1][1]
|
||||||
|
|
||||||
|
if (r1x < r2x + r2w and r1x + r1w > r2x and r1y < r2y + r2h and r1y + r1h > r2y):
|
||||||
|
return True
|
||||||
|
else:
|
||||||
|
return False
|
||||||
|
|
||||||
class GameWidget(Widget):
|
class GameWidget(Widget):
|
||||||
def __init__(self,**kwargs):
|
def __init__(self, **kwargs):
|
||||||
super().__init__(**kwargs)
|
super().__init__(**kwargs)
|
||||||
|
self._keyboard = Window.request_keyboard(self._on_keyboard_closed, self)
|
||||||
|
self._keyboard.bind(on_key_down=self._on_key_down)
|
||||||
|
self._keyboard.bind(on_key_up=self._on_key_up)
|
||||||
|
|
||||||
|
self.nearbyobj = []
|
||||||
|
|
||||||
|
#for obj in range(10):
|
||||||
|
|
||||||
with self.canvas:
|
with self.canvas:
|
||||||
Rectangle(source="images/player.png", pos=(0,0), size=(100,100))
|
self.player = Rectangle(source="assets/images/player.png", pos=(0,0), size=(100,100))
|
||||||
|
self.enemy = Rectangle(pos=(300,300), size=(80,80))
|
||||||
|
|
||||||
|
self.keysPressed = set()
|
||||||
|
|
||||||
|
Clock.schedule_interval(self.move_step,0)
|
||||||
|
|
||||||
|
def _on_keyboard_closed(self):
|
||||||
|
self._keyboard.unbind(on_key_down=self._on_key_down)
|
||||||
|
self._keyboard.unbind(on_key_up=self._on_key_up)
|
||||||
|
self._keyboard = None
|
||||||
|
|
||||||
|
def _on_key_down(self, keyboard, keycode, text, modifiers):
|
||||||
|
self.keysPressed.add(text)
|
||||||
|
|
||||||
|
def _on_key_up(self,keyboard,keycode):
|
||||||
|
text = keycode[1]
|
||||||
|
if text in self.keysPressed:
|
||||||
|
self.keysPressed.remove(text)
|
||||||
|
|
||||||
|
def move_step(self,dt):
|
||||||
|
currentx = self.player.pos[0]
|
||||||
|
currenty = self.player.pos[1]
|
||||||
|
|
||||||
|
step_size = 200 * dt
|
||||||
|
|
||||||
|
if "w" in self.keysPressed:
|
||||||
|
currenty += step_size
|
||||||
|
if "s" in self.keysPressed:
|
||||||
|
currenty -= step_size
|
||||||
|
if "a" in self.keysPressed:
|
||||||
|
currentx -= step_size
|
||||||
|
if "d" in self.keysPressed:
|
||||||
|
currentx += step_size
|
||||||
|
|
||||||
|
self.player.pos = (currentx, currenty)
|
||||||
|
|
||||||
|
if collides((self.player.pos,self.player.size),(self.enemy.pos,self.size)):
|
||||||
|
print("X")
|
||||||
|
else:
|
||||||
|
print('.')
|
||||||
|
|
||||||
class GlobalForest(App):
|
class GlobalForest(App):
|
||||||
def build(self):
|
def build(self):
|
||||||
|
|
11
music.kv
Normal file
11
music.kv
Normal file
|
@ -0,0 +1,11 @@
|
||||||
|
#:kivy 1.11.1
|
||||||
|
|
||||||
|
<MyFloatLayout>:
|
||||||
|
|
||||||
|
Button:
|
||||||
|
bold:True
|
||||||
|
size_hint:.8,.3
|
||||||
|
text:'Play Music'
|
||||||
|
background_color:0,1,1,1
|
||||||
|
pos_hint: {'right':1, 'y':0}
|
||||||
|
|
11
music.py
Normal file
11
music.py
Normal file
|
@ -0,0 +1,11 @@
|
||||||
|
from kivy.app import App
|
||||||
|
from kivy.core.audio import SoundLoader
|
||||||
|
from kivy.uix.floatlayout import FloatLayout
|
||||||
|
|
||||||
|
class MyFloatLayout(FloatLayout):
|
||||||
|
pass
|
||||||
|
|
||||||
|
class MusicWindows(App):
|
||||||
|
def build(self):
|
||||||
|
|
||||||
|
return MyFloatLayout()
|
Loading…
Reference in a new issue