Kindergarten
Class Palya

java.lang.Object
  extended byjava.lang.Thread
      extended byKindergarten.Palya
All Implemented Interfaces:
java.lang.Runnable

public class Palya
extends java.lang.Thread

A játék szíve, a képernyőn megjelenő objektumokat ez az osztály hozza létre, és helyezi el a megfelelő helyekre, különböző algoritmusok szerint, amik a későbbiekben lesznek implementálva.


Field Summary
 Ido ido
           
 Ovono ovono
           
 java.util.Vector PalyaElemek
          A PalyaElemeket tartalmazó vektor.
 Proto proto
          A kiírást és a naplózást hivatott megoldani, különböző függvényeivel.
 
Fields inherited from class java.lang.Thread
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY
 
Constructor Summary
Palya()
          A kontruktor, jelenleg csak egy Proto objektumot hoz létre, a későbbiekben lehet hogy az egyszerűsítések miatt ez fogja beállítani az osztály saját változóit.
 
Method Summary
 boolean ElfogytakAzOvisok()
           
 int getID(int s, int o)
          Koordinatak alapjan visszaadja a PalyaElem id-jét a Vectorban.
 java.util.Vector getPE()
           
 int getRP()
           
 int getSorhossz()
           
 void Nullaz()
           
 void OsszCsokiautomataBeallit(int x)
          A függvény nevében lévő változót állítja be, később lehet hogy egy függvénybe lesz összevonva a többi beállító függvénnyel.
 void OsszJatekboltBeallit(int x)
          A függvény nevében lévő változót állítja be, később lehet hogy egy függvénybe lesz összevonva a többi beállító függvénnyel.
 void OsszKutyaBeallit(int x)
          A függvény nevében lévő változót állítja be, később lehet hogy egy függvénybe lesz összevonva a többi beállító függvénnyel.
 void OsszOvodasBeallit(int x)
          A függvény nevében lévő változót állítja be, később lehet hogy egy függvénybe lesz összevonva a többi beállító függvénnyel.
 void PalyaEpit()
          Létrehozza a PalyaElemek sokaságát, és elindítja a szomszédok beállítását.
 void run()
          A Thread futó szála.
 void SzomszedBeallit()
          A PalyaElemeket szövi össze egy pályává, mindegyiknek beállítja a 6 szomszédját (méhkaptár elrendezés).
 
Methods inherited from class java.lang.Thread
activeCount, checkAccess, countStackFrames, currentThread, destroy, dumpStack, enumerate, getContextClassLoader, getName, getPriority, getThreadGroup, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setName, setPriority, sleep, sleep, start, stop, stop, suspend, toString, yield
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

PalyaElemek

public java.util.Vector PalyaElemek
A PalyaElemeket tartalmazó vektor.


proto

public Proto proto
A kiírást és a naplózást hivatott megoldani, különböző függvényeivel.


ido

public Ido ido

ovono

public Ovono ovono
Constructor Detail

Palya

public Palya()
A kontruktor, jelenleg csak egy Proto objektumot hoz létre, a későbbiekben lehet hogy az egyszerűsítések miatt ez fogja beállítani az osztály saját változóit.

Method Detail

PalyaEpit

public void PalyaEpit()
Létrehozza a PalyaElemek sokaságát, és elindítja a szomszédok beállítását. Tehát felépíti a pályát.


OsszOvodasBeallit

public void OsszOvodasBeallit(int x)
A függvény nevében lévő változót állítja be, később lehet hogy egy függvénybe lesz összevonva a többi beállító függvénnyel.


OsszCsokiautomataBeallit

public void OsszCsokiautomataBeallit(int x)
A függvény nevében lévő változót állítja be, később lehet hogy egy függvénybe lesz összevonva a többi beállító függvénnyel.


OsszJatekboltBeallit

public void OsszJatekboltBeallit(int x)
A függvény nevében lévő változót állítja be, később lehet hogy egy függvénybe lesz összevonva a többi beállító függvénnyel.


OsszKutyaBeallit

public void OsszKutyaBeallit(int x)
A függvény nevében lévő változót állítja be, később lehet hogy egy függvénybe lesz összevonva a többi beállító függvénnyel.


SzomszedBeallit

