Tyhmät kysymykset (II/2009)

Voit pyytää apua ohjelmointiongelmiin täältä.
Locked
Latexi95
Guru
Posts: 1166
Joined: Sat Sep 20, 2008 5:10 pm
Location: Lempäälä

Re: Tyhmät kysymykset (II/2009)

Post by Latexi95 »

cool-driver wrote:Ja miten saan tässä koodinpätkässä tehtyä sen, että vuodenvalinta numero ei enää tule Inputtiin
Olkaa hyvä.

Code: Select all

ClearText
ClearKeys
CloseInput

ClsColor 0,164,255
Cls
Color 255,255,255


Repeat

    Text 0,0, "Täällä aloitat pelin."
    Text 0,22,"Ensiksi kijoira yhtiösi nimi. Nimessä ei saa olla numeroita!"
    Text 0,33,"Sitten valitset aloitusvuoden ja aloitat pelin."
    Text 0,77,"Yhtiösi nimi on " + nimi$
    Text 0,88,"Valitse sen jälkeen aloitusvuosi."
    Text 0,99,"Valitse aloitusvuosi"
    Text 0,110,"1. 1950"
    Text 0,121,"2. 1960"
    Text 0,132,"3. 1970"
    Text 0,143,"4. 1980"
    Text 0,154,"5. 1985"
    Text 0,165,"6. 1990"
    Text 0,176,"7. 2000"
    Text 0,187,"8. 2005"
    Text 0,198,"9. Takaisin"
    If KeyDown(cbkey1) Then
        vuosi = 1950
        Goto toimisto    
    ElseIf KeyDown(cbkey2) Then
        vuosi = 1960
        Goto toimisto
    ElseIf KeyDown(cbkey3) Then
        vuosi = 1970
        Goto toimisto   
    ElseIf KeyDown(cbkey4) Then
        vuosi = 1980
        Goto toimisto
    ElseIf KeyDown(cbkey5) Then
        vuosi = 1985
        Goto toimisto 
    ElseIf KeyDown(cbkey6) Then
        vuosi = 1990
        Goto toimisto
    ElseIf KeyDown(cbkey7) Then
        vuosi = 2000
        Goto toimisto
    ElseIf KeyDown(cbkey8) Then
        vuosi = 2005
        Goto toimisto
    ElseIf KeyDown(cbkey9) Then
        Goto päävalikko
    Else
        Locate 0,55
        nimi$ = Input("Kirjoita yhtiösi nimi ")
    EndIf
    
DrawScreen
Forever 
cool-driver
Active Member
Posts: 116
Joined: Sat Feb 14, 2009 7:47 am

Re: Tyhmät kysymykset (II/2009)

Post by cool-driver »

Latexi95 wrote:
cool-driver wrote:Ja miten saan tässä koodinpätkässä tehtyä sen, että vuodenvalinta numero ei enää tule Inputtiin
Olkaa hyvä.

Code: Select all

ClearText
ClearKeys
CloseInput

ClsColor 0,164,255
Cls
Color 255,255,255


Repeat

    Text 0,0, "Täällä aloitat pelin."
    Text 0,22,"Ensiksi kijoira yhtiösi nimi. Nimessä ei saa olla numeroita!"
    Text 0,33,"Sitten valitset aloitusvuoden ja aloitat pelin."
    Text 0,77,"Yhtiösi nimi on " + nimi$
    Text 0,88,"Valitse sen jälkeen aloitusvuosi."
    Text 0,99,"Valitse aloitusvuosi"
    Text 0,110,"1. 1950"
    Text 0,121,"2. 1960"
    Text 0,132,"3. 1970"
    Text 0,143,"4. 1980"
    Text 0,154,"5. 1985"
    Text 0,165,"6. 1990"
    Text 0,176,"7. 2000"
    Text 0,187,"8. 2005"
    Text 0,198,"9. Takaisin"
    If KeyDown(cbkey1) Then
        vuosi = 1950
        Goto toimisto    
    ElseIf KeyDown(cbkey2) Then
        vuosi = 1960
        Goto toimisto
    ElseIf KeyDown(cbkey3) Then
        vuosi = 1970
        Goto toimisto   
    ElseIf KeyDown(cbkey4) Then
        vuosi = 1980
        Goto toimisto
    ElseIf KeyDown(cbkey5) Then
        vuosi = 1985
        Goto toimisto 
    ElseIf KeyDown(cbkey6) Then
        vuosi = 1990
        Goto toimisto
    ElseIf KeyDown(cbkey7) Then
        vuosi = 2000
        Goto toimisto
    ElseIf KeyDown(cbkey8) Then
        vuosi = 2005
        Goto toimisto
    ElseIf KeyDown(cbkey9) Then
        Goto päävalikko
    Else
        Locate 0,55
        nimi$ = Input("Kirjoita yhtiösi nimi ")
    EndIf
    
