Tyhmät kysymykset (II/2009)
Re: Tyhmät kysymykset (II/2009)
Hmm... Joku viisaampi voisi auttaa taas. Kuinka lukea mp3:sta tai WMA:sta kappaletietoja? Kaverini ja minun patenttimme epäonnistuivat kaikki
Asus P8P67 LE/Intel Core i5 2500K/ GTX560/ 8GT RAM/750GT HDDt + 120GT SSD + 13" Macbook Pro
Blogi - Peräpohjola - MERPG
Blogi - Peräpohjola - MERPG
Re: Tyhmät kysymykset (II/2009)
CBKK:sta löytyi Valtzun tekemä esimerkkikoodi. Kiitokset hänelle.Feuer wrote:Hmm... Joku viisaampi voisi auttaa taas. Kuinka lukea mp3:sta tai WMA:sta kappaletietoja? Kaverini ja minun patenttimme epäonnistuivat kaikki
-
- Tech Developer
- Posts: 545
- Joined: Sun Aug 26, 2007 2:43 pm
- Location: Liminka
Re: Tyhmät kysymykset (II/2009)
Pikku vinkkinä, että koodi kannattaisi testata toimivaksi ennen kuin alkaa tiivistämään.DatsuniG wrote:Miksi über ristinollapelini voiton tarkistus ei toimi? ; (
If lausesta puuttui parit sulkeet. Korjattu:
Code: Select all
SCREEN 300,300
Dim Ruudukko(2,2) As integer, Vuoro As Integer
Repeat
For a = 0 To 2
For i = 0 To 2
Box i * ScreenWidth() / 3, a * ScreenHeight() / 3, ScreenWidth() / 3, ScreenHeight() / 3, 0
If MouseX() > i * ScreenWidth() / 3 And MouseX() < (i + 1) * ScreenWidth() / 3 And MouseY() > a * ScreenHeight() / 3 And MouseY() < (a + 1) * ScreenHeight() / 3 And MouseHit(1) And Ruudukko(i,a) = 0 Then
Ruudukko(i,a) = vuoro + 1
vuoro = Not vuoro
ElseIf ruudukko(i,a) = 1 Then
Ellipse i * ScreenWidth() / 3, a * ScreenHeight() / 3, ScreenWidth() / 3, ScreenHeight() / 3,0
ElseIf ruudukko(i,a) = 2 Then
Line i * ScreenWidth() / 3, a * ScreenHeight() / 3, (i + 1) * ScreenWidth() / 3 , (a + 1) * ScreenHeight() / 3
Line (i + 1) * ScreenWidth() / 3 , a * ScreenHeight() / 3 , i * ScreenWidth() / 3 , (a + 1) * ScreenHeight() / 3
EndIf
If (Ruudukko(a,0) = (Not vuoro) + 1 And Ruudukko(a,1) = (Not vuoro) + 1 And Ruudukko(a,2) = (Not vuoro) + 1) Or (Ruudukko(0,i) = (Not vuoro) + 1 And Ruudukko(1,i) = (Not vuoro) + 1 And Ruudukko(2,i) = (Not vuoro) + 1) Or (Ruudukko(0,0) = (Not vuoro) + 1 And Ruudukko(1,1) = (Not vuoro) + 1 And Ruudukko(2,2) = (Not vuoro) + 1) Or (Ruudukko(2,0) = (Not vuoro) + 1 And Ruudukko(1,1) = (Not vuoro) + 1 And Ruudukko(0,2) = (Not vuoro) + 1) Then MakeError Chr(79 + (Not vuoro) * 9) + " voitti!"
Next i
Next a
DrawScreen
Forever
CoolBasic henkilökuntaa
Kehittäjä
cbFUN Kello
cbSDL
Whale.dy.fi
<@cce> miltäs tuntuu olla suomen paras
Kehittäjä
cbFUN Kello
cbSDL
Whale.dy.fi
<@cce> miltäs tuntuu olla suomen paras
Re: Tyhmät kysymykset (II/2009)
Voisiko joku kertoa jotain teoriaa kartan satunnaisgeneroinnista? Oma aivokapasiteetti ei riitä keksimään jutun jujua. En hae valmista koodia, vaan ideoita miten toteuttaa esimerkiksi yksinkertainen pieni luolasto.
-
- Tech Developer
- Posts: 545
- Joined: Sun Aug 26, 2007 2:43 pm
- Location: Liminka
Re: Tyhmät kysymykset (II/2009)
Itse lähtisin siitä, että latoisin karttaan luolaston ovet satunnaisille paikoille. Sitten heitellään kartalle joitain satunnaisia pisteitä, mihin ei missään nimessä tulisi polkua. Sitten reitinetsintää hyödyntäen ( foorumeilta löytyy koodia siihen) tehtäisiin polut niin, että ovelta ovelle kulkisi varmasti reitit. Tämän jälkeen polkujen varrelle satunnaisen kokoisia huoneita + risteileviä käytäviä ympäriinsä.Bambi wrote:Voisiko joku kertoa jotain teoriaa kartan satunnaisgeneroinnista? Oma aivokapasiteetti ei riitä keksimään jutun jujua. En hae valmista koodia, vaan ideoita miten toteuttaa esimerkiksi yksinkertainen pieni luolasto.
Tässä vielä pari linkkiä Mikefulin kirjoittamiin teksteihin dynaamisista peliympäristöistä ja karttojen generoinnista:
http://servut.us/mikeful/lataus/Dynaami ... ristot.pdf
http://servut.us/mikeful/lataus/Karttageneraattori.pdf
Lisäksi jotain esimerkkiä karttojen generoinnista löytyy Aavesoturin Knight of Faith lähdekoodista, joka on julkaistu esimerkkikoodit- osiossa.
CoolBasic henkilökuntaa
Kehittäjä
cbFUN Kello
cbSDL
Whale.dy.fi
<@cce> miltäs tuntuu olla suomen paras
Kehittäjä
cbFUN Kello
cbSDL
Whale.dy.fi
<@cce> miltäs tuntuu olla suomen paras
Re: Tyhmät kysymykset (II/2009)
Olen niin onneton, että en keksi miten suoritan If ehtolauseen Timer funktiolle.
Yritykset:
If Timer()-start)/60000 > 60000 Then
//Täsä o kaikkee
EndIf
If Timer() > 60000 Then
//Täsä o kaikkee
EndIf
Tarkoitus siis olisi, että tuo kestää minuutin, mutta nuo ei toimi. Alempi hakkaa koko ajan tuota "//täsä o kaikkee" siinä. Edellisen sivun viimeisestä viestistä näkee miten Timer funkkari on käytössäni. Kiitos Tuxille.
Yritykset:
If Timer()-start)/60000 > 60000 Then
//Täsä o kaikkee
EndIf
If Timer() > 60000 Then
//Täsä o kaikkee
EndIf
Tarkoitus siis olisi, että tuo kestää minuutin, mutta nuo ei toimi. Alempi hakkaa koko ajan tuota "//täsä o kaikkee" siinä. Edellisen sivun viimeisestä viestistä näkee miten Timer funkkari on käytössäni. Kiitos Tuxille.
Glory&Pride <--- selainpeli projektini
Pelilä<- yksi ylläpitämäni sivusto.
World leaders Ensimmäinen CoolBasic projektini
Pelilä<- yksi ylläpitämäni sivusto.
World leaders Ensimmäinen CoolBasic projektini
Re: Tyhmät kysymykset (II/2009)
matti3 wrote:Olen niin onneton, että en keksi miten suoritan If ehtolauseen Timer funktiolle.
Yritykset:
If Timer()-start)/60000 > 60000 Then
//Täsä o kaikkee
EndIf
If Timer() > 60000 Then
//Täsä o kaikkee
EndIf
Tarkoitus siis olisi, että tuo kestää minuutin, mutta nuo ei toimi. Alempi hakkaa koko ajan tuota "//täsä o kaikkee" siinä. Edellisen sivun viimeisestä viestistä näkee miten Timer funkkari on käytössäni. Kiitos Tuxille.
Code: Select all
if (timer() - start) > 60000 then
CoolBasic henkilökuntaa
Kehittäjä
Kehittäjä
Re: Tyhmät kysymykset (II/2009)
Tai näin:
Code: Select all
If Timer()>vali_aika Then
//taha kaikkee
vali_aika = Timer() // alustetaan vali_aika uudestaan , jotta tämä voisi toistua useammin
EndIf
Re: Tyhmät kysymykset (II/2009)
Paitsi että tuossa ratkaisussahan asiaa toistetaan koko ajan eikä minuutin päästä. Itse asiassa jos tuohon vali_aika:an ei aseta timer():ia suurempaa arvoa, olisi ihan sama jättää koko timeri pois. Eli sen pitäisi ollaphons wrote:Tai näin:
Code: Select all
If Timer()>vali_aika Then //taha kaikkee vali_aika = Timer() // alustetaan vali_aika uudestaan , jotta tämä voisi toistua useammin EndIf
Code: Select all
If Timer()>vali_aika Then
//taha kaikkee
vali_aika = Timer() + 60000// alustetaan vali_aika uudestaan , jotta tämä voisi toistua useammin
EndIf
CoolBasic henkilökuntaa
Kehittäjä
Kehittäjä
Re: Tyhmät kysymykset (II/2009)
Kiitos.
Niin tähän ei vielä vastattu mitä hyötyä muistin varauksesta sitten on?
E. Ja myös miten voin testata läheisyyden? Esim jos ukko on tarpeeksi lähellä kukka puskaa ja painetaan Q nappulaa kukka puskasta tapahtuu jokin tapahtuma. yritin käyttää Distance ja Distance2 mutta ei toimineet kumpikaan.
Niin tähän ei vielä vastattu mitä hyötyä muistin varauksesta sitten on?
E. Ja myös miten voin testata läheisyyden? Esim jos ukko on tarpeeksi lähellä kukka puskaa ja painetaan Q nappulaa kukka puskasta tapahtuu jokin tapahtuma. yritin käyttää Distance ja Distance2 mutta ei toimineet kumpikaan.
Glory&Pride <--- selainpeli projektini
Pelilä<- yksi ylläpitämäni sivusto.
World leaders Ensimmäinen CoolBasic projektini
Pelilä<- yksi ylläpitämäni sivusto.
World leaders Ensimmäinen CoolBasic projektini
-
- Tech Developer
- Posts: 545
- Joined: Sun Aug 26, 2007 2:43 pm
- Location: Liminka
Re: Tyhmät kysymykset (II/2009)
Ihan distance2 avulla onnistuu.matti3 wrote:Kiitos.
Niin tähän ei vielä vastattu mitä hyötyä muistin varauksesta sitten on?
E. Ja myös miten voin testata läheisyyden? Esim jos ukko on tarpeeksi lähellä kukka puskaa ja painetaan Q nappulaa kukka puskasta tapahtuu jokin tapahtuma. yritin käyttää Distance ja Distance2 mutta ei toimineet kumpikaan.
Paina Q tarpeeksi lähellä niin objekti b pomppaa uuteen paikkaan.
Code: Select all
a = LoadObject("Media\guy.bmp", 72)
b = LoadObject("Media\soldier.bmp")
Repeat
MoveObject a, (UpKey() - DownKey()) * 3
TurnObject a, (LeftKey() - RightKey()) * 3
If (KeyHit(cbKeyQ) And Distance2(a, b) < 100) Then
ScreenPositionObject b, Rand(0, ScreenWidth()), Rand(0, ScreenHeight())
EndIf
DrawScreen
Forever
CoolBasic henkilökuntaa
Kehittäjä
cbFUN Kello
cbSDL
Whale.dy.fi
<@cce> miltäs tuntuu olla suomen paras
Kehittäjä
cbFUN Kello
cbSDL
Whale.dy.fi
<@cce> miltäs tuntuu olla suomen paras
Re: Tyhmät kysymykset (II/2009)
Kyllä Distancen ja Distancen2 pitäisi toimia. Muista vain käyttää # merkkiä muuttujassa, eli liukuluku, koska Distance palauttaa desimaaleina.matti3 wrote: E. Ja myös miten voin testata läheisyyden? Esim jos ukko on tarpeeksi lähellä kukka puskaa ja painetaan Q nappulaa kukka puskasta tapahtuu jokin tapahtuma. yritin käyttää Distance ja Distance2 mutta ei toimineet kumpikaan.
Re: Tyhmät kysymykset (II/2009)
Miksi FPS laskee tarpeeksi monta kertaa entteriä painettuna jonnekkin 7 tienoille ja heittää mavin?
Code: Select all
SCREEN 600,400
tileset = LoadImage("Media\tileset.bmp")
Repeat
If KeyHit(cbkeyreturn) Then MakeWorld(tileset)
DrawGame
Color cbred
Text 0,0,"FPS: "+FPS()+", press return"
DrawScreen
Forever
Function MakeWorld(tileset)
kartta = MakeMap(32,32,32,32)
PaintObject kartta,tileset
ax = Rand(1,MapWidth())
ay = Rand(1,MapHeight())
EditMap kartta,3,ax,ay,1
For y=1 To MapHeight()
For x=1 To MapWidth()
If GetMap2(3,x,y) = 1 Then
EditMap kartta,0,x,y,5
Else
EditMap kartta,0,x,y,145
EndIf
Next x
Next y
Return 0
EndFunction
Re: Tyhmät kysymykset (II/2009)
Jos se laskee niin paljon sen takia koska eikö silloin tuo "maailma" tehdä monta kertaa jos entteriä painelee monta kertaa?Bambi wrote:Miksi FPS laskee tarpeeksi monta kertaa entteriä painettuna jonnekkin 7 tienoille ja heittää mavin?
[/code]
Re: Tyhmät kysymykset (II/2009)
Mutta se FPS pysyy siellä pohjassa, eikä nouse takas normaaliin. :FViltzu wrote:Jos se laskee niin paljon sen takia koska eikö silloin tuo "maailma" tehdä monta kertaa jos entteriä painelee monta kertaa?Bambi wrote:Miksi FPS laskee tarpeeksi monta kertaa entteriä painettuna jonnekkin 7 tienoille ja heittää mavin?
[/code]
Re: Tyhmät kysymykset (II/2009)
Viltzu wrote:Jos se laskee niin paljon sen takia koska eikö silloin tuo "maailma" tehdä monta kertaa jos entteriä painelee monta kertaa?Bambi wrote:Miksi FPS laskee tarpeeksi monta kertaa entteriä painettuna jonnekkin 7 tienoille ja heittää mavin?
[/code]
tai jotain sinne päin... Mutta ei se kyllä mitään MAVia heitä... Ja jos sen kerran tekee niin ei se sitä laske ja näen, että teet nyt sitä satunnaisgeneraattoria, niin etkös tarvitse vain yhden kartan?CB:n helppi wrote:Kun uusi tilekartta luodaan niin edellinen poistetaan automaattisesti
-
- Tech Developer
- Posts: 545
- Joined: Sun Aug 26, 2007 2:43 pm
- Location: Liminka
Re: Tyhmät kysymykset (II/2009)
Itse en mavia saanut aikaan mutta vaikka cb:n pitäisi poistaa kartta se ei tunnu tekevän sitä. Eli vanha kartta talteen esim globaaliin muuttujaan ja deleteobjectilla poistat sen ennen uuden luontia.Bambi wrote:Miksi FPS laskee tarpeeksi monta kertaa entteriä painettuna jonnekkin 7 tienoille ja heittää mavin?
CoolBasic henkilökuntaa
Kehittäjä
cbFUN Kello
cbSDL
Whale.dy.fi
<@cce> miltäs tuntuu olla suomen paras
Kehittäjä
cbFUN Kello
cbSDL
Whale.dy.fi
<@cce> miltäs tuntuu olla suomen paras
Re: Tyhmät kysymykset (II/2009)
Hmm... Tuo cbSDK:n SetIniString ei vaikuta toimivan. Eli lohkoja tukeva inikirjoitusfunktio olisi hakusessa jälleen.
Asus P8P67 LE/Intel Core i5 2500K/ GTX560/ 8GT RAM/750GT HDDt + 120GT SSD + 13" Macbook Pro
Blogi - Peräpohjola - MERPG
Blogi - Peräpohjola - MERPG
-
- Advanced Member
- Posts: 308
- Joined: Tue Nov 25, 2008 8:06 pm
- Contact:
Re: Tyhmät kysymykset (II/2009)
KilledWhale edellisellä sivulla wrote: ...Tässä vielä muutama funktio ini-tiedostojen lukuun jos vaikka näillä toimisi:
http://cbkk.systec.fi/koodi.php?id=213
EDIT:
Tuota en huomannutkaan. [/edit]Feuer wrote:Tuota kyseisen funktion hienoutta olen täälläkin ihmetellyt, mutta tosiaan oli tarve kirjoittavalle funktiolle... Voin tunnustautua puolinoobiksi, mutta taitoni eivät riitä sellaisen kirjoittamiseen.cbkk wrote:''Lukee halutun otsikon arvon .ini tiedostota halutun lohkon alta. ''
Last edited by Herra Siili on Fri Jul 17, 2009 10:54 am, edited 2 times in total.
a.k.a. Gehock
Re: Tyhmät kysymykset (II/2009)
Nyt on melko ongelma. :O
Pitäisi saada niin, että pelaaja saa päättää millainen pää hahmolla on, mutta se heittää jonkun syyn takia nappeja painaessa objectin nappi ja nappi_1 näyttöön miksi? :O
Pitäisi saada niin, että pelaaja saa päättää millainen pää hahmolla on, mutta se heittää jonkun syyn takia nappeja painaessa objectin nappi ja nappi_1 näyttöön miksi? :O
Code: Select all
ClearText
ShowObject nappi, OFF
ShowObject nappi_1, OFF
AddText "Ladataan hahmon luontia."
DrawScreen
hahmon_paa_2 = LoadObject("grafiikat/hahmon_paa_2.bmp", 1)
hahmon_paa_1 = LoadObject("grafiikat/hahmon_paa_1.bmp", 1)
nuoli_oik = LoadObject("grafiikat/nuoli_oik.bmp", 1)
nuoli_vas = LoadObject("grafiikat/nuoli_vas.bmp", 1)
paa = 1
//mahdollinen soundi ladataan
//mahdollinen soundi soitetaan
PositionObject nuoli_oik, 100, 200
PositionObject nuoli_vas, 0, 200
ShowObject hahmon_paa_2, OFF
ShowObject hahmon_paa_1, ON
Repeat
Text 0,200, "paa ON " +paa
PositionObject hiiri, MouseWX(), MouseWY()
If paa < 5 Then
If MouseHit(1) And Distance2(hiiri, nuoli_oik) < 32 Then
tan_hetke = paad
ShowObject hahmon_paa_+tan_hetke, OFF
ShowObject hahmon_paa_+paad, ON
paad = paad + 1
EndIf
EndIf
If paa > 4 Then
paa = 4
EndIf
If paa > 0 Then
If MouseHit(1) And Distance2(hiiri, nuoli_vas) < 32 Then
tan_hetke = paad
ShowObject hahmon_paa_+tan_hetke, OFF
ShowObject hahmon_paa_+paad, ON
paad = paad - 1
EndIf
EndIf
If paa < 1 Then
paa = 1
EndIf
DrawScreen
Forever
Wait 4000
Glory&Pride <--- selainpeli projektini
Pelilä<- yksi ylläpitämäni sivusto.
World leaders Ensimmäinen CoolBasic projektini
Pelilä<- yksi ylläpitämäni sivusto.
World leaders Ensimmäinen CoolBasic projektini