Tyhmät kysymykset (I/2009)
-
- Moderator
- Posts: 1583
- Joined: Mon Aug 27, 2007 11:24 pm
- Location: Otaniemi - Mikkeli -pendelöinti
Re: Tyhmät kysymykset
Niin, cbmap.cb. Ulkoinen kirjastohan se. Sinulla pitää olla alussa Include "cbmap.cp", ja sinulla pitää luonnollisesti olla kyseinen tiedosto. Siellä siis on määritelmä puttile3 -funktiolle.
Re: Tyhmät kysymykset
Noh, kokeilin tuota juttua muokkaamalla vähän tuota esimerkkiä, mut iskee mavia? missä vika?
Code: Select all
FrameLimit 40 'rajoita nopeutta
DrawToWorld ON 'mahdollistaa piirtämisen maailmaan
Include "cbmap.cb"
'lataa kartta
kartta = LoadMap("Media\cdm2.til","Media\tileset.bmp")
ObjectPickable kartta, ON 'aseta se poimittavaksi
PlayObject kartta,0,0,1 'animoi kartta
'lataa pelaaja
ukko = LoadObject ("Media\guy.bmp",72)
'lataa vihulainen
vihu = LoadObject ("Media\guy.bmp",72)
ObjectPickable vihu, 2 'aseta se poimittavaksi
PositionObject vihu, 32,150 'sijoita ylemmäs
'törmäykset
SetupCollision ukko, vihu, 2, 2, 2
'kartta-törmäykset on hyvä esitellä viimeiseksi
SetupCollision ukko, kartta, 1, 4, 2
Repeat
'Ukon ohjaus
If LeftKey() Then TurnObject ukko,5
If RightKey() Then TurnObject ukko,-5
If UpKey() Then MoveObject ukko,2
If DownKey() Then MoveObject ukko,-2
UpdateGame
CloneCameraPosition ukko
DrawGame 'tämä komennetaan ennen piirtokomentoja
puttile3(_0,_ukko,_2)
DrawScreen 'piirrä näyttö
Forever
-
- Forum Veteran
- Posts: 2396
- Joined: Tue Aug 28, 2007 4:20 pm
Re: Tyhmät kysymykset
Käytät _ukkoa, jota ei kuitenkaan ole koodissa määritelty (Kolmanneksi viimeinen rivi). En ole perehtynyt tuon funktion tarvitsemiin parametreihin, joten en osaa sanoa, aiheuttaako juuri se MAVin. EDIT: Ja nuo muutkin parametrit näyttävät epäilyttäviltä.
-
- Forum Veteran
- Posts: 2396
- Joined: Tue Aug 28, 2007 4:20 pm
Re: Tyhmät kysymykset
_ukko on tietokoneen mielestä eri asia kuin ukko.ääni.tiedosto wrote:Onhan tuolla loadobject kohassa toi "ukko"
Re: Tyhmät kysymykset
Kun käytät koodissasi "puttile3(_0,_ukko,_2)" niin poista siitä alaviivat, eli tee se näin:ääni.tiedosto wrote:Don't work
Code: Select all
puttile3(0,ukko,2)
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
NetMatch - se kunnon nettimättö-deathmatch! Avoimella lähdekoodilla varustettu
vesalaakso.com
Re: Tyhmät kysymykset
Tämä ei ehkä ole ongelma mutta kysymys kuitenkin.:
Mistä saisin koiran haukunta äänen että kuuluisi vain yksi haukku.? ja mistä saisin
veden solinan äänen?
Mistä saisin koiran haukunta äänen että kuuluisi vain yksi haukku.? ja mistä saisin
veden solinan äänen?
-
- Moderator
- Posts: 1583
- Joined: Mon Aug 27, 2007 11:24 pm
- Location: Otaniemi - Mikkeli -pendelöinti
Re: Tyhmät kysymykset
Veikkaus: sinulla ei ole cbmap.cb -tiedostoa samassa kansiossa lähdekoodisi kanssa? Laita se sinne.
Re: Tyhmät kysymykset
Kiitos vastauksesta.OonSuomesta wrote: Katso CB:stä komentojen StartSearch ja EndSearch esimerkit, ne valaisevat asiaa. Voit sitten ottaa tiedoston nimen ylös ja ladata sen myöhemmin vaikkapa kuvana.
Lähinnä haluaisin että ohjelman käyttäjä voisi etsiä tiedostoja inputin avulla.
Eli etsittävän tiedoston nimi tai pääte kirjoitettaisiin inputtiin ja sen jälkeen kun tiedostot
löytyy niin inputin avulla sen voisi myös ladata. Eli kirjoittamalla tiedoston koko nimen.
Yksinkertainen esimerkkikoodi helpottaisi hahmottamista.
Re: Tyhmät kysymykset
Miksi tämä ei tulosta kolmea objectia vierekkäin näytölle??
Code: Select all
'This is your first CoolBasic program!
SCREEN 800,600
live=LoadObject("Media\cow.bmp")
Dim lives(100)
ShowObject live,OFF
lives2=3
For e=0 To lives2-1
lives(i)=CloneObject(live)
ShowObject lives(i),OFF
Next e
Repeat
For a=0 To lives2-1
PositionObject lives(i), -260-a*50,265
ShowObject lives(i),ON
Next a
DrawScreen
Until EscapeKey()
-
- Advanced Member
- Posts: 485
- Joined: Tue Aug 28, 2007 3:53 pm
- Location: Suomi, Finland
- Contact:
Re: Tyhmät kysymykset
The FreeSound Project googleta (vaatii rekisteröinnin)Värikäs wrote:Tämä ei ehkä ole ongelma mutta kysymys kuitenkin.:
Mistä saisin koiran haukunta äänen että kuuluisi vain yksi haukku.? ja mistä saisin
veden solinan äänen?
Re: Tyhmät kysymykset
Kts, koirahaukun löysinkin jo tuolta coolbasicin vapaa efekti ja ääni haku jutusta.tuhoojabotti wrote:The FreeSound Project googleta (vaatii rekisteröinnin)Värikäs wrote:Tämä ei ehkä ole ongelma mutta kysymys kuitenkin.:
Mistä saisin koiran haukunta äänen että kuuluisi vain yksi haukku.? ja mistä saisin
veden solinan äänen?
koitan tuolta ettii veden solinaa
-
- Forum Veteran
- Posts: 2396
- Joined: Tue Aug 28, 2007 4:20 pm
Re: Tyhmät kysymykset
Käytät noissa for-loopeissa muuttujaa i, vaikka sen arvo on nolla. Eli kokeiles ensimmäisessä e ja toisessa a. Korjattu koodi:Ongelma wrote:Miksi tämä ei tulosta kolmea objectia vierekkäin näytölle??Code: Select all
blaa blaa
Code: Select all
SCREEN 800,600
live=LoadObject("Media\cow.bmp")
Dim lives(100)
ShowObject live,OFF
lives2=3
For e=0 To lives2-1
lives(e)=CloneObject(live)
ShowObject lives(e),OFF
Next e
Repeat
For a=0 To lives2-1
PositionObject lives(a), -260-a*50,265
ShowObject lives(a),ON
Next a
DrawScreen
Until EscapeKey()
Re: Tyhmät kysymykset
Jälleen propleema objektien poiston kanssa.. Miten saan poistettua kaikki objectit, ja aloitettua pelin alusta? Clearobjects käsky ei toimi. Lisäsin tähän elämät..
Code: Select all
Type AMMUS
Field obj%
End Type
Type VIHU
Field obj%
End Type
//Const vihumäärä=2
SCREEN 800,600
FrameLimit 40 'rajoita nopeutta
ukko=LoadObject("Media\soldier.bmp",72)
cloonattava_vihu=LoadObject("Media\guy.bmp",72)
pati=LoadObject("Media\bullet.bmp")
target = LoadObject("Media\target.bmp")
ääniAmmu = LoadSound ("Media\Blaster.wav")
// AddText "Nuolista ohjaa, Hiiri=ampuu"
music=ON
taso=1
lives=3
ase=1
start:
ShowObject pati,OFF
ShowMouse OFF
ShowObject cloonattava_vihu,OFF
Peli:
For a=1 To taso*25
vihumäärä=vihumäärä+1
Next a
//If Timer()>(aika+10*a) Then
// aika=Timer()
For i=1 To vihumäärä
positionx=Rand(-3000,3000)
positiony=Rand(-3000,3000)
If positionx<800 And positionx>1 Then
positionx=Rand(-3000,3000)
EndIf
If positiony<600 And positiony>1 Then
positiony=Rand(-3000,3000)
EndIf
maara.VIHU = New(VIHU)
maara\obj=CloneObject(cloonattava_vihu)
PositionObject maara\obj, positionx,positiony
SetupCollision maara\obj, ukko,2,2,2
Next i
// EndIf
If ase=2 Then
ase_luoteja=3
EndIf
If ase=1 Then
ase_luoteja=1
EndIf
osumat=0
Repeat
PositionObject target,MouseWX(),MouseWY()
If LeftKey() Then TurnObject ukko,5
If RightKey() Then TurnObject ukko,-5
If UpKey() Then MoveObject ukko,2
If DownKey() Then MoveObject ukko,-2
PointObject ukko,target
If MouseDown(1) And reload=0 Then
For luoteja=1 To ase_luoteja
luoti.AMMUS = New(AMMUS) 'luo uusi ammus
luoti\obj=CloneObject(pati) 'tee klooni
CloneObjectPosition luoti\obj,ukko
PointObject luoti\obj,target
CloneObjectOrientation ukko,luoti\obj
TurnObject luoti\obj,Rand(-10,10)
If music=ON Then
PlaySound ääniAmmu,50
EndIf
reload=5 'aseen lataus
Next luoteja
EndIf
If reload>0 Then reload=reload-1
For luoti.AMMUS = Each AMMUS
//ObjectLife luoti\obj,30
MoveObject luoti\obj,6
If ObjectX(luoti\obj)<-380 Or ObjectX(luoti\obj)>380 Or ObjectY(luoti\obj)<-280 Or ObjectY(luoti\obj)>280 Then
ShowObject luoti\obj,OFF
EndIf
For maara.VIHU =Each VIHU
If ObjectsOverlap(luoti\obj,maara\obj,1) Then
ShowObject luoti\obj,OFF
osumat=osumat+1
DeleteObject maara\obj
Delete maara //<--- Muista poistaa objectin lisäksi itse jäsen typestä.
EndIf
Next maara
If (Distance2 (luoti\obj, ukko))>400 Then
DeleteObject luoti\obj
Delete luoti
EndIf
Next luoti
For maara.VIHU =Each VIHU
PointObject maara\obj,ukko
MoveObject maara\obj,3
If ObjectsOverlap(ukko,maara\obj,2) Then
Color cbwhite
ShowObject ukko,OFF
ShowObject maara\obj,OFF
ShowMouse OFF
Repeat
PositionObject target,MouseWX(),MouseWY()
arial_big=LoadFont("arial",50,ON)
arial_normal=LoadFont("arial",20)
SetFont arial_big
If lives=0 Then
CenterText ScreenWidth()/2,ScreenHeight()/2-150,"Hävisit =("
CenterText ScreenWidth()/2,ScreenHeight()/2,"Pääsit tasolle "+vihumäärä/25+" asti"
SetFont arial_normal
Box 575,410,150,50,0
CenterText 650,425,"QUIT -->"
If MouseX()< 725 And MouseX()> 575 And MouseY()<460 And MouseY()>410 Then
If MouseDown(1) Then
End
EndIf
EndIf
EndIf
/////////////////////////////////ONGELMAKOHTA//////////////////////////
/////////////////////////////////ONGELMAKOHTA//////////////////////
/////////////////////////////////ONGELMAKOHTA//////////////////////
If lives=1 Or lives=2 Or lives=3 Then
//ClearObjects
CenterText ScreenWidth()/2,ScreenHeight()/2-150,"Sinulla ON "+(lives-1)+ " elämää jäljellä"
CenterText ScreenWidth()/2,ScreenHeight()/2,"Tapoit "+osumat+" \ "+vihumäärä+" tällä tasolla"
SetFont arial_normal
Box 575,410,150,50,0
CenterText 650,425,"Jatka seuraavalle tasolle -->"
If MouseX()< 725 And MouseX()> 575 And MouseY()<460 And MouseY()>410 Then
If MouseDown(1) Then
DeleteFont arial_normal
ShowObject ukko,ON
lives=lives-1
Goto peli // menee riville 32
EndIf
EndIf
EndIf
DrawScreen
Until EscapeKey()
/////////////////////////////////ONGELMAKOHTA päättyy(toivottavasti)//////////////////////
EndIf
Next maara
DrawGame
Color cbOrange
Box 20,20,760,560,OFF
Text 1,1, "Elämiä jäljellä: "+(lives)
Text 500,1, "Osumat: "+osumat+" / "+ vihumäärä
Text 400,1, "FPS: "+FPS()
Musa(music)
If MouseX()< 730 And MouseX()> 700 And MouseY()<21 And MouseY()>5 Then
If MouseDown(1) Then
Music=ON
EndIf
EndIf
If MouseX()< 760 And MouseX()> 730 And MouseY()<21 And MouseY()>5 Then
If MouseDown(1) Then
Music=OFF
EndIf
EndIf
DrawScreen
If osumat=vihumäärä Then
lvlcomplite(ukko,target,taso,vihumäärä)
Goto start
EndIf
Until EscapeKey()
Function lvlcomplite(ukko,target,taso,vihumäärä)
FrameLimit 10
ShowObject ukko,OFF
ShowMouse OFF
Color cbwhite
Repeat
PositionObject target,MouseWX(),MouseWY()
arial_big=LoadFont("arial",50,ON)
arial_normal=LoadFont("arial",20)
SetFont arial_big
CenterText ScreenWidth()/2,ScreenHeight()/2-150,"ONNITTELUT"
CenterText ScreenWidth()/2,ScreenHeight()/2,"Läpäisit tason "+vihumäärä/25
SetFont arial_normal
Box 575,410,150,50,0
CenterText 650,425,"Seuraava taso -->"
If MouseX()< 725 And MouseX()> 575 And MouseY()<460 And MouseY()>410 Then
If MouseDown(1) Then
taso=taso+1
FrameLimit 40
DeleteFont arial_normal
DeleteFont arial_big
ShowObject ukko,ON
Return start
EndIf
EndIf
DrawScreen
Until EscapeKey()
EndFunction
Function musa(music)
If Music=ON Then Color cbred
If Music=OFF Then Color cborange
Box 700,5,30,16,OFF
Text 705,6,"ON"
If Music=OFF Then Color cbred
If Music=ON Then Color cborange
Box 730,5,30,16,OFF
Text 732,6,"OFF"
EndFunction
Tekeillä pikkupelejä ja ohjelmia
Re: Tyhmät kysymykset
eli miks tää koodi ei toimi (oon tehny omat graffat GFX kansioon):
Eli tarkoitus olis saada paintobjektilla (tai piirtokomennoilla o_O) boxi highlightatuksi
Code: Select all
'Normal box
prop_box=LoadObject("GFX\prop_box.bmp",72)
PositionObject prop_box,0,0
'Highlighted box
prop_box_hl=LoadObject("GFX\prop_box.bmp",72)
PositionObject prop_box,100000,100000
'Mouse
target=LoadObject("GFX\mouse.bmp")
Repeat
'jos hiiri menee boxin päälle, boxiin tulloo keltanen reuna (prop_box_hl)
If ObjectsOverlap(target,prop_box,1) Then CenterText 0,0,"Wipii!!!"
'Hiiri
PositionObject target,MouseWX(),MouseWY()
ShowMouse OFF
DrawScreen
Until EscapeKey()
Re: Tyhmät kysymykset
Tein tälläsen, jos sinulla on kaksi kuvaa (toinen normaali, toinen sellainen, minkä haluat siitä tulevan, kun hiiri menee sen päälle). Muutin myös tekstin paikan, koska osaa siitä ei näkynyt.. kuvien ja tekstin koordinaatisto on eri!!eli miks tää koodi ei toimi (oon tehny omat graffat GFX kansioon):
Code: Select all
prop_box=LoadObject("media\car2.bmp",72)
PositionObject prop_box,1,1
'Highlighted box
prop_box_hl=LoadObject("media\cow.bmp",72)
//PositionObject prop_box,1000,1000
ShowObject prop_box_hl,OFF
PositionObject prop_box_hl,1,1
'Mouse
target=LoadObject("media\target.bmp")
Repeat
ShowObject prop_box_hl,OFF //ei näytä kuvaa
'jos hiiri menee boxin päälle, boxiin tulloo keltanen reuna (prop_box_hl)
If ObjectsOverlap(target,prop_box,1) Then
CenterText ScreenWidth()/2,ScreenHeight()/2-100,"Wipii!!!"
ShowObject prop_box_hl,ON //näyttää kuvan
EndIf
'Hiiri
PositionObject target,MouseWX(),MouseWY()
ShowMouse OFF
DrawScreen
Until EscapeKey()
Tekeillä pikkupelejä ja ohjelmia
Re: Tyhmät kysymykset
Minulla ainakin tuo toimii noilla kuvilla... sinun kannattaa odottaa, sitten jonkun paremman apua..onkelma hiiren kanssa wrote:Tuo herjaa minulla mavin
Tekeillä pikkupelejä ja ohjelmia