DrawScreen
Forever 
Danke, mutta siirsin tuon aloitusvuodenvalinnan ja nimen kirjoituksen eri paikkoihin, mutta kiitos kuitenkin.

Ja sitten olisiko ketään tehnyt omaa tallenuskoodia, jonka haluaisia antaa käyttööni?
Projektit:
Ships Income Liikenne Suomesta Beta 2: valmis. Lataa tästä Projekti keskeytetty. Tehdään loppuun uuden CoolBasicin tulon jälkeen.
Diktaattori Beta 2: valmis. Lataa Tästä Projekti keskeytetty. Tehdään loppuun uuden CoolBasicin tulon jälkeen.
11v
Member
Posts: 73
Joined: Wed Jun 10, 2009 10:13 pm

Re: Tyhmät kysymykset (II/2009)

Post by 11v »

Suosittelisin, kylläkin ihan saveprogram komentoa
Jos et sattunut huomamaan 6 sivun lopussa on vielä yksi mun viesti :lol:
Black city peleistä parhain
User avatar
esa94
Guru
Posts: 1855
Joined: Tue Sep 04, 2007 5:35 pm

Re: Tyhmät kysymykset (II/2009)

Post by esa94 »

11v wrote:Suosittelisin, kylläkin ihan saveprogram komentoa
Jos et sattunut huomamaan 6 sivun lopussa on vielä yksi mun viesti :lol:
Minä en suosittele, niinkuin ei manuaalikaan. SaveProgramilla tehdyt tallennukset eivät toimi, vaikka lisäisit tai poistaisit vain yhden muuttujan. Tee oma koodi, se on helppoa.
cool-driver
Active Member
Posts: 116
Joined: Sat Feb 14, 2009 7:47 am

Re: Tyhmät kysymykset (II/2009)

Post by cool-driver »

esa94 wrote:
11v wrote:Suosittelisin, kylläkin ihan saveprogram komentoa
Jos et sattunut huomamaan 6 sivun lopussa on vielä yksi mun viesti :lol:
Minä en suosittele, niinkuin ei manuaalikaan. SaveProgramilla tehdyt tallennukset eivät toimi, vaikka lisäisit tai poistaisit vain yhden muuttujan. Tee oma koodi, se on helppoa.
Minähän juuri kysyin, että onko jollakintallennuskoodia, jonka haluaisi antaa käyttööni?
Projektit:
Ships Income Liikenne Suomesta Beta 2: valmis. Lataa tästä Projekti keskeytetty. Tehdään loppuun uuden CoolBasicin tulon jälkeen.
Diktaattori Beta 2: valmis. Lataa Tästä Projekti keskeytetty. Tehdään loppuun uuden CoolBasicin tulon jälkeen.
User avatar
esa94
Guru
Posts: 1855
Joined: Tue Sep 04, 2007 5:35 pm

Re: Tyhmät kysymykset (II/2009)

Post by esa94 »

cool-driver wrote:
esa94 wrote:
11v wrote:Suosittelisin, kylläkin ihan saveprogram komentoa
Jos et sattunut huomamaan 6 sivun lopussa on vielä yksi mun viesti :lol:
Minä en suosittele, niinkuin ei manuaalikaan. SaveProgramilla tehdyt tallennukset eivät toimi, vaikka lisäisit tai poistaisit vain yhden muuttujan. Tee oma koodi, se on helppoa.
Minähän juuri kysyin, että onko jollakintallennuskoodia, jonka haluaisi antaa käyttööni?
Minä totean, että sillä ei ole väliä vaikka olisikin, sillä tuskin käytät samoja muuttujia, kuin joku toinen. Kirjoitat ne vain tiedostoon vaikkapa komennoilla WriteInt ja WriteString, ja luet sieltä vastaavilla lukukomennoilla.
Nassi_Setä
Advanced Member
Posts: 281
Joined: Sat Jun 28, 2008 5:19 pm
Location: Hämeessä miä

Re: Tyhmät kysymykset (II/2009)

Post by Nassi_Setä »

Code: Select all

Color cbGreen 

AddText "ohjaa palluraa nuolilla"
AddText "paina 1 tallentaaksesi"
AddText "paina 2 ladataksesi"

x=100
y=100

