コード例 #1
0
ファイル: MatrixLayer.py プロジェクト: fauconnier/wolfenscii
    def test3(self):
        #logging.basicConfig(level = logging.DEBUG)
        
        worldMap=[
                [1,1,2,2,2,3,2,1,4,1,3,1,1,1,1,1,1],
                [1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1],
                [1,0,2,0,1,0,0,0,0,0,0,0,0,0,0,0,1],
                [1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1],
                [1,0,2,0,1,0,0,0,0,0,0,0,0,0,0,0,1],
                [1,0,2,0,1,0,0,0,0,0,0,0,0,0,0,0,1],
                [1,0,2,0,1,0,0,0,0,0,0,0,0,0,0,0,1],
                [1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1],
                [1,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,1],
                [1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1],
                [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],
                ]
        
        
        lay = MatrixSceneLayer(None,worldMap)
        
        
        # load Texture 
        lay.texmapping[1] = StrechedTexture("wolfenscii/asset/test/tex2")

        line = 34
        cols = 41
        canvas = [ [Pixel() for i in range(cols)] for j in range(line)]

        res = lay.update(canvas)
        printCanvas(canvas)
コード例 #2
0
ファイル: MatrixLayer.py プロジェクト: fauconnier/wolfenscii
    def test3(self):
        #logging.basicConfig(level = logging.DEBUG)

        worldMap = [
            [1, 1, 2, 2, 2, 3, 2, 1, 4, 1, 3, 1, 1, 1, 1, 1, 1],
            [1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
            [1, 0, 2, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
            [1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
            [1, 0, 2, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
            [1, 0, 2, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
            [1, 0, 2, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
            [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
            [1, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
            [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
            [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
        ]

        lay = MatrixSceneLayer(None, worldMap)

        # load Texture
        lay.texmapping[1] = StrechedTexture("wolfenscii/asset/test/tex2")

        line = 34
        cols = 41
        canvas = [[Pixel() for i in range(cols)] for j in range(line)]

        res = lay.update(canvas)
        printCanvas(canvas)
コード例 #3
0
ファイル: MatrixLayer.py プロジェクト: fauconnier/wolfenscii
    def test_rotate1(self):
        logging.basicConfig(level=logging.DEBUG)

        worldMap = []

        lay = MatrixSceneLayer(None, worldMap)

        lay.playerTurnRight()
コード例 #4
0
    def __init__(self, rows, cols):
        self.canvas = []
        self.rows = rows
        self.cols = cols

        self.debugLayer = DebugLayer()

        worldMap = [
            [1, 1, 1, 1, 1, 1, 2, 1, 3, 1, 3, 1, 1, 1, 1, 1, 1],
            [3, 0, 0, 0, 0, 0, 0, 0, 3, 2, 0, 0, 0, 0, 0, 0, 1],
            [3, 0, 0, 0, 2, 0, 0, 0, 3, 2, 0, 0, 0, 0, 0, 0, 1],
            [3, 0, 0, 0, 0, 0, 0, 0, 3, 2, 0, 0, 0, 0, 0, 0, 1],
            [3, 0, 0, 0, 0, 0, 0, 0, 3, 2, 0, 0, 0, 0, 0, 0, 1],
            [3, 0, 0, 0, 0, 0, 0, 0, 3, 2, 0, 0, 8, 8, 8, 8, 1],
            [3, 0, 0, 0, 0, 0, 0, 0, 4, 2, 0, 0, 0, 0, 0, 0, 1],
            [3, 0, 0, 0, 0, 0, 0, 0, 4, 2, 0, 0, 0, 0, 0, 0, 1],
            [3, 0, 0, 0, 0, 0, 0, 0, 4, 2, 0, 0, 0, 0, 0, 0, 1],
            [3, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 1],
            [3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
            [3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
            [3, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 1],
            [3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
            [3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
            [3, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 1],
            [3, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 1],
            [3, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 1],
            [3, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 1],
            [3, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 1],
            [3, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 1],
            [3, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 1],
            [3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
        ]

        self.sceneLayer = MatrixSceneLayer(self.debugLayer, worldMap)

        # load Texture
        self.sceneLayer.texmapping[1] = StrechedTexture(
            "wolfenscii/asset/test/tex1")
        self.sceneLayer.texmapping[2] = StrechedTexture(
            "wolfenscii/asset/test/tex2")
        self.sceneLayer.texmapping[3] = StrechedTexture(
            "wolfenscii/asset/test/tex3")
        self.sceneLayer.texmapping[4] = StrechedTexture(
            "wolfenscii/asset/test/tex4")
        self.sceneLayer.texmapping[5] = StrechedTexture(
            "wolfenscii/asset/test/tex3")
        self.sceneLayer.texmapping[6] = StrechedTexture(
            "wolfenscii/asset/test/tex3")
        self.sceneLayer.texmapping[7] = StrechedTexture(
            "wolfenscii/asset/test/tex3")
        self.sceneLayer.texmapping[8] = StrechedTexture(
            "wolfenscii/asset/test/tex3")
        self.sceneLayer.texmapping[9] = StrechedTexture(
            "wolfenscii/asset/test/tex3")

        self.layers = [ClearCanvas(), self.sceneLayer, self.debugLayer]
        self.lastKey = ""
        self.__populateCanvas()
コード例 #5
0
ファイル: MatrixLayer.py プロジェクト: fauconnier/wolfenscii
    def test_rotate1(self):
        logging.basicConfig(level = logging.DEBUG)
        
        worldMap=[
                ]

        lay = MatrixSceneLayer(None,worldMap)

        lay.playerTurnRight()
コード例 #6
0
ファイル: MatrixLayer.py プロジェクト: fauconnier/wolfenscii
 def test_setAutoMove(self):
     #logging.basicConfig(level = logging.DEBUG)
     
     worldMap=[
             [1,1,2,2,2,3,2,1,4,1,3,1,1,1,1,1,1],
             [1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1],
             [1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1],
             [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],
             ]
     
     
     lay = MatrixSceneLayer(None,worldMap)
     lay.posX = 1
     lay.posY = 1
     for i in range(1000):
         lay.setAutoMove(True)
         for x,y in lay.apmRoute:
             worldMap[x][y]
コード例 #7
0
ファイル: MatrixLayer.py プロジェクト: fauconnier/wolfenscii
    def test1(self):
        logging.basicConfig(level=logging.DEBUG)

        worldMap = [
            [1, 1, 1, 1, 1, 1, 2, 1, 3, 1, 3, 1, 1, 1, 1, 1, 1],
            [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
            [1, 0, 2, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
            [1, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 1],
            [1, 0, 2, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 1],
            [1, 0, 2, 0, 0, 0, 0, 0, 0, 6, 0, 0, 8, 8, 8, 8, 1],
            [1, 0, 2, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 1],
            [1, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 1],
            [1, 0, 2, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 1],
            [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
            [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
        ]

        lay = MatrixSceneLayer(None, worldMap)

        res = lay.raycast(10)
        print res
コード例 #8
0
ファイル: MatrixLayer.py プロジェクト: fauconnier/wolfenscii
    def test_randomPoint(self):
        #logging.basicConfig(level = logging.DEBUG)

        worldMap = [
            [1, 1, 2, 2, 2, 3, 2, 1, 4, 1, 3, 1, 1, 1, 1, 1, 1],
            [1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
            [1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
            [1, 0, 2, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
            [1, 0, 2, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
            [1, 0, 2, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
            [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
            [1, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
            [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
            [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
        ]

        lay = MatrixSceneLayer(None, worldMap)

        for i in range(1000):
            x, y = lay._randomPointInMap()

            self.assertTrue(worldMap[x][y] == 0)
コード例 #9
0
ファイル: MatrixLayer.py プロジェクト: fauconnier/wolfenscii
    def test1(self):
        logging.basicConfig(level = logging.DEBUG)
        
        worldMap=[
                [1,1,1,1,1,1,2,1,3,1,3,1,1,1,1,1,1],
                [1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1],
                [1,0,2,0,2,0,0,0,0,0,0,0,0,0,0,0,1],
                [1,0,0,0,0,0,0,0,0,6,0,0,0,0,0,0,1],
                [1,0,2,0,0,0,0,0,0,6,0,0,0,0,0,0,1],
                [1,0,2,0,0,0,0,0,0,6,0,0,8,8,8,8,1],
                [1,0,2,0,0,0,0,0,0,6,0,0,0,0,0,0,1],
                [1,0,0,0,0,0,0,0,0,6,0,0,0,0,0,0,1],
                [1,0,2,0,0,0,0,0,0,6,0,0,0,0,0,0,1],
                [1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1],
                [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],
                ]

        lay = MatrixSceneLayer(None,worldMap)



        res = lay.raycast(10)
        print res
コード例 #10
0
ファイル: MatrixLayer.py プロジェクト: fauconnier/wolfenscii
    def test_randomPoint(self):
        #logging.basicConfig(level = logging.DEBUG)
        
        worldMap=[
                [1,1,2,2,2,3,2,1,4,1,3,1,1,1,1,1,1],
                [1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1],
                [1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1],
                [1,0,2,0,1,0,0,0,0,0,0,0,0,0,0,0,1],
                [1,0,2,0,1,0,0,0,0,0,0,0,0,0,0,0,1],
                [1,0,2,0,1,0,0,0,0,0,0,0,0,0,0,0,1],
                [1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1],
                [1,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,1],
                [1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1],
                [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],
                ]
        
        
        lay = MatrixSceneLayer(None,worldMap)
        
        for i in range(1000):
            x,y = lay._randomPointInMap()

            self.assertTrue(worldMap[x][y] == 0)
コード例 #11
0
ファイル: MatrixLayer.py プロジェクト: fauconnier/wolfenscii
    def test2(self):
        logging.basicConfig(level = logging.DEBUG)
        
        worldMap=[
                [1,1,1,1,1,3,2,1,4,1,3,1,1,1,1,1,1],
                [1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1],
                [1,0,2,0,2,0,0,0,0,0,0,0,0,0,0,0,1],
                [1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1],
                [1,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,1],
                [1,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,1],
                [1,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,1],
                [1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1],
                [1,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,1],
                [1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1],
                [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],
                ]

        lay = MatrixSceneLayer(None,worldMap)

        line = 34
        cols = 41
        canvas = [ [Pixel() for i in range(cols)] for j in range(line)]

        res = lay.update(canvas)
コード例 #12
0
ファイル: MatrixLayer.py プロジェクト: fauconnier/wolfenscii
    def test2(self):
        logging.basicConfig(level=logging.DEBUG)

        worldMap = [
            [1, 1, 1, 1, 1, 3, 2, 1, 4, 1, 3, 1, 1, 1, 1, 1, 1],
            [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
            [1, 0, 2, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
            [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
            [1, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
            [1, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
            [1, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
            [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
            [1, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
            [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
            [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
        ]

        lay = MatrixSceneLayer(None, worldMap)

        line = 34
        cols = 41
        canvas = [[Pixel() for i in range(cols)] for j in range(line)]

        res = lay.update(canvas)
コード例 #13
0
ファイル: MatrixLayer.py プロジェクト: fauconnier/wolfenscii
    def test_setAutoMove(self):
        #logging.basicConfig(level = logging.DEBUG)

        worldMap = [
            [1, 1, 2, 2, 2, 3, 2, 1, 4, 1, 3, 1, 1, 1, 1, 1, 1],
            [1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
            [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
            [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
        ]

        lay = MatrixSceneLayer(None, worldMap)
        lay.posX = 1
        lay.posY = 1
        for i in range(1000):
            lay.setAutoMove(True)
            for x, y in lay.apmRoute:
                worldMap[x][y]
コード例 #14
0
class GameState(object):
    """
    Contains :

    * Canvas
    * List of layers

    """
    def __init__(self, rows, cols):
        self.canvas = []
        self.rows = rows
        self.cols = cols

        self.debugLayer = DebugLayer()

        worldMap = [
            [1, 1, 1, 1, 1, 1, 2, 1, 3, 1, 3, 1, 1, 1, 1, 1, 1],
            [3, 0, 0, 0, 0, 0, 0, 0, 3, 2, 0, 0, 0, 0, 0, 0, 1],
            [3, 0, 0, 0, 2, 0, 0, 0, 3, 2, 0, 0, 0, 0, 0, 0, 1],
            [3, 0, 0, 0, 0, 0, 0, 0, 3, 2, 0, 0, 0, 0, 0, 0, 1],
            [3, 0, 0, 0, 0, 0, 0, 0, 3, 2, 0, 0, 0, 0, 0, 0, 1],
            [3, 0, 0, 0, 0, 0, 0, 0, 3, 2, 0, 0, 8, 8, 8, 8, 1],
            [3, 0, 0, 0, 0, 0, 0, 0, 4, 2, 0, 0, 0, 0, 0, 0, 1],
            [3, 0, 0, 0, 0, 0, 0, 0, 4, 2, 0, 0, 0, 0, 0, 0, 1],
            [3, 0, 0, 0, 0, 0, 0, 0, 4, 2, 0, 0, 0, 0, 0, 0, 1],
            [3, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 1],
            [3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
            [3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
            [3, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 1],
            [3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
            [3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
            [3, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 1],
            [3, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 1],
            [3, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 1],
            [3, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 1],
            [3, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 1],
            [3, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 1],
            [3, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 1],
            [3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
        ]

        self.sceneLayer = MatrixSceneLayer(self.debugLayer, worldMap)

        # load Texture
        self.sceneLayer.texmapping[1] = StrechedTexture(
            "wolfenscii/asset/test/tex1")
        self.sceneLayer.texmapping[2] = StrechedTexture(
            "wolfenscii/asset/test/tex2")
        self.sceneLayer.texmapping[3] = StrechedTexture(
            "wolfenscii/asset/test/tex3")
        self.sceneLayer.texmapping[4] = StrechedTexture(
            "wolfenscii/asset/test/tex4")
        self.sceneLayer.texmapping[5] = StrechedTexture(
            "wolfenscii/asset/test/tex3")
        self.sceneLayer.texmapping[6] = StrechedTexture(
            "wolfenscii/asset/test/tex3")
        self.sceneLayer.texmapping[7] = StrechedTexture(
            "wolfenscii/asset/test/tex3")
        self.sceneLayer.texmapping[8] = StrechedTexture(
            "wolfenscii/asset/test/tex3")
        self.sceneLayer.texmapping[9] = StrechedTexture(
            "wolfenscii/asset/test/tex3")

        self.layers = [ClearCanvas(), self.sceneLayer, self.debugLayer]
        self.lastKey = ""
        self.__populateCanvas()

    def resetCanvas(self, rows, cols):
        self.canvas = []
        self.rows = rows
        self.cols = cols
        self.__populateCanvas()

    def __populateCanvas(self):

        # populateCanvas
        for i in range(self.rows):
            self.canvas.append([Pixel() for j in range(self.cols)])

    def update(self):
        """

        Call every layer to fill the canvas.
        """
        # play random player move

        timeStart = time.time()
        for layer in self.layers:
            layer.update(self.canvas)

        self.debugLayer.setText("gs.update / s ",
                                str(1.0 / (time.time() - timeStart)))
        self.debugLayer.setText("lastKey", str(self.lastKey))

        return self.canvas

    def keyEvent(self, key):
        """
        Dispatch key pressed as an action

        """

        self.lastKey = key
        # 104 h
        # 105 i
        # 106 j
        # 107 k
        # 108 l
        # 109 m

        if key == 104:  # h
            self.sceneLayer.playerTurnLeft()
        elif key == 72:  # H
            self.sceneLayer.playerStepLeft()
        elif key in (75, 107):  # k
            self.sceneLayer.playerFront()
        elif key in (74, 106):  # j
            self.sceneLayer.playerBack()
        elif key == 108:  # l
            self.sceneLayer.playerTurnRight()
        elif key == 76:  # L
            self.sceneLayer.playerStepRight()
        elif key == 100:  # d
            # stop debug
            self.debugLayer.muted = not self.debugLayer.muted
        elif key == 97:  # a
            # enable autoMove
            self.sceneLayer.setAutoMove(not self.sceneLayer.autoPlayerMove)

        elif key == 111:  # o
            # decrease magic factor
            self.sceneLayer.magicFactor -= 0.1
        elif key == 112:  # p
            # increase magic factor
            self.sceneLayer.magicFactor += 0.1