Tyhmät kysymykset (I/2009)

Voit pyytää apua ohjelmointiongelmiin täältä.
Locked
Ozcar
Advanced Member
Posts: 439
Joined: Mon Aug 27, 2007 8:43 pm
Location: Helsinki

Re: Tyhmät kysymykset

Post by Ozcar »

@maamyyrä:

Oletettavasti siis pidät hiirtä pohjassa koko ajan? Tietenkin toinenkin tulee mukaan, koska ehtä (mousedown) täyttyy. Purkkaratkaisuna toimii testata muuttujalla, onko jotain jo poimittuna ja tarkistaa se ennen esineen poimintaa. Paremminkin sen varmasti saisi toimimaan, mutta sitä voit sitten itse miettiä ;).

@Jani:

Kokeileppa korvata rivi

WriteLine f,nimesi

rivillä

WriteLine f,""+nimesi

. Testata en voinut, mutta pitäisi toimia. Myös sen closeinputin voit sieltä sisältä poistaa.


@Thomazu:

If kudit = 0 then
If Timer() = aika + 3000 then
kudit = 7
Endif
Endif
Ratkaisit juuri universaaliongelman! Hienoa, ota keksi.

Filosofia on ajattelun taidetta, mutta sen maalari elää juoden apurahojaan masennukseensa.
Jani
Devoted Member
Posts: 741
Joined: Fri Oct 31, 2008 4:53 pm

Re: Tyhmät kysymykset

Post by Jani »

Ozcar wrote: @Jani:

Kokeileppa korvata rivi

WriteLine f,nimesi

rivillä

WriteLine f,""+nimesi

. Testata en voinut, mutta pitäisi toimia. Myös sen closeinputin voit sieltä sisältä poistaa.
Toi ei sovi nykyiseen koodiin...

Code: Select all

SetFont nimes
Color cbBlue

//Aseta nimi
f=OpenToRead("text.txt")
nimesi2$=ReadLine(f)
CloseFile f
Repeat
//Aseta nimi
    nimesi$=Input("anna nimesi: ")
    Text 0,20,"entinen: "+nimesi2
    DrawScreen
    Until KeyHit(28)
CloseInput
EDIT: Ei muuten tämäkään muuta sitä tekstiä.. :|
Dead men tell no tales. Also, Python rocks!
Codegolf: 99 bottles of beer (oneliner) - Water map partition
TheFish
Developer
Developer
Posts: 477
Joined: Mon Aug 27, 2007 9:28 pm
Location: Joensuu

Re: Tyhmät kysymykset

Post by TheFish »

Jani wrote: Toi ei sovi nykyiseen koodiin...

Code: Select all

...koodia...
EDIT: Ei muuten tämäkään muuta sitä tekstiä.. :|
Ei muuta mitä tekstiä? Viitsisitkö kertoa mikä tuossa on ongelmana? Tuo ei selvästikkään ole koko sorsa, joten sen tarkoitusta on oikeastaan mahdotonta edes arvata.
CoolBasic henkilökuntaa
Kehittäjä
Jani
Devoted Member
Posts: 741
Joined: Fri Oct 31, 2008 4:53 pm

Re: Tyhmät kysymykset

Post by Jani »

TheFish wrote:
Jani wrote: Toi ei sovi nykyiseen koodiin...

Code: Select all

...koodia...
EDIT: Ei muuten tämäkään muuta sitä tekstiä.. :|
Ei muuta mitä tekstiä? Viitsisitkö kertoa mikä tuossa on ongelmana? Tuo ei selvästikkään ole koko sorsa, joten sen tarkoitusta on oikeastaan mahdotonta edes arvata.
Siis tossa oli tarkoitus et näkyisi se edellinen kävijä..

Tahoks pelin koko koodin? 628 riviä pitkä..
Dead men tell no tales. Also, Python rocks!
Codegolf: 99 bottles of beer (oneliner) - Water map partition
nevssons
Devoted Member
Posts: 503
Joined: Sun Jan 13, 2008 5:02 pm