Repeat 

    If LeftKey() Then x-1
    If RightKey() Then x+1
    If UpKey() Then y-1
    If DownKey() Then y+1
    
    Color cbWhite
    Circle x,y,12,12

    If KeyHit(2) Then Gosub tallenna
    If KeyHit(3) Then Gosub lataa


    DrawScreen

Forever 


tallenna: 

    a=OpenToWrite ("tallennus.dat")'avaa tiedoston kirjoittamista varten
        WriteInt a,x'kirjoitetaan pallon x ja y koordinaatit
        WriteInt a,y'WriteIntillä voidaan tallentaa melkein mikä vaan kokonaisluku
    CloseFile a'sulkee tiedoston
    Return 'palaa

lataa:
    
    a=OpenToRead("tallennus.dat")'avaa kansion lukemiseen 
        x=ReadInt(a)'lukee pallon x ja y koordinaatit
        y=ReadInt(a)
    CloseFile a'sulkee tiedoston
    Return'palaa
Tällä tavalla saat latattua ja tallennettua muuttujia, myös tekstiä voi tallentaa komennolla WriteString.
muuttujat on luettava tiedostosta samassa järjestyksessä kuin ne kirjoitettiin.
\../(-_-)\../ <---klick MyBrute Image
Jotain evilii on tekeillä....
cool-driver
Active Member
Posts: 116
Joined: Sat Feb 14, 2009 7:47 am

Re: Tyhmät kysymykset (II/2009)

Post by cool-driver »

Nassi_Setä wrote:

Code: Select all

Color cbGreen 

AddText "ohjaa palluraa nuolilla"
AddText "paina 1 tallentaaksesi"
AddText "paina 2 ladataksesi"

x=100
y=100

Repeat 

    If LeftKey() Then x-1
    If RightKey() Then x+1
    If UpKey() Then y-1
    If DownKey() Then y+1
    
    Color cbWhite
    Circle x,y,12,12

    If KeyHit(2) Then Gosub tallenna
    If KeyHit(3) Then Gosub lataa


    DrawScreen

Forever 


tallenna: 

    a=OpenToWrite ("tallennus.dat")'avaa tiedoston kirjoittamista varten
        WriteInt a,x'kirjoitetaan pallon x ja y koordinaatit
        WriteInt a,y'WriteIntillä voidaan tallentaa melkein mikä vaan kokonaisluku
    CloseFile a'sulkee tiedoston
    Return 'palaa

lataa:
    
    a=OpenToRead("tallennus.dat")'avaa kansion lukemiseen 
        x=ReadInt(a)'lukee pallon x ja y koordinaatit
        y=ReadInt(a)
    CloseFile a'sulkee tiedoston
    Return'palaa
Tällä tavalla saat latattua ja tallennettua muuttujia, myös tekstiä voi tallentaa komennolla WriteString.
muuttujat on luettava tiedostosta samassa järjestyksessä kuin ne kirjoitettiin.
Ok, entä miten saan tallennetteua Inputit? Eli yhtiön nimen ja muut vastaavat.
Projektit:
Ships Income Liikenne Suomesta Beta 2: valmis. Lataa tästä Projekti keskeytetty. Tehdään loppuun uuden CoolBasicin tulon jälkeen.
Diktaattori Beta 2: valmis. Lataa Tästä Projekti keskeytetty. Tehdään loppuun uuden CoolBasicin tulon jälkeen.
11v
Member
Posts: 73
Joined: Wed Jun 10, 2009 10:13 pm

Re: Tyhmät kysymykset (II/2009)

Post by 11v »

Tässä olisi semmonen, vasen controlli tallentaa, oikea lataa.

Code: Select all

Repeat

DrawScreen
If KeyHit(29) Then Gosub tallenna
If KeyHit(157) Then Gosub lataa

var$=Input ("Kirjoita: ")

Forever

tallenna:


f=OpenToWrite("Media\textfile1.txt")
    WriteLine f,var$
CloseFile f

Return


lataa:

f=OpenToRead("Media\textfile1.txt")
        AddText ReadLine(f) 
CloseFile f

Return 
Black city peleistä parhain
Latexi95
Guru
Posts: 1166
Joined: Sat Sep 20, 2008 5:10 pm
Location: Lempäälä

Re: Tyhmät kysymykset (II/2009)

Post by Latexi95 »

No sinähän tallennat "inputin" muuttujaan.
Tallennat vain muuttujan WriteString komennolla.
Ja vastaavasti luet sen ReadString funktiolla.

Jos pelistä tulee vaikea, voit tehdä huijaamisen mahdolliseksi
tallentamalla kaikki tiedot WriteLine komennolla.
Silloin tallennus tietoja voi muokata millä
tahansa tekstin muokkaus ohjelmalla.(kuten Wordillä tai OpenOfficella) :lol:
cool-driver
Active Member
Posts: 116
Joined: Sat Feb 14, 2009 7:47 am

