Quellcode durchsuchen

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

Kolja Strohm vor 5 Jahren
Ursprung
Commit
2cb94c8d57
1 geänderte Dateien mit 12 neuen und 9 gelöschten Zeilen
  1. 12 9
      StickmanWorldOnline/Spieler.cpp

+ 12 - 9
StickmanWorldOnline/Spieler.cpp

@@ -460,16 +460,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 );
     }