diff --git a/src/projlab/AsteroidObserver.java b/src/projlab/AsteroidObserver.java
index 62490e4bfc5e29aa6cc10154e37b2b2801b21f24..f24000b75cabddbd270f2b1da6cc4635f7aef44f 100644
--- a/src/projlab/AsteroidObserver.java
+++ b/src/projlab/AsteroidObserver.java
@@ -5,17 +5,47 @@ package projlab;
  */
 @Docs(changed = true)
 public abstract class AsteroidObserver {
+    /**
+     * Entitás odamozgáskor elsütött metódus.
+     * @param a melyik aszteroidára történt a mozgás
+     * @param e ki mozgott
+     */
     void entityMovedTo(Asteroid a, Entity e){}
 
+    /**
+     * Entitás mozgásakor elsütött metódus.
+     * @param a melyik aszteroidáról történt a mozgás
+     * @param e ki mozgott
+     */
     void entityMovedFrom(Asteroid a, Entity e){}
 
+    /**
+     * Aszteroida felrobbanásakor elsütött metódus.
+     * @param a melyik aszteroidával történt az esemény
+     */
     void asteroidExploded(Asteroid a){}
 
+    /**
+     * Aszteroida megfúrásakor elsütött metódus.
+     * @param a melyik aszteroidával történt az esemény
+     */
     void asteroidDrilled(Asteroid a){}
 
+    /**
+     * Aszteroida magjának megváltozásakor elsütött metódus.
+     * @param a melyik aszteroidával történt az esemény
+     */
     void asteroidCoreChanged(Asteroid a){}
 
+    /**
+     * Aszteroida napközelségének megváltozásakor elsütött metódus.
+     * @param a melyik aszteroidával történt az esemény
+     */
     void asteroidNearSunChanged(Asteroid a){}
 
+    /**
+     * Napszél esetén elsütött metódus.
+     * @param a melyik aszteroidával történt az esemény
+     */
     void asteroidSolarFlared(Asteroid a){}
 }