public void SzomszedBeallit()
A PalyaElemeket szövi össze egy pályává, mindegyiknek beállítja a 6 szomszédját (méhkaptár elrendezés). Az elgondolás: - PalyaElemek elrendezese: --- a páros sorokban (a nulla is ide tartozik) Sorhossz-nyi --- a páratlan sorokoban Sorhossz-1-nyi - Láncolási szabályok: --- * MINDEN ciklus elején a szomszédok null-ra vannak állítva, így az olyan kivételeket, ahol a null-t kéne lekezelni nem szükségesek, mivel ha nem állítunk be mást, akkor null marad az érték. --- * ps -> igaz ha páros sorban vagyunk --- * akthossz -> páros sorban 10, páratlanban 9 --- * maxhossz -> akthossz értékénél 1-gyel kevesebb, mivel az utolsó oszlopnak, ha páros akkor egyik se, ha páratlan akkor csak a jobboldali szomszédja --- Baloldali tagokra: ----- Az első, vagyis 0. oszlop kivételével mindegyikhez megadhatjuk az [oszlop-1]. PalyaElemet --- Jobboldali tagokra: ----- Az utolsó, azaz [akthossz]. oszlop kivételével mindegyikhez megadhatjuk az [oszlop+1]. PalyaElemet --- Balfelső tagokra: ----- Az első, azaz 0. sor kivételével; különvéve a páros és páratlan sorban lévő PalyaElemeket: ----- Páros sorban: A páratlan sorok rövidebbsége miatt az első, azaz 0. oszlopban lévő tag kivételével mindegyikhez megadhatjuk a [sor-1][oszlop-1]. PalyaElemet ----- Páratlan sorban: Itt minden tagnak van balfelső szomszédja, tehát mindegyikhez megadhatjuk a [sor-1][oszlop]. PalyaElemet --- Jobbfelső tagokra: ----- Az első, azaz 0. sor kivételével; különvéve a páros és páratlan sorban lévő PalyaElemeket: ----- Páros sorban: A páratlan sorok rövidebbsége miatt az utolsó, azaz [akthossz]. oszlopban lévő tag kivételével mindegyikhez megadhatjuk a [sor-1][oszlop]. PalyaElemet ----- Páratlan sorban: Itt minden tagnak van jobbfelső szomszédja, tehát mindegyikhez megadhatjuk a [sor-1][oszlop+1]. PalyaElemet --- Balalsó tagokra: ----- Az utolsó, azaz [Sorhossz-1]. sor kivételével; különvéve a páros és páratlan sorban lévő PalyaElemeket: ----- Páros sorban: A páratlan sorok rövidebbsége miatt az első, azaz 0. oszlopban lévő tag kivételével mindegyikhez megadhatjuk a [sor+1][oszlop-1]. PalyaElemet ----- Páratlan sorban: Itt minden tagnak van balalsó szomszédja, tehát mindegyikhez megadhatjuk a [sor+1][oszlop]. PalyaElemet --- Jobbalsó tagokra: ----- Az utolsó, azaz [Sorhossz-1]. sor kivételével; különvéve a páros és páratlan sorban lévő PalyaElemeket: ----- Páros sorban: A páratlan sorok rövidebbsége miatt az utolsó, azaz [akthossz]. oszlopban lévő tag kivételével mindegyikhez megadhatjuk a [sor+1][oszlop]. PalyaElemet ----- Páratlan sorban: Itt minden tagnak van jobbalsó szomszédja, tehát mindegyikhez megadhatjuk a [sor+1][oszlop+1]. PalyaElemet - Meg van a 6 szomszéd referenciája, már csak át kell adni a [sor][oszlop] helyen lévő PalyaElemnek.


getID

public int getID(int s,
                 int o)
Koordinatak alapjan visszaadja a PalyaElem id-jét a Vectorban. Csak a SzomszedBeallit() használja.

Parameters:
s - a sor sorszáma
o - az oszlop sorszáma

run

public void run()
A Thread futó szála. A Proto esetében vezérli a globális id?zít?t és az id? folyását.


Nullaz

public void Nullaz()

getPE

public java.util.Vector getPE()

ElfogytakAzOvisok

public boolean ElfogytakAzOvisok()

getRP

public int getRP()

getSorhossz

public int getSorhossz()