Re: Tyhmät kysymykset (II/2009)

Post by cool-driver »

Latexi95 wrote:No sinähän tallennat "inputin" muuttujaan.
Tallennat vain muuttujan WriteString komennolla.
Ja vastaavasti luet sen ReadString funktiolla.

Jos pelistä tulee vaikea, voit tehdä huijaamisen mahdolliseksi
tallentamalla kaikki tiedot WriteLine komennolla.
Silloin tallennus tietoja voi muokata millä
tahansa tekstin muokkaus ohjelmalla.(kuten Wordillä tai OpenOfficella) :lol:
No se on huono puoli, että tuo huijaaminen on mahdollista.
Projektit:
Ships Income Liikenne Suomesta Beta 2: valmis. Lataa tästä Projekti keskeytetty. Tehdään loppuun uuden CoolBasicin tulon jälkeen.
Diktaattori Beta 2: valmis. Lataa Tästä Projekti keskeytetty. Tehdään loppuun uuden CoolBasicin tulon jälkeen.
cool-driver
Active Member
Posts: 116
Joined: Sat Feb 14, 2009 7:47 am

Re: Tyhmät kysymykset (II/2009)

Post by cool-driver »

Niin juu. Miten saisi tehtyä sen, että pelissä voisi tehdä useamman kuin vain yhden tallenuksen?
Projektit:
Ships Income Liikenne Suomesta Beta 2: valmis. Lataa tästä Projekti keskeytetty. Tehdään loppuun uuden CoolBasicin tulon jälkeen.
Diktaattori Beta 2: valmis. Lataa Tästä Projekti keskeytetty. Tehdään loppuun uuden CoolBasicin tulon jälkeen.
Nassi_Setä
Advanced Member
Posts: 281
Joined: Sat Jun 28, 2008 5:19 pm
Location: Hämeessä miä

Re: Tyhmät kysymykset (II/2009)

Post by Nassi_Setä »

Ennen tallennusta laita ohjelma kysymään tallennuksen nimeä joka tallennetaan.
Latauksessa laita kysymään ladattavan tallennuksen nimeä ja tarkistamaan onko tallennusta olemassa.

helppoa? :mrgreen:
\../(-_-)\../ <---klick MyBrute Image
Jotain evilii on tekeillä....
cool-driver
Active Member
Posts: 116
Joined: Sat Feb 14, 2009 7:47 am

Re: Tyhmät kysymykset (II/2009)

Post by cool-driver »

Nassi_Setä wrote:Ennen tallennusta laita ohjelma kysymään tallennuksen nimeä joka tallennetaan.
Latauksessa laita kysymään ladattavan tallennuksen nimeä ja tarkistamaan onko tallennusta olemassa.

helppoa? :mrgreen:
Eli etsitään se onko sitä tiedostoa olemassa vai?
Projektit:
Ships Income Liikenne Suomesta Beta 2: valmis. Lataa tästä Projekti keskeytetty. Tehdään loppuun uuden CoolBasicin tulon jälkeen.
Diktaattori Beta 2: valmis. Lataa Tästä Projekti keskeytetty. Tehdään loppuun uuden CoolBasicin tulon jälkeen.
User avatar
-Z-
Devoted Member
Posts: 682
Joined: Tue Aug 28, 2007 3:33 pm
Location: In ur danmaku, grazin ur bullets

Re: Tyhmät kysymykset (II/2009)

Post by -Z- »

cool-driver wrote:
Nassi_Setä wrote:Ennen tallennusta laita ohjelma kysymään tallennuksen nimeä joka tallennetaan.
Latauksessa laita kysymään ladattavan tallennuksen nimeä ja tarkistamaan onko tallennusta olemassa.

helppoa? :mrgreen:
Eli etsitään se onko sitä tiedostoa olemassa vai?
FileExists-funkkarilla tarkistat.
"Fallout 3 (#10) marked a shift in the industry, a move that saw the western RPG begin to surpass its Japanese counterparts." -IGN top 100 RPGs of all time
phons
Guru
Posts: 1056
Joined: Wed May 14, 2008 10:11 am

Re: Tyhmät kysymykset (II/2009)

Post by phons »

Yritän tehdä pientä juttua, ja tuli onglema tuossa skrpitaamisessa. Kun yritin saada aikaan muutujan lisäämistä, niin miten tämä hoituu. Siis jos mulla lukee omg_wtf.txt tiedostossa että: XD = XD + 1
Niin miten saan käännetäessä sanomaan koodissa olevalle XD muutujalle että sitä lisätään yhdellä. Ja tähän ei saa kulua 1000 riviä sellaiseen että jok'ikinen muuttuja käydään läpi, vaan että se tunnistaisi nuo muuttujat ja sitten lisäisi niihin, mihin pitää. Itellä ei älli riittäny... :roll:

