Olen kehittämässä uutta peliä, johon pitäisi tulla kenttäeditori. Kentän lataus tiedostosta kyllä onnistuu, mutta en keksi mitään keinoa toteuttaa kenttäeditoria. Idea on siis, että kun peli avataan, aukeaa valikko, josta voi valita: Uusi peli, Lataa peli, Kenttäeditodi, Tekijät ja Sulje. Auttakaa minua kenttäeditorin tekemisessä!!!
Mitä kaikkea siinä kenttäeditorissa pitäisi pystyä tekemään? Mitä osia kenttään voi kuulua ja mitä rajoituksia osien sijoittelussa on? Suunnitellaanko kenttä näppäimistöllä, hiirellä vai molemmilla? Eli kerro vähän tarkemmin, millaista editoria olet tekemässä, niin on helpompi auttaa.
Ainakin kenttäeditorissa pitäisi pystyä rakentamaan seiniä, laittamaan ovia, lukittuja ovia johon kelpaa avain, avain lukittuun oveen ja asettamaan pöytiä ja tuoleja, yms... Kentän voisi rakentaa hiirellä. Ja pitäisi pystyä tallentamaan ja lataamaan kenttiä vaikka lev. - muodossa. Toivottavasti ei ole liian vaikeaa...
Vaikeus riippuu siitä, kuinka paljon olet ohjelmoinut, mutta aika paljon tuossa on tekemistä. Jos kenttä on sen verran pieni, että se mahtuu aina ruudulle kokonaan, moni asia helpottuu. Myöskin on edullista, jos kenttä muodostuu neliön muotoisista ruuduista, joista jokaisessa on yksi palikka (seinä, ovi, avain jne.). Kenttää kannattaa pitää sekä muistissa taulukossa että näkyvissä näytöllä. Jossain reunassa voisivat olla valittavana kaikki palikat, joita kentälle voi laittaa.
Editorin käytön aikana ohjelma tulee luultavasti pyörimään suuressa silmukassa, jossa koko ajan tarkkaillaan käyttäjän toimia. Jos hiirtä painetaan kentän päällä, samaan kohtaan ilmestyy sillä hetkellä valittuna oleva palikka. Jos hiirtä painetaan palikkavalikon päällä, valitaan käyttöön uusi palikka. Kun kentän ja valikon koordinaatit tiedetään, hiiren koordinaateista voi laskea, minkä ruudun päällä ollaan kentässä tai valikossa (vai ollaanko kummankaan päällä).
Kolme asiaa sinun täytyy osata aika hyvin ennen editorin tekoa: kuinka näytölle piirretään merkkejä (onko peli muuten tekstipohjainen?), kuinka luetaan hiirtä (koodivinkeistä löytyy apua) ja kuinka käsitellään tiedostoja. Mitään yksittäistä monimutkaista asiaa editorin teossa ei ole (vaikein juttu on ehkä laskea hiiren paikasta, minkä ruudun kohdalla ollaan), mutta edellä mainittujen lisäksi ohjelmoinnin perusteet (muuttujat, taulukot, ehdot, silmukat) täytyy olla kyllä hallinnassa.
Tämä oli melko yleisluonteinen selostus, mutta kysy lisää tarvittaessa!
Aihe on jo aika vanha, joten et voi enää vastata siihen.