From 637bf538efb70dec22d7cbfa0c8dd9abab9adb01 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Manuel=20V=C3=B6gele?= Date: Wed, 7 May 2014 23:36:21 +0200 Subject: [PATCH] =?UTF-8?q?Mehrere=20=C3=84nderungen=20an=20Wegfindungsbeh?= =?UTF-8?q?andlung:=20=20-=20Wegfindung=20wird=20nicht=20mehr=20ausgel?= =?UTF-8?q?=C3=B6st,=20wenn=20auf=20Feld=20geklickt=20wird,=20das=20=20=20?= =?UTF-8?q?=20nicht=20walkable=20ist,=20sodass=20Anwendung=20nicht=20ausge?= =?UTF-8?q?l=C3=B6st=20wird=20=20-=20Wegfindung=20l=C3=A4uft=20nun=20in=20?= =?UTF-8?q?einem=20Hintergrundthread=20=20-=20Die=20Figur=20l=C3=A4uft=20n?= =?UTF-8?q?un=204=20statt=202=20Schritte=20pro=20sekunde?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Backend.cs | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/Backend.cs b/src/Backend.cs index e07dc0f..067505f 100644 --- a/src/Backend.cs +++ b/src/Backend.cs @@ -148,7 +148,11 @@ namespace WorldOfPeacecraft public void MoveTo (int x, int y) { - new Thread(() => WalkTo(x,y)).Start(); + if (Map.GetTiles () [x, y].IsWalkable ()) { + Thread thread = new Thread (() => WalkTo (x, y)); + thread.IsBackground = true; + thread.Start (); + } } private void WalkTo (int x, int y) @@ -158,7 +162,7 @@ namespace WorldOfPeacecraft walker.SetCoords (path); while (walker.HasMoreSteps()) { SenderBuffer.AddLine("ask:" + walker.NextStep()); - Thread.Sleep(500); + Thread.Sleep(250); } }