Keymap for movement finished!

This commit is contained in:
2023-12-23 11:53:57 +01:00
parent 278ca6f855
commit 840bc96eb3

48
Game.py
View File

@@ -29,6 +29,12 @@ class game(ShowBase):
__actor1 = 0 __actor1 = 0
__p3d_conf = loadPrcFile("conf/conf.prc") #Pfadangabe zum .prc File __p3d_conf = loadPrcFile("conf/conf.prc") #Pfadangabe zum .prc File
__keymap = {"up":False,
"down":False,
"left":False,
"right":False
}
def __init__(self) -> None: def __init__(self) -> None:
ShowBase.__init__(self) ShowBase.__init__(self)
@@ -46,21 +52,49 @@ class game(ShowBase):
self.__actor1.getPos() self.__actor1.getPos()
self.__actor1.reparentTo(self.render) self.__actor1.reparentTo(self.render)
self.taskMgr.add(self.task1, "task1") self.accept('arrow_up', self.update_keystate, ["up", True])
self.accept('arrow_up-up', self.update_keystate, ["up", False])
self.accept('arrow_down', self.update_keystate, ["down", True])
self.accept('arrow_down-up', self.update_keystate, ["down", False])
self.accept('arrow_left', self.update_keystate, ["left", True])
self.accept('arrow_left-up', self.update_keystate, ["left", False])
self.accept('arrow_right', self.update_keystate, ["right", True])
self.accept('arrow_right-up', self.update_keystate, ["right", False])
self.taskMgr.add(self.task1, "task1")
self.taskMgr.add(self.keyboard_event, "keyboard_event")
#Zusatzfunktionen innerhalb instanzierter ShowBase-Klasse
def update_keystate(self, controlName, controlState):
self.__keymap[controlName] = controlState
#Taskfunctions and definitions
def task1(self, task): def task1(self, task):
_x = -2.8 + (task.time*0.3) _x = -2.8 + (task.time*0.3)
print("Task läuft seit: " + str(_x)) #print("Task läuft seit: " + str(_x))
print(str(self.__actor1.getPos())) #print(str(self.__actor1.getPos()))
self.__actor1.setPos(1*_x,1*_x,0) #self.__actor1.setPos(1*_x,1*_x,0)
if (_x >= 2.8000): if (_x >= 2.8000):
print("Finished") print("Finished")
return Task.again return Task.again
return Task.cont return Task.cont
def keyboard_event(self, task):
print(self.__keymap)
if (self.__keymap['up']):
self.__actor1.setPos(self.__actor1.getPos() + Vec3(0,0.2,0))
print("Nach oben!")
if (self.__keymap['down']):
self.__actor1.setPos(self.__actor1.getPos() - Vec3(0,0.2,0))
print("Nach unten!")
if (self.__keymap['left']):
self.__actor1.setPos(self.__actor1.getPos() - Vec3(0.2,0,0))
print("Nach links!")
if (self.__keymap['right']):
self.__actor1.setPos(self.__actor1.getPos() + Vec3(0.2,0,0))
print("Nach rechts!")
return Task.cont