diff --git a/RabiClone_0.0a.zip b/RabiClone_0.0a.zip index 8851d4d..cb37d9d 100644 Binary files a/RabiClone_0.0a.zip and b/RabiClone_0.0a.zip differ diff --git a/bin/RabiClone.jar b/bin/RabiClone.jar index 352c298..ccc6b79 100644 Binary files a/bin/RabiClone.jar and b/bin/RabiClone.jar differ diff --git a/src/sig/engine/Panel.java b/src/sig/engine/Panel.java index 6b92840..f3e89a2 100644 --- a/src/sig/engine/Panel.java +++ b/src/sig/engine/Panel.java @@ -194,13 +194,20 @@ public class Panel extends JPanel implements Runnable,KeyListener { @Override public void paintComponent(Graphics g) { - super.paintComponent(RabiClone.f.getBufferStrategy().getDrawGraphics()); - // perform draws on pixels - render(); - // ask ImageProducer to update image - mImageProducer.newPixels(); - // draw it on panel - RabiClone.f.getBufferStrategy().getDrawGraphics().drawImage(this.imageBuffer,0,0,getWidth(),getHeight(),0,0,RabiClone.BASE_WIDTH,RabiClone.BASE_HEIGHT,this); + super.paintComponent(g); + do { + do { + Graphics g2 = RabiClone.f.getBufferStrategy().getDrawGraphics(); + // perform draws on pixels + render(); + // ask ImageProducer to update image + mImageProducer.newPixels(); + // draw it on panel + g2.drawImage(this.imageBuffer,0,0,getWidth(),getHeight(),0,0,RabiClone.BASE_WIDTH,RabiClone.BASE_HEIGHT,this); + g2.dispose(); + } while (RabiClone.f.getBufferStrategy().contentsRestored()); + RabiClone.f.getBufferStrategy().show(); + } while (RabiClone.f.getBufferStrategy().contentsLost()); updateFPSCounter(); }