CoolBASIC

Wikipedia

Ohjattu sivulta Coolbasic
Loikkaa: valikkoon, hakuun
CoolBasic
Kehittäjä Jukka Lavonen
Viimeisin versio 10.43 / 6. joulukuuta 2005
Alusta Windows
Ohjelmistotyyppi Ohjelmointikieli, Ohjelmointiympäristö
Kotisivu coolbasic.com
CoolBasic

CoolBasic on Jukka Lavosen kehittämä ohjelmointikieli. Kieli on tarkoitettu lähinnä peliohjelmointiin ja siitä on pyritty tekemään aloittelijaystävällinen. CoolBasicin syntaksi on osittain lainattu BlitzBasic-ohjelmointikielestä.

CoolBasic on vielä kehitysvaiheessa (beta) ja sen kehittäjä onkin lupaillut lähes koko kielen uusimista ensimmäiseen stabiiliin versioon mennessä. Tämänhetkinen CoolBasicin versio on beta 10.43.

CoolBasicin mukana tulevaan ohjelmointiympäristöön upotettu käyttöohje, joka sisältää luettelon ohjelmointikielessä olevista ominaisuuksista. Tällä hetkellä käyttöohje on saatavilla vain suomeksi. Osia käyttöohjeesta ja esimerkkikoodeista on käännetty CoolBasic-yhteisön voimin englannin kielelle, mutta nämä käännökset eivät ole virallisesti jaossa.

CoolBasic ei ole saavuttanut vielä suurta suosiota, mutta on silti kohtuullisen tunnettu ohjelmoijien piirissä. CoolBasicin sivuston keskustelupalstalle on rekisteröitynyt muutamia satoja käyttäjiä.

Sisällysluettelo

[muokkaa] Tekniikasta

CoolBasicissa on sisäänrakennettuna peliohjelmointia helpottavia ominaisuuksia, kuten objektisysteemi ja automaattinen törmäyksentunnistus. CoolBasicissa objektit eroavat normaaleista sprite-grafiikoista ominaisuuksiltaan ja sisäänrakennetuilta toiminnoiltaan. Objektien liikuttaminen, törmäyksien käsittely ja objektien väliset sijainnit on pyritty tekemään ohjelmoinnin kannalta yksinkertaisiksi.

CoolBasic käyttää äänien ja musiikin toistamiseen kaupallista FMOD-äänikirjastoa. FMOD-lisenssin mukaisesti kaupallisille sovelluksille tulee hankkia oma lisenssi. Shareware-lisenssi maksaa 100$. Ilmaiseksi jaettavat ohjelmat eivät tarvitse lisenssiä. CoolBasicista pystyy kutsumaan myös DLL-kirjastoissa olevia funktioita, joten FMOD:ia ei ole pakko käyttää. Tulevassa CoolBasic V3:ssa FMOD-kirjastosta luovutaan, jolloin pelien jakaminen on täysin rajoituksetonta.

CoolBasic sisältää myös sisäänrakennetun tilekarttamoottorin joka helpottaa paljon peliohjelmoijan työtä saada peliinsä kartat.

[muokkaa] Näppäimistökoodit

CoolBasic käyttää näppäimistön lukemiseen Scan-koodeja, sillä ASCII-merkistö ei sisällä vastineita kaikille näppäimille. Jokaiselle näppäimistön näppäimelle on annettu numero, jota kutsutaan scan-koodiksi.

Kuva näppäimistöstä johon on merkitty CoolBasicin scan-koodit.

[muokkaa] Karttaformaatit

Työympäristön mukana tulee myös Tilester-ohjelma pelikenttien luomista varten. Tilester käyttää omaa karttaformaattiaan pelikenttien tallennuksessa. Tilesterin tiedostomuoto on suoraan tuettuna CoolBasicissa.

Vaihtoehtoisia Tilesterin karttaformaattia tukevia ohjelmia ovat Jukka Mähösen CoolBasic-ohjelmointikielellä itsellään kehittämä A Stigmator ja Marko Hiltusen kehittämä TileGen.

[muokkaa] CoolBasicin tulevaisuus

CoolBasicin kehittäjä on kertonut aloittaneensa ohjelmointikielen uudelleenkehittämisen. Samalla ohjelmointikieleen lisätään uusia ominaisuuksia ja ohjelmointikielen toteutustapa tulee vaihtumaan.

Uuteen CoolBasiciin kaavailtuja ominaisuuksia ovat mm. 3D-kiihdytetty grafiikka. Kielestä tulee myös täysin oliopohjainen. Aikaisemmin tulevasta CoolBasic-versiosta käytettiin nimeä CoolBasic Advanced, mutta tällä hetkellä tulevalle versiolle ei ole virallista nimeä. Kehittäjän mukaan myös CoolBasic Advancediin kaavaillut ominaisuudet ja CoolBasicin www-sivuston keskustelupalstalla kerrotut ominaisuudet ovat vanhentunutta tietoa. Uusi nimi on CoolBasic V3.

[muokkaa] Esimerkkiohjelmia

[muokkaa] Esimerkkiohjelma

Seuraava esimerkkikoodi luo 400 pikseliä korkean ja 300 pikseliä leveän ohjelmaikkunan (oletus), johon tulostuu teksti Hello world!, ja joka sulkeutuu, kun mitä tahansa näppäintä painetaan.

Print "Hello world!"    'Tulostetaan tekstiä näytölle
WaitKey                 'Odotetaan että jotain näppäintä painetaan

[muokkaa] Esimerkkiohjelma 2

Tämä koodi luo ohjelman jossa kysytään käyttäjän nimeä. Tämän jälkeen näytölle tulostuu teksti Moi "sinun nimesi"!.

SCREEN 320,240,0,0           'Asetetaan ikkunan leveys, korkeus, värisyvyys ja näyttötila
Repeat  'Aloitetaan silmukka
    nimi$=Input("Nimesi: ")  'Kysytään nimeä
    DrawScreen               'Piirretään tekstit näkyviin
Until KeyHit(cbkeyreturn)    'Silmukka loppuu kun painetaan Entteriä
CloseInput

Cls  'Tyhjennetään ruutu
AddText "Moi "+nimi$+"!"     'Tulostetaan nimi näytölle
DrawScreen                   'Piirretään nimi näkyviin

WaitKey                      'Odotetaan että painetaan jotain näppäintä
End                          'Lopetetaan ohjelma

[muokkaa] Esimerkkiohjelma 3

Tämä ohjelma lataa kuvan luoden siitä objektin ja sitten pyörittää sitä. Ohjelmassa hyödynnetään CoolBasicin mukana tulevaa kuvaa. Ohjelmakoodi voidaan ajaa suoraan IDE:ssä ilman tallennusta, jolloin kuvatiedosto latautuu oikeasta hakemistosta.

SCREEN 640,480,0,0           'Asetetaan ikkunan leveys, korkeus, värisyvyys ja näyttötila
sotilas=LoadObject("media\soldier.bmp", 72)  'Ladataan sotilas ja asetetaan sen pyöritysarvo 72 eri suuntaan
Repeat  'Aloitetaan silmukka
    TurnObject sotilas, 5    'Käännetään sotilasta 5 astetta per kierros
    DrawScreen               'Päivitetään näyttö
Until KeyHit(cbkeyreturn)    'Silmukka loppuu kun painetaan Entteriä

Kaikki esimerkit toimivat CoolBasicin Beta 10.x versioissa.


[muokkaa] Aiheesta muualla

Henkilökohtaiset työkalut
Muilla kielillä