Re: Tyhmät kysymykset

Post by nevssons »

Jani wrote:Siis tossa oli tarkoitus et näkyisi se edellinen kävijä..

Tahoks pelin koko koodin? 628 riviä pitkä..
Tuossa uusi kävijä tallennetaan vanhan päälle.
Tee muuttuja johon säilöt edellisen kävijän nimen ja kirjoita se. Kirjoittamisen jälkeen uusi käyttäjä tallennetaan siihen toiseen muuttujaan.
Näin:

Code: Select all

'SetFont nimes
Color cbBlue
Repeat
//Aseta nimi
    nimesi$=Input("anna nimesi: ")
    DrawScreen
    Until KeyHit(28)
CloseInput
//Avataan text.txt tiedosto, luo tiedoston jos ei ole olemassa
f=OpenToWrite("Media\text.txt")
    //kirjotetaan input tiedostoon
    WriteLine f,edellinen$
    
    edellinen=nimesi
    //Fontti nimes

CloseInput
CloseFile f
AddText ""
f=OpenToRead("Media\text.txt")
Ja koko pelin koodi olisi iso purkka popsittavaksi.

Ja älä lesoile rivimäärilläsi! Haluatko että esittelen sinut parituhatta riviselle pelinalulleni? (Se on melkonen purkkaklöntti se!)
Koodarina kohtalainen, henkilönä vittumainen
Image
Kysymys

Re: Tyhmät kysymykset

Post by Kysymys »

Miksi tämä väittää, että kaikissa aseissa on ammuksia ekan aseen verran? (Tein nopeasti tälläisen karsitun version ohjelmastani)

Code: Select all

    
    Type ASEEET
        Field lippaita 
        Field jaljella
    EndType
    
    Dim ase_lipas(10)
    ase_lipas(1)=10
    ase_lipas(2)=20
    ase_lipas(3)=5
   
    Const aseita=3
    ase_valittu = 1
    
    For an=1 To aseita    
        ah.ASEEET=New(ASEEET)
        ah\lippaita = 3
        ah\jaljella = ase_lipas(an)
    Next an
    
    Repeat
        ase_valittu = ase_valittu + MouseMoveZ()
        If ase_valittu < 1      Then ase_valittu = aseita
        If ase_valittu > aseita Then ase_valittu = 1
        
        valit.ASEEET=First(ASEEET)
        If ase_valittu>1 Then 
            aglo=1
            While aglo = ase_valittu 
                aglo+1
                valit = After(valit)
            Wend
        EndIf
        
        Text 100,100,"Valittu ase: "+ase_valittu
        Text 10,10,"Ammuksia: "+valit\jaljella 
        DrawScreen
        
    Forever
    
TheFish
Developer
Developer
Posts: 477
Joined: Mon Aug 27, 2007 9:28 pm
Location: Joensuu

Re: Tyhmät kysymykset

Post by TheFish »

Kysymys wrote:Miksi tämä väittää, että kaikissa aseissa on ammuksia ekan aseen verran? (Tein nopeasti tälläisen karsitun version ohjelmastani)

Code: Select all

...koodia...
Johtuu siitä, että aglo asetetaan ykköseksi loopin jokaisella kierroksella, eli ase_valittu muuttuja ei vaikuta mitenkään. Sen saa toimimaan vaikkapa näin:

Code: Select all

       
        Type ASEEET
            Field lippaita
            Field jaljella
            Field lipas
        EndType
       
        Dim ase_lipas(10)
        ase_lipas(1)=10
        ase_lipas(2)=20
        ase_lipas(3)=5
       
        Const aseita=3
        ase_valittu = 1
       
        For an=1 To aseita   
            ah.ASEEET=New(ASEEET)
            ah\lippaita = 3
            ah\jaljella = ase_lipas(an)
        Next an
       
        valit.ASEEET=First(ASEEET) //siirsin tämän tänne, koska sitä ei tarvitse turhaan asettaa joka kierroksella
       
        Repeat
            ase_valittu = ase_valittu + MouseMoveZ()
            If ase_valittu < 1      Then ase_valittu = aseita
            If ase_valittu > aseita Then ase_valittu = 1
            
            i = 0
            For iAse.ASEEET = Each ASEEET
                i = i + 1
                If i = ase_valittu Then
                    valit = iAse
                EndIf
            Next iAse
           
            Text 100,100,"Valittu ase: "+ase_valittu
            Text 10,10,"Ammuksia: "+valit\jaljella
            DrawScreen
           
        Forever
       