diff --git a/src/projlab/GUI.java b/src/projlab/GUI.java
index 5880949aa62f6c8465e27ceeee799c8018ba9d5e..1bdaf38ca86bb23f4fb6913207815718b413198d 100644
--- a/src/projlab/GUI.java
+++ b/src/projlab/GUI.java
@@ -43,6 +43,10 @@ public class GUI extends Application {
      */
     private Thread t;
 
+    /**
+     * Elindítja a játékot.
+     * @param primaryStage kezdőfázis
+     */
     @Override
     public void start(Stage primaryStage) {
         primaryStage.setTitle("Projlab");
@@ -91,8 +95,14 @@ public class GUI extends Application {
         s1.setInventory(materialList);
     }
 
-    @Docs(uml = "GUI +-- GUI.MainRunnable")
+    /**
+     * A fő szál.
+     */
+    @Docs(changed = true, uml = "GUI +-- GUI.MainRunnable")
     private static class MainRunnable implements Runnable {
+        /**
+         * Elindítja a fő szálat.
+         */
         @Override
         public void run() {
             for (var run = true; run = Game.isRun();) {
diff --git a/src/projlab/GameObserver.java b/src/projlab/GameObserver.java
index cdadb417968da99fc35db4f75ee07b3030137755..e9f6611ec48f66e069528326c8f1ed1a0a997fb0 100644
--- a/src/projlab/GameObserver.java
+++ b/src/projlab/GameObserver.java
@@ -3,8 +3,15 @@ package projlab;
 /**
  * Az GUI működéséhez szükséges megfigyelők.
  */
+@Docs(changed = true)
 public abstract class GameObserver {
+    /**
+     * Vesztés esetén elsütött esemény.
+     */
     void lose(){}
 
+    /**
+     * Győzelem esetén elsütött esemény.
+     */
     void win(){}
 }
diff --git a/src/projlab/InventoryChooserPanel.java b/src/projlab/InventoryChooserPanel.java
index 4317ed75a50fba9c0d49a1bcf1102a48e824ec51..46e63b6547cb6132f9e629aa905f633fa2fac6ca 100644
--- a/src/projlab/InventoryChooserPanel.java
+++ b/src/projlab/InventoryChooserPanel.java
@@ -15,7 +15,12 @@ import java.util.Map;
 /**
  * A telepes tárolójának kiválasztására szolgáló GUI-s panel.
  */
+@Docs(changed = true)
 public class InventoryChooserPanel extends HBox {
+
+    /**
+     * Aktuális fázis.
+     */
     private Stage stage;
 
     /**
@@ -40,16 +45,27 @@ public class InventoryChooserPanel extends HBox {
     /**
      * A nyersanyag kiválasztása után ellőt esemény.
      */
+    @Docs(changed = true)
     public interface InventoryChosen {
+        /**
+         * Nyersanyag kiválasztásakor ellőtt esemény.
+         */
         void chosen(Material material);
     }
 
     /**
      * A kiválasztást kezelő segédosztály.
      */
-    @Docs(uml = "InventoryChooserPanel +-- InventoryChooserPanel.ChooseHandler")
+    @Docs(uml = "InventoryChooserPanel +-- InventoryChooserPanel.ChooseHandler", changed = true)
     public class ChooseHandler implements EventHandler<MouseEvent> {
+        /**
+         * Tárolóválasztó
+         */
         private final InventoryChosen ch;
+
+        /**
+         * Nyersanyag
+         */
         private final Material mat;
 
         public ChooseHandler(Material m, InventoryChosen c) {
@@ -57,6 +73,9 @@ public class InventoryChooserPanel extends HBox {
             ch = c;
         }
 
+        /**
+         * Egérkattintásra értesíti a fő ablakot a választott anyagról.
+         */
         @Override
         public void handle(MouseEvent mouseEvent) {
             ch.chosen(mat);
diff --git a/src/projlab/MainPanel.java b/src/projlab/MainPanel.java
index 203849b47efcefdf2be5bebbde270a398542ba54..1dfd9879318d35c0a4e8261c1c9e45288484777d 100644
--- a/src/projlab/MainPanel.java
+++ b/src/projlab/MainPanel.java
@@ -18,14 +18,21 @@ import java.util.Map;
 /**
  * A GUI központi eleme, amin a játék történik.
  */
+@Docs(changed = true)
 public class MainPanel extends AnchorPane {
     /**
      * A meglátogatható objektumok, amelyek gombként jelennek meg.
      */
     private final Map<Visitable, Button> visitables = new HashMap<>();
 
+    /**
+     * Az aszteroidákat összekötő vonalak.
+     */
     private final ArrayList<Line> lines = new ArrayList<>();
 
+    /**
+     * A felhasználói felületre kirajzolja a vonalakat.
+     */
     private void drawLines() {
         var children = getChildren();
         for (var l: lines) {
@@ -54,6 +61,9 @@ public class MainPanel extends AnchorPane {
         }
     }
 
+    /**
+     * Legenerált aszteroidák száma.
+     */
     private final int astAmount = 10;
 
     /**
@@ -73,6 +83,11 @@ public class MainPanel extends AnchorPane {
         Game.addObserver(obs);
     }
 
+    /**
+     * Megadja, hogy egy adott Visitable-nek hol kell elhelyezkednie a képernyőn, hogy esztétikus legyen a megjelenítés.
+     * @param v
+     * @return
+     */
     private Coordinates getLocation(Visitable v) {
         var h = getHeight()-80;
         var w = getWidth()-80;
@@ -81,6 +96,12 @@ public class MainPanel extends AnchorPane {
         return new Coordinates(x, y);
     }
 
+    /**
+     * Hozzáad egy GUI elemet az ablakhoz.
+     * @param n
+     * @param x
+     * @param y
+     */
     private void add(Node n, double x, double y) {
         AnchorPane.setLeftAnchor(n, x);
         AnchorPane.setTopAnchor(n, y);
@@ -207,7 +228,7 @@ public class MainPanel extends AnchorPane {
     /**
      * Látogatható objektum kattintás kezelése.
      */
-    @Docs(uml = "MainPanel +-- MainPanel.VisitableClickedHandler")
+    @Docs(uml = "MainPanel +-- MainPanel.VisitableClickedHandler", changed = true)
     private class VisitableClickedHandler implements EventHandler<MouseEvent> {
         private final Visitable vis;
         public VisitableClickedHandler(Visitable v) {
@@ -225,7 +246,7 @@ public class MainPanel extends AnchorPane {
     /**
      * A GUI változtatásához szükséges megfigyelő.
      */
-    @Docs(uml = "MainPanel +-- MainPanel.AsteroidGUIObserver")
+    @Docs(uml = "MainPanel +-- MainPanel.AsteroidGUIObserver", changed = true)
     private class AsteroidGUIObserver extends AsteroidObserver {
 
         @Override
@@ -276,9 +297,9 @@ public class MainPanel extends AnchorPane {
     }
 
     /**
-     * Segédosztály a telepes megváltoztatásához.
+     * A telepes megváltozásait figyelő osztály.
      */
-    @Docs(uml = "MainPanel +-- MainPanel.SettlerChanged")
+    @Docs(uml = "MainPanel +-- MainPanel.SettlerChanged", changed = true)
     private class SettlerChanged extends SettlerObserver {
 
         @Override
@@ -309,7 +330,7 @@ public class MainPanel extends AnchorPane {
     /**
      * Az GUI működéséhez szükséges megfigyelők.
      */
-    @Docs(uml = "MainPanel +-- MainPanel.PortalGUIObserver")
+    @Docs(uml = "MainPanel +-- MainPanel.PortalGUIObserver", changed = true)
     private class PortalGUIObserver extends PortalObserver {
         @Override
         public void portalMoved(Visitable newAsteroid, Portal p) {
@@ -332,7 +353,7 @@ public class MainPanel extends AnchorPane {
     /**
      * Az GUI működéséhez szükséges megfigyelők.
      */
-    @Docs(uml = "MainPanel +-- MainPanel.WinLoseObserver")
+    @Docs(uml = "MainPanel +-- MainPanel.WinLoseObserver", changed = true)
     private class WinLoseObserver extends GameObserver {
         private void replaceAllWithTxt(String text) {
             Platform.runLater(() -> {
diff --git a/src/projlab/PortalObserver.java b/src/projlab/PortalObserver.java
index 705e4d238afc04dbf4ed96c1af36729f5054ac61..cba98f8a578b1cd0cfec628a9d69b22e78019fe6 100644
--- a/src/projlab/PortalObserver.java
+++ b/src/projlab/PortalObserver.java
@@ -3,10 +3,24 @@ package projlab;
 /**
  * Az GUI működéséhez szükséges megfigyelők.
  */
+@Docs(changed = true)
 public abstract class PortalObserver {
+    /**
+     * Kerge portál mozgásakor ellőtt esemény.
+     * @param newAsteroid
+     * @param p
+     */
     void portalMoved(Visitable newAsteroid, Portal p){}
 
+    /**
+     * Portál megkergülésekor ellőtt esemény.
+     * @param p
+     */
     void portalBecomeKerge(Portal p){}
 
+    /**
+     * Portál felrobbanásakor ellőtt esemény.
+     * @param p
+     */
     void portalExploded(Portal p){}
 }
diff --git a/src/projlab/SettlerControlPanel.java b/src/projlab/SettlerControlPanel.java
index 8880997b9826289952636b0fdb958b1a173df5d1..eb4004478f2770e92932f27ba9b31a881f0456b2 100644
--- a/src/projlab/SettlerControlPanel.java
+++ b/src/projlab/SettlerControlPanel.java
@@ -12,6 +12,7 @@ import java.util.concurrent.locks.ReentrantLock;
 /**
  * A telepes irányításához szükséges vezérlőpanel. Ezen vannak a fúrás, bányászás stb. gombok.
  */
+@Docs(changed = true)
 public class SettlerControlPanel extends HBox {
     private final Button mine = new Button("mine");
     private final Button drill = new Button("drill");
@@ -23,6 +24,9 @@ public class SettlerControlPanel extends HBox {
 
     private final ReentrantLock roundDone = new ReentrantLock();
 
+    /**
+     * Éppen az a telepes, amelyiknek a körében tartunk.
+     */
     private Settler settler = null;
 
     /**
@@ -56,7 +60,7 @@ public class SettlerControlPanel extends HBox {
     /**
      * Bányászás gomb lenyomása.
      */
-    @Docs(uml = "SettlerControlPanel +-- SettlerControlPanel.MineBtnEvent")
+    @Docs(uml = "SettlerControlPanel +-- SettlerControlPanel.MineBtnEvent", changed = true)
     private class MineBtnEvent implements EventHandler<MouseEvent> {
         @Override
         public void handle(MouseEvent mouseEvent) {
@@ -64,6 +68,9 @@ public class SettlerControlPanel extends HBox {
         }
     }
 
+    /**
+     * Fúrás gomb lenyomása.
+     */
     public void pushedDrillBtn() {
         var success = settler.drill();
         if (success) {
@@ -74,7 +81,7 @@ public class SettlerControlPanel extends HBox {
     /**
      * Fúrás gomb lenyomása.
      */
-    @Docs(uml = "SettlerControlPanel +-- SettlerControlPanel.DrillBtnEvent")
+    @Docs(uml = "SettlerControlPanel +-- SettlerControlPanel.DrillBtnEvent", changed = true)
     private class DrillBtnEvent implements EventHandler<MouseEvent> {
         @Override
         public void handle(MouseEvent mouseEvent) {
@@ -82,7 +89,7 @@ public class SettlerControlPanel extends HBox {
         }
     }
 
-    @Docs(uml = "SettlerControlPanel +-- SettlerControlPanel.ChosenHandler")
+    @Docs(uml = "SettlerControlPanel +-- SettlerControlPanel.ChosenHandler", changed = true)
     private class ChosenHandler implements InventoryChooserPanel.InventoryChosen {
         @Override
         public void chosen(Material material) {
@@ -105,7 +112,7 @@ public class SettlerControlPanel extends HBox {
     /**
      * Nyersanyag visszahelyezése gomb lenyomása.
      */
-    @Docs(uml = "SettlerControlPanel +-- SettlerControlPanel.PutBackBtnEvent")
+    @Docs(uml = "SettlerControlPanel +-- SettlerControlPanel.PutBackBtnEvent", changed = true)
     private class PutBackBtnEvent implements EventHandler<MouseEvent> {
         @Override
         public void handle(MouseEvent mouseEvent) {
@@ -126,7 +133,7 @@ public class SettlerControlPanel extends HBox {
     /**
      * Robot építése gomb lenyomása.
      */
-    @Docs(uml = "SettlerControlPanel +-- SettlerControlPanel.BuildRobotBtnEvent")
+    @Docs(uml = "SettlerControlPanel +-- SettlerControlPanel.BuildRobotBtnEvent", changed = true)
     private class BuildRobotBtnEvent implements EventHandler<MouseEvent> {
         @Override
         public void handle(MouseEvent mouseEvent) {
@@ -147,7 +154,7 @@ public class SettlerControlPanel extends HBox {
     /**
      * Teleportkapu építése gomb lenyomása.
      */
-    @Docs(uml = "SettlerControlPanel +-- SettlerControlPanel.BuildPortalBtnEvent")
+    @Docs(uml = "SettlerControlPanel +-- SettlerControlPanel.BuildPortalBtnEvent", changed = true)
     private class BuildPortalBtnEvent implements EventHandler<MouseEvent> {
         @Override
         public void handle(MouseEvent mouseEvent) {
@@ -169,7 +176,7 @@ public class SettlerControlPanel extends HBox {
     /**
      * Teleportkapu lerakása gomb lenyomása.
      */
-    @Docs(uml = "SettlerControlPanel +-- SettlerControlPanel.PlacePortalBtnEvent")
+    @Docs(uml = "SettlerControlPanel +-- SettlerControlPanel.PlacePortalBtnEvent", changed = true)
     private class PlacePortalBtnEvent implements EventHandler<MouseEvent> {
         @Override
         public void handle(MouseEvent mouseEvent) {
@@ -194,6 +201,9 @@ public class SettlerControlPanel extends HBox {
         } catch (InterruptedException ignored) {}
     }
 
+    /**
+     * A telepes körében ellőtt esemény.
+     */
     public void settlerTicked() {
         waitTick();
     }
@@ -201,7 +211,7 @@ public class SettlerControlPanel extends HBox {
     /**
      * Segédosztály a telepesek léptetésének kezeléséhez.
      */
-    @Docs(uml = "SettlerControlPanel +-- SettlerControlPanel.SettlerTickHandler")
+    @Docs(uml = "SettlerControlPanel +-- SettlerControlPanel.SettlerTickHandler", changed = true)
     public class SettlerTickHandler extends SettlerObserver {
 
         @Override
@@ -223,7 +233,7 @@ public class SettlerControlPanel extends HBox {
     /**
      * Segédosztály a nyerés/vesztés kezeléséhez.
      */
-    @Docs(uml = "SettlerControlPanel +-- SettlerControlPanel.WinLoseHandler")
+    @Docs(uml = "SettlerControlPanel +-- SettlerControlPanel.WinLoseHandler", changed = true)
     public class WinLoseHandler extends GameObserver {
 
         private void clear() {
diff --git a/src/projlab/SettlerInfoPanel.java b/src/projlab/SettlerInfoPanel.java
index eb372de5e6095f2f64d680fe17b0d0c65f12dab5..0910b6d27b6f5d549793ceab76ef336970e40456 100644
--- a/src/projlab/SettlerInfoPanel.java
+++ b/src/projlab/SettlerInfoPanel.java
@@ -6,6 +6,7 @@ import javafx.scene.control.Label;
 /**
  * A telepes információinak (tároló, stb) szolgáló panel.
  */
+@Docs(changed = true)
 public class SettlerInfoPanel extends Label {
     public SettlerInfoPanel() {
         super("No settlers");
@@ -39,7 +40,7 @@ public class SettlerInfoPanel extends Label {
     /**
      * A telepessel történő események kezelésére szolgáló segédosztály.
      */
-    @Docs(uml = "SettlerInfoPanel +-- SettlerInfoPanel.SettlerEventHandler")
+    @Docs(uml = "SettlerInfoPanel +-- SettlerInfoPanel.SettlerEventHandler", changed = true)
     public class SettlerEventHandler extends SettlerObserver {
 
         @Override
@@ -69,9 +70,12 @@ public class SettlerInfoPanel extends Label {
     /**
      * Segédosztály a nyerés/vesztés kezeléséhez.
      */
-    @Docs(uml = "SettlerInfoPanel +-- SettlerInfoPanel.WinLoseHandler")
+    @Docs(uml = "SettlerInfoPanel +-- SettlerInfoPanel.WinLoseHandler", changed = true)
     public class WinLoseHandler extends GameObserver {
 
+        /**
+         * Letörli a képernyőt.
+         */
         private void clear() {
             var children = getChildren();
             Platform.runLater(() -> children.clear());
diff --git a/src/projlab/SettlerObserver.java b/src/projlab/SettlerObserver.java
index 2c6429aaae62372d27de9efb314a441b63a42063..b666b8d306147c231493851ed8692d6114536116 100644
--- a/src/projlab/SettlerObserver.java
+++ b/src/projlab/SettlerObserver.java
@@ -3,12 +3,30 @@ package projlab;
 /**
  * Az GUI működéséhez szükséges megfigyelők.
  */
+@Docs(changed = true)
 public abstract class SettlerObserver {
+    /**
+     * A telepes körében ellőtt esemény.
+     * @param s
+     */
     void settlerTick(Settler s){}
 
+    /**
+     * A telepes nyersanyagraktárának megváltozásakor ellőtt esemény.
+     * @param s
+     */
     void settlerInventoryChanged(Settler s){}
 
+    /**
+     * A telepes portálraktárának megváltozásakor ellőtt esemény.
+     * @param s
+     */
     void portalInventoryChanged(Settler s){}
 
+    /**
+     * Portál elhelyezésekor ellőtt esemény.
+     * @param s
+     * @param p
+     */
     void portalPlaced(Settler s, Portal p){}
 }