Game of Life Java-harjoitustyö Tekijä: Vesa Nieminen Työ on melko itsestäänselvä ja yksinkertainen. Toteutettuna on kolme luokkaa kahdessa eri tiedostossa. LifeModel.java:ssa toteutetaan itse "game of life"-simulaatio LifeModel luokassa ja GameOfLife.java:ssa GameOfLife luokka, joka perii Midletin, sekä MyCanvas luokka, jossa toteutetaan mallin piirto näytölle kaksoispuskurointitekniikkaa hyödyntäen. Kun ohjelma käynnistetään niin ensin satunnaistetaan lähtökohta, jota sitten aletaan simuloimaan askel askeleelta maksimissaan 10 sykliä per sekunti (cycles per second, eli cps). Simuloidun maailman tilaan voi vaikuttaa näppäinkomennoilla esimerkiksi pysäyttämällä simulaatio painamalla #-näppäintä, tyhjentämällä koko maailma painamalla 0-näppäintä ja syöttämällä uusi haluttu maailman tila manuaalisesti nuolinäppäimiä ja valintanappia käyttämällä. Käytettävissä olevat näppäinkomennot: KEY_NUM1: Laittaa infotekstit näkyviin ruudun vasempaan yläkulmaan KEY_NUM3: Sekoittaa alkutilanteen uudelleen KEY_NUM0: Tyhjentää ruudun KEY_POUND: Pysäyttää simulaation ja laittaa kursorin näkyviin KEY_NUM9: Muuttaa maailman kokoa suuremmaksi KEY_NUM7: Muuttaa maailman kokoa pienemmäksi KEY.LEFT: Siirtää kursoria vasemmalle KEY.RIGHT: Siirtää kursoria oikealle KEY.UP: Siirtää kursoria ylös KEY.DOWN: Siirtää kursoria alas KEY.FIRE: Vaihtaa solun tilaa. Elävä -> kuollut tai kuollut -> elävä. Tässä elämän muotoja, joita on mielenkiintoista kokeilla: "Glider": Liikkuu eteenpäin maailmassa x x xxx "10 Cell Row" xxxxxxxxxx "Exploder" x x x x x x x x x x x x "R-pentomino" xx xx x