CoolBasic henkilökuntaa
Kehittäjä
Jani
Devoted Member
Posts: 741
Joined: Fri Oct 31, 2008 4:53 pm

Re: Tyhmät kysymykset

Post by Jani »

Miksei tämä toimi vieläkään..? saisko helppii?

Code: Select all

SetFont nimes
Color cbBlue

//Aseta nimi




Repeat


    nimesi$=Input("anna nimesi: ")
    Text 0,20,"entinen: "+nimesi2

    DrawScreen
Until KeyHit(28)


f=OpenToWrite("text.txt")
WriteLine f,edellinen$

edellinen=nimesi
edellinen=nimesi2

CloseInput
CloseFile f


f=OpenToRead("text.txt")

CloseFile f

Dead men tell no tales. Also, Python rocks!
Codegolf: 99 bottles of beer (oneliner) - Water map partition
Ozcar
Advanced Member
Posts: 439
Joined: Mon Aug 27, 2007 8:43 pm
Location: Helsinki

Re: Tyhmät kysymykset

Post by Ozcar »

Koska kirjoitat tiedostoon ensin tiedoston nimesi2, sitten muutat edellinen-muuttujan nimesi-muuttujan mukaiseksi ja heti perään uudestaan nimesi2-arvoon. Ei toimi. Kokeile antaa jotain oikeasti konkreettista koodia, eli anna nyt joku pätkä josta pystyy päättelemään, että mitä tässä tehdään. Kovin paha korjata koodia jonka lopullista funktiota voi vain arvailla.
Ratkaisit juuri universaaliongelman! Hienoa, ota keksi.

Filosofia on ajattelun taidetta, mutta sen maalari elää juoden apurahojaan masennukseensa.
Jani
Devoted Member
Posts: 741
Joined: Fri Oct 31, 2008 4:53 pm

Re: Tyhmät kysymykset

Post by Jani »

Ozcar wrote:Koska kirjoitat tiedostoon ensin tiedoston nimesi2, sitten muutat edellinen-muuttujan nimesi-muuttujan mukaiseksi ja heti perään uudestaan nimesi2-arvoon. Ei toimi. Kokeile antaa jotain oikeasti konkreettista koodia, eli anna nyt joku pätkä josta pystyy päättelemään, että mitä tässä tehdään. Kovin paha korjata koodia jonka lopullista funktiota voi vain arvailla.
siis..?
Dead men tell no tales. Also, Python rocks!
Codegolf: 99 bottles of beer (oneliner) - Water map partition
TheFish
Developer
Developer
Posts: 477
Joined: Mon Aug 27, 2007 9:28 pm
Location: Joensuu

Re: Tyhmät kysymykset

Post by TheFish »

Jani wrote:
Ozcar wrote:Koska kirjoitat tiedostoon ensin tiedoston nimesi2, sitten muutat edellinen-muuttujan nimesi-muuttujan mukaiseksi ja heti perään uudestaan nimesi2-arvoon. Ei toimi. Kokeile antaa jotain oikeasti konkreettista koodia, eli anna nyt joku pätkä josta pystyy päättelemään, että mitä tässä tehdään. Kovin paha korjata koodia jonka lopullista funktiota voi vain arvailla.
siis..?
Haet vissiin tällaista:

Code: Select all

If FileExists("edellinen.txt") Then 
    file = OpenToRead("edellinen.txt")
    edellinenKayttaja$ = ReadLine(file)
    CloseFile file
