public BotSystem(OstBot ostBot) { updateTask = new Task(() => { try { Stopwatch stopwatch = new Stopwatch(); stopwatch.Start(); while (enabled) { Update(); int time = (int)stopwatch.ElapsedMilliseconds; if (time < UpdateSleep) { Thread.Sleep(UpdateSleep - time); } stopwatch.Reset(); } } catch (Exception e) { ostBot.shutdown(); throw e; } }); }
private void BlockDrawer(OstBot ostBot) { ostBot.connection.Send(ostBot.worldKey + "k", true); if (!blockDrawerEnabled) { blockDrawerEnabled = true; new Thread(() => { try { Stopwatch stopwatch = new Stopwatch(); stopwatch.Start(); while (ostBot.connected) { while (ostBot.hasCode) { lock (blockQueue) { if (blockQueue.Count != 0) { if (blockSet.Contains(blockQueue.Peek())) { //Console.WriteLine("jag är en sjuk sak"); blockQueue.Peek().Send(ostBot.connection); lock (blockRepairQueue) blockRepairQueue.Enqueue(blockQueue.Dequeue()); //Console.WriteLine("!!"); } else { blockQueue.Dequeue(); continue; } } else if (blockRepairQueue.Count != 0) { while (!blockSet.Contains(blockRepairQueue.Peek())) { blockRepairQueue.Dequeue(); if (blockRepairQueue.Count == 0) { break; } } if (blockRepairQueue.Count == 0) { continue; } blockRepairQueue.Peek().Send(ostBot.connection); blockRepairQueue.Enqueue(blockRepairQueue.Dequeue()); } else { Thread.Sleep(5); continue; } double sleepTime = drawSleep - stopwatch.Elapsed.TotalMilliseconds; if (sleepTime >= 0.5) { Thread.Sleep((int)sleepTime); } stopwatch.Reset(); } } Thread.Sleep(100); } } catch (Exception e) { ostBot.shutdown(); throw e; } }).Start(); } }