Edit: Do'H!!! :cry:
Edit2: Tuo kuulosta itse asiassa hyvältä. ;)
Last edited by phons on Fri Jun 26, 2009 12:36 am, edited 2 times in total.
Image
User avatar
valscion
Moderator
Moderator
Posts: 1599
Joined: Thu Dec 06, 2007 7:46 pm
Location: Espoo
Contact:

Re: Tyhmät kysymykset (II/2009)

Post by valscion »

phons wrote:Yritän tehdä pientä juttua, ja tuli onglema tuossa skrpitaamisessa. Kun yritin saada aikaan muutujan lisäämistä, niin miten tämä hoituu. Siis jos mulla lukee omg_wtf.txt tiedostossa että: XD = XD + 1
Niin miten saan käännetäessä sanomaan koodissa olevalle XD muutujalle että sitä lisätään yhdellä. Ja tähän ei saa kulua 1000 riviä sellaiseen että jok'ikinen muuttuja käydään läpi, vaan että se tunnistaisi nuo muuttujat ja sitten lisäisi niihin, mihin pitää. Itellä ei älli riittäny... :roll:
Tuo vaatii sitä, että voisi käyttää eval-tyylistä funktiota. Mutta koska CoolBasic ei tue evaluointia, on skriptaaminen hieman hankalahkoa.
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
Jonez
Devoted Member
Posts: 575
Joined: Mon Aug 27, 2007 8:37 pm

Re: Tyhmät kysymykset (II/2009)

Post by Jonez »

phons wrote:Yritän tehdä pientä juttua, ja tuli onglema tuossa skrpitaamisessa. Kun yritin saada aikaan muutujan lisäämistä, niin miten tämä hoituu. Siis jos mulla lukee omg_wtf.txt tiedostossa että: XD = XD + 1
Niin miten saan käännetäessä sanomaan koodissa olevalle XD muutujalle että sitä lisätään yhdellä. Ja tähän ei saa kulua 1000 riviä sellaiseen että jok'ikinen muuttuja käydään läpi, vaan että se tunnistaisi nuo muuttujat ja sitten lisäisi niihin, mihin pitää. Itellä ei älli riittäny... :roll:
Hmm.. Tässä pieni idea:
1. Kaikki skriptin muuttujat ovat koodissa taulukkona (jokaiselle tietotyypille omansa).
2. Ohjelman alussa tekstitiedosto käydään läpi, muttujanimet tunnistetaan ja ne muutetaan luvuiksi järjestysluvun mukaan, tyyliin:

Code: Select all

Dim testi
testi = 100

muuttuu

Dim #1
#1 = 100
3. Taulukkoja venytetään muuttujien määrän mukaan.
4. Kun skriptiä lopulta käydään läpi, taulukon solut säilövät arvoja sen mukaan:
#43 = #43 + 4
Tarkoittaa koodissa:
VarInt( 43 ) = VarInt( 43 ) + 4

On myöhä. Toivottavasti tässä ei ole tapahtunut mitään kriittistä ajatusvirhettä...
-Vuoden 2008 aloittelijan ystävä -palkinnon voittaja-
Image <- protestipelikilpailun voittaja.
Space War
Nassi_Setä
Advanced Member
Posts: 281
Joined: Sat Jun 28, 2008 5:19 pm
Location: Hämeessä miä

Re: Tyhmät kysymykset (II/2009)

Post by Nassi_Setä »

miten säätää animaation nopeutta, kun se on tehty kuvilla?
\../(-_-)\../ <---klick MyBrute Image
Jotain evilii on tekeillä....
JATothrim
Tech Developer
Tech Developer
Posts: 606
Joined: Tue Aug 28, 2007 6:46 pm
Location: Kuopio

Re: Tyhmät kysymykset (II/2009)

Post by JATothrim »

No, koska kuva animaatio piirretään näin: "DrawImage kuva, x, y, frame_numero" animaation nopeus riippuu siitä miten kasvatat/vähennät "frame_numero" muuttujaa. helppoa?
-On selkeästi impulsiivinen koodaaja joka...
ohjelmoi C++:lla rekursiivisesti instantioidun templaten, jonka jokainen instantiaatio instantioi sekundäärisen singleton-template-luokan, jonka jokainen instanssi käynistää säikeen tulostakseen 'jea'.
Locked