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 » Sat May 23, 2009 8:13 pm

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 » Sat May 23, 2009 8:24 pm

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 » Sat May 23, 2009 8:28 pm

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: 1587
Joined: Thu Dec 06, 2007 8:46 pm
Location: Espoo
Contact:

Re: Aloittelijalle apua

Post by valscion » Sat May 23, 2009 8:31 pm

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 » Sat May 23, 2009 8:44 pm

Uusi ongelma: Teksti näkyy vain tietyistä väreistä läpi.

User avatar
valscion
Moderator
Moderator
Posts: 1587
Joined: Thu Dec 06, 2007 8:46 pm
Location: Espoo
Contact:

Re: Aloittelijalle apua

Post by valscion » Sat May 23, 2009 8:59 pm

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

User avatar
Viltzu
Guru
Posts: 1132
Joined: Sun Aug 26, 2007 5:45 pm
Location: Alavieska
Contact:

Re: Aloittelijalle apua

Post by Viltzu » Sat May 23, 2009 9:18 pm

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 » Sun May 24, 2009 7:50 am

Miksei tämä pätkä toimi?

Code: Select all

If pisteet# = 10.0 Then Text 1, 20, "hyva"

User avatar
skorpioni-cb
Advanced Member
Posts: 364
Joined: Wed Dec 03, 2008 4:48 pm
Location: Turku

Re: Aloittelijalle apua

Post by skorpioni-cb » Sun May 24, 2009 8:15 am

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

Awaclus
Forum Veteran
Posts: 2939
Joined: Tue Aug 28, 2007 2:50 pm

Re: Aloittelijalle apua

Post by Awaclus » Sun May 24, 2009 11:57 am

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.

User avatar
koodaaja
Moderator
Moderator
Posts: 1583
Joined: Mon Aug 27, 2007 11:24 pm
Location: Otaniemi - Mikkeli -pendelöinti

Re: Aloittelijalle apua

Post by koodaaja » Sun May 24, 2009 8:57 pm

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