瀏覽代碼

Fehler in effekten behoben, welche den spieler bewegen und bewegung verbieten

Kolja Strohm 5 年之前
父節點
當前提交
f05417343a
共有 1 個文件被更改,包括 12 次插入9 次删除
  1. 12 9
      StickmanWorldOnline/Spieler.cpp

+ 12 - 9
StickmanWorldOnline/Spieler.cpp

@@ -385,16 +385,19 @@ void Spieler::addGetroffen()
 
 void Spieler::move( Richtung r, double zeit )
 {
-    if( istAmLeben() && istBeweglich( r ) )
+    if( istAmLeben() )
     {
-        if( tastenStand[ 'w' ] && r == OBEN )
-            y -= laufTempo * (float)zeit;
-        if( tastenStand[ 'a' ] && r == LINKS )
-            x -= laufTempo * (float)zeit;
-        if( tastenStand[ 's' ] && r == UNTEN )
-            y += laufTempo * (float)zeit;
-        if( tastenStand[ 'd' ] && r == RECHTS )
-            x += laufTempo * (float)zeit;
+        if( istBeweglich( r ) )
+        {
+            if( tastenStand[ 'w' ] && r == OBEN )
+                y -= laufTempo * (float)zeit;
+            if( tastenStand[ 'a' ] && r == LINKS )
+                x -= laufTempo * (float)zeit;
+            if( tastenStand[ 's' ] && r == UNTEN )
+                y += laufTempo * (float)zeit;
+            if( tastenStand[ 'd' ] && r == RECHTS )
+                x += laufTempo * (float)zeit;
+        }
         for( auto e = effekte.getIterator(); e; e++ )
             e->move( r, zeit );
     }