Else
    edellinenKayttaja$ = "Ei edellistä käyttäjää"
EndIf

uusiKayttaja$ = ""

Repeat

    uusiKayttaja = Input("Anna nimesi: ")
    Text 0, 20, "Edellinen käyttäjä: " + edellinenKayttaja

    DrawScreen

Until KeyHit(cbkeyreturn)
CloseInput

If FileExists("edellinen.txt") Then
    DeleteFile "edellinen.txt"
EndIf

file = OpenToWrite("edellinen.txt")
WriteLine file, uusiKayttaja
CloseFile file
CoolBasic henkilökuntaa
Kehittäjä
Jani
Devoted Member
Posts: 741
Joined: Fri Oct 31, 2008 4:53 pm

Re: Tyhmät kysymykset

Post by Jani »

TheFish wrote:
Jani wrote:
Ozcar wrote:Koska kirjoitat tiedostoon ensin tiedoston nimesi2, sitten muutat edellinen-muuttujan nimesi-muuttujan mukaiseksi ja heti perään uudestaan nimesi2-arvoon. Ei toimi. Kokeile antaa jotain oikeasti konkreettista koodia, eli anna nyt joku pätkä josta pystyy päättelemään, että mitä tässä tehdään. Kovin paha korjata koodia jonka lopullista funktiota voi vain arvailla.
siis..?
Haet vissiin tällaista:

Code: Select all

If FileExists("edellinen.txt") Then 
    file = OpenToRead("edellinen.txt")
    edellinenKayttaja$ = ReadLine(file)
    CloseFile file
Else
    edellinenKayttaja$ = "Ei edellistä käyttäjää"
EndIf

uusiKayttaja$ = ""

Repeat

    uusiKayttaja = Input("Anna nimesi: ")
    Text 0, 20, "Edellinen käyttäjä: " + edellinenKayttaja

    DrawScreen

Until KeyHit(cbkeyreturn)
CloseInput

If FileExists("edellinen.txt") Then
    DeleteFile "edellinen.txt"
EndIf

file = OpenToWrite("edellinen.txt")
WriteLine file, uusiKayttaja
CloseFile file

Laittaisitko vähän //Kommentti ;)
Dead men tell no tales. Also, Python rocks!
Codegolf: 99 bottles of beer (oneliner) - Water map partition
TheFish
Developer
Developer
Posts: 477
Joined: Mon Aug 27, 2007 9:28 pm
Location: Joensuu

Re: Tyhmät kysymykset

Post by TheFish »

Jani wrote:Laittaisitko vähän //Kommentti ;)

Code: Select all

If FileExists("edellinen.txt") Then                 //tarkastaa onko "edellinen.txt" tiedosto olemassa, jos on
    file = OpenToRead("edellinen.txt")              //avataan se
    edellinenKayttaja$ = ReadLine(file)             //ja luetaan edellinen käyttäjä sieltä
    CloseFile file
Else                                                //jos ei, 
    edellinenKayttaja$ = "Ei edellistä käyttäjää"   //oletetaan että edellistä käyttäjää ei ole ollut
EndIf

uusiKayttaja$ = ""

Repeat

    uusiKayttaja = Input("Anna nimesi: ")
    Text 0, 20, "Edellinen käyttäjä: " + edellinenKayttaja

    DrawScreen

Until KeyHit(cbkeyreturn)
CloseInput

If FileExists("edellinen.txt") Then //tarkastetaan onko "edellinen.txt" olemassa
    DeleteFile "edellinen.txt"      //ja jos on, poistetaan se, että päästään eroon turhasta sisällöstä
EndIf

file = OpenToWrite("edellinen.txt") //luodaan uusi "edellinen.txt" tiedosto
WriteLine file, uusiKayttaja        //ja kirjoitetaan sinne käyttäjän nimi
CloseFile file
CoolBasic henkilökuntaa
Kehittäjä
Jani
Devoted Member
Posts: 741
Joined: Fri Oct 31, 2008 4:53 pm

