Aloittelijalle apua

Voit pyytää apua ohjelmointiongelmiin täältä.
Post Reply
User avatar
buke44
Active Member
Posts: 169
Joined: Sat May 23, 2009 8:10 pm
Location: Tampere

Aloittelijalle apua

Post by buke44 »

Olen tekemässä Anteron jorauspeliä. Tarvisin pistelaskulärjestelmän. Millä koodipätkällä pisteet# muuttujan arvoa saisi nostettua 0.1, kun painaa välilyöntiä. (cbkeyspace)
User avatar
Jonez
Devoted Member
Posts: 575
Joined: Mon Aug 27, 2007 8:37 pm

Re: Aloittelijalle apua

Post by Jonez »

Muuttujille voi suorittaa normaaleita, koulussa opittuja matemaattisia toimituksia:

Code: Select all

If KeyHit( CbKeySpace ) Then pisteet# = pisteet# + 0.1
-Vuoden 2008 aloittelijan ystävä -palkinnon voittaja-
Image <- protestipelikilpailun voittaja.
Space War
User avatar
buke44
Active Member
Posts: 169
Joined: Sat May 23, 2009 8:10 pm
Location: Tampere

Re: Aloittelijalle apua

Post by buke44 »

Tuli uusi ongelma. Kun pisteet tulostaa silmukan sisällä, niitä tulee koko ajan lisää, kun ne tulostaa ulkopuolella, ne ei muutu. Kuinka tulostaa muuttuva luku?
User avatar
valscion
Moderator
Moderator
Posts: 1599
Joined: Thu Dec 06, 2007 7:46 pm
Location: Espoo
Contact:

Re: Aloittelijalle apua

Post by valscion »

BotPaska wrote:Tuli uusi ongelma. Kun pisteet tulostaa silmukan sisällä, niitä tulee koko ajan lisää, kun ne tulostaa ulkopuolella, ne ei muutu. Kuinka tulostaa muuttuva luku?
Kanttis varmaan kattoa Text-komentoa?

Code: Select all

Repeat
    muuttuvaluku = muuttuvaluku + 1
    Text 0, 0, "Luku: " + muuttuvaluku
    DrawScreen
Forever
cbEnchanted, uudelleenkirjoitettu runtime. Uusin versio: 0.4.1 — Nyt myös sorsat GitHubissa!
NetMatch - se kunnon nettimättö-deathmatch! Avoimella lähdekoodilla varustettu
vesalaakso.com
User avatar
buke44
Active Member
Posts: 169
Joined: Sat May 23, 2009 8:10 pm
Location: Tampere

Re: Aloittelijalle apua

Post by buke44 »

Uusi ongelma: Teksti näkyy vain tietyistä väreistä läpi.
User avatar
valscion
Moderator
Moderator
Posts: 1599
Joined: Thu Dec 06, 2007 7:46 pm
Location: Espoo
Contact:

Re: Aloittelijalle apua

Post by valscion »

BotPaska wrote:Uusi ongelma: Teksti näkyy vain tietyistä väreistä läpi.
Ennen kuvien/tekstin/piirtokomentojen piirtämistä, kutsu komentoa "DrawGame". Näin muut grafiikat eivät peity objektien alle.
cbEnchanted, uudelleenkirjoitettu runtime. Uusin versio: 0.4.1 — Nyt myös sorsat GitHubissa!
NetMatch - se kunnon nettimättö-deathmatch! Avoimella lähdekoodilla varustettu
vesalaakso.com
Viltzu
Guru
Posts: 1132
Joined: Sun Aug 26, 2007 5:45 pm
Location: Alavieska
Contact:

Re: Aloittelijalle apua

Post by Viltzu »

Nyt vaikuttaa siltä, että et edes ole katsonut manuaalia. Onko näin?
Luulisi nyt pikaisella haullakin manuaalista löytää noihin kysymyksiisi vastaukset.
User avatar
buke44
Active Member
Posts: 169
Joined: Sat May 23, 2009 8:10 pm
Location: Tampere

Re: Aloittelijalle apua

Post by buke44 »

Miksei tämä pätkä toimi?

Code: Select all

If pisteet# = 10.0 Then Text 1, 20, "hyva"
skorpioni-cb
Advanced Member
Posts: 364
Joined: Wed Dec 03, 2008 3:48 pm
Location: Turku

Re: Aloittelijalle apua

Post by skorpioni-cb »

Mikä virheilmotus tulee? Se saattaisi auttaa tai et ole määritellyt muuttujaa esim. silmukassa, koska muutuvat muuttujat esitetään silmukassa.
En tiedä, mitä tiedän, mutta tiedän ettei se ole mitään kaunista.

I know not what I know, but I do know that it's not beautiful.
Awaclus
Forum Veteran
Posts: 2939
Joined: Tue Aug 28, 2007 2:50 pm

Re: Aloittelijalle apua

Post by Awaclus »

BotPaska wrote:Miksei tämä pätkä toimi?

Code: Select all

If pisteet# = 10.0 Then Text 1, 20, "hyva"
Jos ei tule mitään virheilmoitusta, vaan se vain ei toimi, niin se johtuu siitä, että kutsut DrawScreeniä tuon jälkeen kahdesti -> teksti vilahtaa siinä niin nopeasti, että ihmisen silmä ei sitä ehdi näkemään. Jos tilanne on tämä, tässä yksinkertaisin korjaus:

Code: Select all

If pisteet# = 10.0 Then Locate 1, 20: AddText "Hyvä!"
EDIT: Tarkoitti siis sitä, että tämän jälkeen tulee Repeat, jossa on yksi DrawScreen tai kaksi+ DrawScreeniä ilman Repeatia.

Toinen mahdollisuus olisi se, että pisteet# -muuttujaa ei ole tai sen ei ole koskaan mahdollista olla 10.0.
Last edited by Awaclus on Mon May 25, 2009 9:41 am, edited 1 time in total.
koodaaja
Moderator
Moderator
Posts: 1583
Joined: Mon Aug 27, 2007 11:24 pm
Location: Otaniemi - Mikkeli -pendelöinti

Re: Aloittelijalle apua

Post by koodaaja »

Kahden drawscreenin teoria kuulostaa siinä määrin epämääräiseltä, että kuva vilkkuisi jolloin teksti kyllä näkyisi. Tuo muuttujan epätarkkuus sen varmaan tekee, pistä mieluummin vaikka

Code: Select all

If pisteet# > 9.9 And pisteet# < 10.1 Then Text 1, 20, "hyvä"
Näin siis, mikäli pisteet lasketaan jollain kaavalla ja voivat olla esmes 10.00000001. Tai voit pyöristää pisteet kokonaislukuihin, jos se ei ole niin turhan tarkkaa, eli If Int(pisteet#) = 10 Then..
Post Reply