Re: Tyhmät kysymykset

Post by Jani »

TheFish wrote:
Jani wrote:Laittaisitko vähän //Kommentti ;)

Code: Select all

..koodia..
Tiedän.. Tämähän on ehkä pieni homma mutta voiisitko muuttaa tuon muotoon joka sopii nykyiseen koodiin?
Dead men tell no tales. Also, Python rocks!
Codegolf: 99 bottles of beer (oneliner) - Water map partition
TheFish
Developer
Developer
Posts: 477
Joined: Mon Aug 27, 2007 9:28 pm
Location: Joensuu

Re: Tyhmät kysymykset

Post by TheFish »

Jani wrote:
TheFish wrote:
Jani wrote:Laittaisitko vähän //Kommentti ;)

Code: Select all

..koodia..
Tiedän.. Tämähän on ehkä pieni homma mutta voiisitko muuttaa tuon muotoon joka sopii nykyiseen koodiin?
En. Minulla ei ole aavistustakaan miltä koodisi näyttää.
CoolBasic henkilökuntaa
Kehittäjä
Jani
Devoted Member
Posts: 741
Joined: Fri Oct 31, 2008 4:53 pm

Re: Tyhmät kysymykset

Post by Jani »

TheFish wrote:

En. Minulla ei ole aavistustakaan miltä koodisi näyttää.
Tahdot siis pelin alun? vai koko koodin?
Dead men tell no tales. Also, Python rocks!
Codegolf: 99 bottles of beer (oneliner) - Water map partition
TheFish
Developer
Developer
Posts: 477
Joined: Mon Aug 27, 2007 9:28 pm
Location: Joensuu

Re: Tyhmät kysymykset

Post by TheFish »

Jani wrote: Tahdot siis pelin alun? vai koko koodin?
Ei, tahdon että teet sen itse. (saahan sitä postcounttia tälläisillakin viesteillä kasvatettua, mutta vähän tässä alkaa ihmetyttämään tämä meno tällä foorumilla...)
CoolBasic henkilökuntaa
Kehittäjä
Ozcar
Advanced Member
Posts: 439
Joined: Mon Aug 27, 2007 8:43 pm
Location: Helsinki

Re: Tyhmät kysymykset

Post by Ozcar »

Ja tämä on muuten tyhmät kysymykset-osio, ei "tehkää mulle peli"-osio. Sääntö numero yksi täällä, KUKAAN ei tule tekemään kenellekkään mitään kokonaista projektia ilman loistavaa syytä, eikä kyllä varmasti sijoita koodinpätkää peliin, vaikka sen itse miettiminen olisi mitä mainiointa treeniä. Täällä on nyt useaan otteeseen näytetty, miten homma tehdään ihan kommenttien kanssa, eli kokeile itse kunnes aivot ovat täydellisen solmussa ja kysy kysymyksiä, joihin voi antaa oikeita vastauksia.

Ok?
Ratkaisit juuri universaaliongelman! Hienoa, ota keksi.

Filosofia on ajattelun taidetta, mutta sen maalari elää juoden apurahojaan masennukseensa.
rami123
Advanced Member
Posts: 354
Joined: Mon Jun 23, 2008 8:20 pm
Location: Kittilä

Re: Tyhmät kysymykset

Post by rami123 »

miten kuvan saa pysymään yläreunassa kun liikkuu samalla niin että kuva ei lähde pois siitä
tarkoitus on lisätä peliin painike josta pääsee klikkaamalla kauppaan
lukutoukka
Active Member
Posts: 111
Joined: Fri Jun 13, 2008 9:06 pm

Re: Tyhmät kysymykset

Post by lukutoukka »

no piirä kuva, oletuksenahan kuvat piiretään näyttöön ei maailmaan, jos kuitenkin on niin drawtoworl off,off,off eli ja tämän jälkeen sama, mutta on,on,on, lue kuitekin tuo toiminnon kuvaus ohjeesta..
Locked