Tyhmät kysymykset (II/2009)
Re: Tyhmät kysymykset (II/2009)
Luonnollisesti juoneen. -.-
Mutta tuo ongelma?
Mutta tuo ongelma?
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)
Et antanut mitään ukko:n liikuttamiseen liittyvää koodia, joten ongelmasta on mahdotonta sanoa mitään. Joka tapauksessa kannattaa laittaa nuo sotilaat taulukkoon.matti3 wrote:Luonnollisesti juoneen. -.-
Mutta tuo ongelma?
CoolBasic henkilökuntaa
Kehittäjä
Kehittäjä
Re: Tyhmät kysymykset (II/2009)
Tee mieluummin vaikka näin:Tein 11 objectia, koska jokaisella sotilaalla on oma persoona.
Code: Select all
Type Sotilaat
Field obj
Field persoona
EndType
Const VIHAINEN = 1
Const YSTAVALLINEN = 2
Const YLIVILKAS = 3
Repeat
For iSotilas.Sotilaat = Each Sotilaat
If iSotilas\persoona = VIHAINEN Then
//Vihaisen sotilaan toimintametodeja
ElseIf iSotilas\persoona = YSTAVALLINEN Then
//Ystävällisen toiminta
ElseIf iSotilas\persoona = YLIVILKAS Then
//Ylivilkkaan toiminta
EndIf
//Tänne sotilaiden "yhteisiä" toimintamalleja, kuten törmäys seinien ja luotien kanssa jne.
Next iSotilas
DrawScreen
Forever
Re: Tyhmät kysymykset (II/2009)
Minulla on ongelma. Tein ohjelman, joka etsii tiedostoja ja kirjoittaa ne ruudulle (Addtext Komennolla.)
Sen jälkeen ne voi avata klikaamalla nimen viereistä kuvakketta. Mutta tiedostot menevät ruudun yli, koska niitä on niin paljon,
silloin ei kaikkia voi avata. Miten saisin tehtyä tai voisitteko te näyttää: Miten saisi parhaiten liikuteltua (Addtext komennolla) tekstiä, ylös ja alas? Vaikka nuolillla tai Slidebaarilla.
Sen jälkeen ne voi avata klikaamalla nimen viereistä kuvakketta. Mutta tiedostot menevät ruudun yli, koska niitä on niin paljon,
silloin ei kaikkia voi avata. Miten saisin tehtyä tai voisitteko te näyttää: Miten saisi parhaiten liikuteltua (Addtext komennolla) tekstiä, ylös ja alas? Vaikka nuolillla tai Slidebaarilla.
Re: Tyhmät kysymykset (II/2009)
Kuvakkeetkin menevät ruudun yli, tarkoitan alhaalta ei sivulta.Quest wrote:Minulla on ongelma. Tein ohjelman, joka etsii tiedostoja ja kirjoittaa ne ruudulle (Addtext Komennolla.)
Sen jälkeen ne voi avata klikaamalla nimen viereistä kuvakketta. Mutta tiedostot menevät ruudun yli, koska niitä on niin paljon,
silloin ei kaikkia voi avata. Miten saisin tehtyä tai voisitteko te näyttää: Miten saisi parhaiten liikuteltua (Addtext komennolla) tekstiä, ylös ja alas? Vaikka nuolillla tai Slidebaarilla.
Re: Tyhmät kysymykset (II/2009)
Jos Locate ei toimi, mikään ei toimi.Quest wrote:Kuvakkeetkin menevät ruudun yli, tarkoitan alhaalta ei sivulta.Quest wrote:Minulla on ongelma. Tein ohjelman, joka etsii tiedostoja ja kirjoittaa ne ruudulle (Addtext Komennolla.)
Sen jälkeen ne voi avata klikaamalla nimen viereistä kuvakketta. Mutta tiedostot menevät ruudun yli, koska niitä on niin paljon,
silloin ei kaikkia voi avata. Miten saisin tehtyä tai voisitteko te näyttää: Miten saisi parhaiten liikuteltua (Addtext komennolla) tekstiä, ylös ja alas? Vaikka nuolillla tai Slidebaarilla.
EDIT:
Juuri tuota varten Text on keksitty...
Re: Tyhmät kysymykset (II/2009)
Minulla on ongelma. Tein ohjelman, joka etsii tiedostoja ja kirjoittaa ne ruudulle (Addtext Komennolla.) Sijoitan tekstit Locatella
Sen jälkeen ne voi avata klikaamalla nimen viereistä kuvakketta.
Siis Ongelma on tiedostot menevät ruudun yli, koska niitä on niin paljon,
kuvakkeetkin menevät ruudun yli, tarkoitan alhaalta ei sivulta. Miten saisin tehtyä tai voisitteko te näyttää: Miten saisi parhaiten liikuteltua (Addtext komennolla) tekstiä, ylös ja alas? Vaikka nuolillla tai Slidebaarilla.
Sori, ei pysty poistaa viestejä Voisitteko te (Adim tai moderaattorit) Poistaa edelliset viestit.
Sen jälkeen ne voi avata klikaamalla nimen viereistä kuvakketta.
Siis Ongelma on tiedostot menevät ruudun yli, koska niitä on niin paljon,
kuvakkeetkin menevät ruudun yli, tarkoitan alhaalta ei sivulta. Miten saisin tehtyä tai voisitteko te näyttää: Miten saisi parhaiten liikuteltua (Addtext komennolla) tekstiä, ylös ja alas? Vaikka nuolillla tai Slidebaarilla.
Code: Select all
Locate 20, y
AddText Löydetty\polku$ 'Lisätään teksti
y + 15 ' Liikutetaan tekstin paikkaa
ObjY - 15 ' Liikutetaan Avaus painikkeen paikkaa
Sori, ei pysty poistaa viestejä Voisitteko te (Adim tai moderaattorit) Poistaa edelliset viestit.
Re: Tyhmät kysymykset (II/2009)
Voisitkos sinä itse rekisteröityä, jotta voisit jatkossa editoida viestiä uuden postaamisen sijaan?Quest wrote: Sori, ei pysty poistaa viestejä Voisitteko te (Adim tai moderaattorit) Poistaa edelliset viestit.
Re: Tyhmät kysymykset (II/2009)
Tässä koko koodi:
Ja ongelmana on, että tuo teksti MOROOOO ei tule. siis se on vain testi teksti.
Code: Select all
Type AMMUS 'luo kokoelma, jonka nimi on AMMUS
Field obj 'yksi kenttä nimeltään 'obj'
End Type
FrameLimit 60
SCREEN 640, 480
AddText "Ladataan..."
DrawScreen
nappi = LoadObject("grafiikat/nappi.bmp", 1)
nappi_1 = LoadObject("grafiikat/nappi.bmp", 1)
ClearText
PositionObject nappi, -200, 200
PositionObject nappi_1, -200, 100
Repeat
Text 0,300, "X: " +MouseX()
Text 0,320, "Y: " +MouseY()
Locate 30,15
AddText "Aloita peli"
Locate 30,115
AddText "Free fight"
If MouseX() > 25 And MouseX() < 215 And MouseY() >5 And MouseY() < 75 Then
if MouseHit(1) Then
Goto Peli_alkaa
EndIf
EndIf
If MouseX() > 25 And MouseX() < 215 And MouseY() >105 And MouseY() < 175 Then
if MouseHit(1) Then
Goto Vapaa_taistelu
EndIf
EndIf
DrawScreen
Forever
Peli_alkaa :
ClearText
ShowObject nappi, OFF
ShowObject nappi_1, OFF
AddText "Metal War is something new. Something. What no one can explain."
AddText "1000 metal tank attack. I'am alone. What i do?"
DrawScreen
WaitKey //wait 5000
AddText "Correct. Try go some hide place."
WaitKey // wait 2000
AddText "I hideing 20minutes and then i saw U.S.A helicopter"
AddText "I try sway. It was really good they see me. Then one tank shoot and it collison"
AddText "Helicopter and another shoot me."
AddText ""
AddText "Paina mitä tahansa."
DrawScreen
WaitKey
ClearText
AddText "It was my dad story. This war continued two years. I'am 18 years old."
AddText ""
AddText "Paina mitä tahansa."
DrawScreen
WaitKey
//mahdollinen soundi
AddText "Ladataan hahmoja..."
DrawScreen
ukko = LoadObject("grafiikat/hahmo_1.bmp",72)
Sotilas = LoadObject("grafiikat/hahmo_1.bmp",72)//ilkeä
Sotilas_1 = LoadObject("grafiikat/hahmo_1.bmp",72)//persoonallinen
Sotilas_2 = LoadObject("grafiikat/hahmo_1.bmp",72)//kaveri
Sotilas_3 = LoadObject("grafiikat/hahmo_1.bmp",72)//peloton
Sotilas_4 = LoadObject("grafiikat/hahmo_1.bmp",72)//Vitsailija
Sotilas_5 = LoadObject("grafiikat/hahmo_1.bmp",72)//Pelkuri
Sotilas_6 = LoadObject("grafiikat/hahmo_1.bmp",72)//ystävällinen
Sotilas_7 = LoadObject("grafiikat/hahmo_1.bmp",72)//Riemukas
Sotilas_8 = LoadObject("grafiikat/hahmo_1.bmp",72)//Peloton
Sotilas_9 = LoadObject("grafiikat/hahmo_1.bmp",72)//Herkkä
Sotilas_10 = LoadObject("grafiikat/hahmo_1.bmp",72)//Epäilyttävä
Sotilas_11 = LoadObject("grafiikat/hahmo_1.bmp",72)//Hullu
boss = LoadObject("grafiikat/hahmo_1.bmp",72)
pati=LoadObject("grafiikat\panos.bmp")
ShowObject pati,OFF
PositionObject ukko, 0,0
PositionObject boss, 100,0
PositionObject Sotilas, 0,50
PositionObject Sotilas_1, 0,100
PositionObject Sotilas_2, 0,150
PositionObject Sotilas_3, 0,-50
PositionObject Sotilas_4, 0,-100
PositionObject Sotilas_5, 0,-150
PositionObject Sotilas_6, -50,50
PositionObject Sotilas_7, -50,100
PositionObject Sotilas_8, -50,150
PositionObject Sotilas_9, -50,-50
PositionObject Sotilas_10, -50,-100
PositionObject Sotilas_11, -50,-150
TurnObject boss, 180
ClearText
AddText "Henri: Minun tehtäväni on kouluttaa teidät märkäkorvat"
AddText "taistelemaan."
DrawScreen
Wait 5000
ClearText
AddText "Henri: Ensimmäisenä tehtävä käsken teidät juoksemaan ampuma radalle!"
DrawScreen
perilla=1
Wait 5000
TurnObject boss, 180
ClearText
Repeat
If ObjectX(ukko) > 600 And ObjectY(ukko) > 0 Then
perilla=2
EndIf
If perilla=2 Then
ShowObject ukko,OFF
ShowObject Sotilas,OFF
ShowObject Sotilas_1,OFF
ShowObject Sotilas_2,OFF
ShowObject Sotilas_3,OFF
ShowObject Sotilas_4,OFF
ShowObject Sotilas_5,OFF
ShowObject Sotilas_6,OFF
ShowObject Sotilas_7,OFF
ShowObject Sotilas_8,OFF
ShowObject Sotilas_9,OFF
ShowObject Sotilas_10,OFF
ShowObject Sotilas_11,OFF
AddText "MOROOOO!!!"
DrawScreen
EndIf
If perilla=1 Then
MoveObject Sotilas, 2
MoveObject Sotilas_1, 2
MoveObject Sotilas_2, 2
MoveObject Sotilas_3, 2
MoveObject Sotilas_4, 2
MoveObject Sotilas_5, 2
MoveObject Sotilas_6, 2
MoveObject Sotilas_7, 2
MoveObject Sotilas_8, 2
MoveObject Sotilas_9, 2
MoveObject Sotilas_10, 2
MoveObject Sotilas_11, 2
MoveObject Boss, 3
EndIf
Text 0,300, "X: " +MouseX()
Text 0,320, "Y: " +MouseY()
If KeyDown(cbkeyw) Then MoveObject ukko, 2
If KeyDown(cbkeys) Then MoveObject ukko, -2
If KeyDown(cbkeya) Then TurnObject ukko, 5
If KeyDown(cbkeyd) Then TurnObject ukko, -5
'Ammu-systeemi. Vain, jos ase on ladattu
If KeyDown(cbKeyRControl) And reload=0 Then
luoti.AMMUS = New(AMMUS) 'luo uusi ammus
luoti\obj=CloneObject(pati) 'tee klooni
'asetetaan pati samaan paikkaan
CloneObjectPosition luoti\obj,ukko
'käännetään pati samaan suuntaan
CloneObjectOrientation luoti\obj,ukko
reload=5 'aseen lataus
EndIf
'päivitä aseen lataaminen
If reload>0 Then reload=reload-1
'Päivitä kaikki ammukset
For luoti.AMMUS = Each AMMUS
MoveObject luoti\obj,6
If ObjectX(luoti\obj)<-800 Or ObjectX(luoti\obj)>800 Or ObjectY(luoti\obj)<-800 Or ObjectY(luoti\obj)>800 Then
'ammus ylittää rajan -> tuhoa se
DeleteObject luoti\obj 'poista objekti
Delete luoti 'poista luoti kokonaan
EndIf
Next luoti
'tämä ennen muuta grafiikkaa (box)
DrawGame
'piirrä "kenttä"
DrawScreen
Until EscapeKey()
Vapaa_taistelu :
ClearText
ShowObject nappi, OFF
ShowObject nappi_1, OFF
AddText "Welcome free fight."
AddText "Here you can fight some your own war."
DrawScreen
WaitKey
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)
Code: Select all
Type AMMUS 'luo kokoelma, jonka nimi on AMMUS
Field obj 'yksi kenttä nimeltään 'obj'
End Type
FrameLimit 60
SCREEN 640, 480
AddText "Ladataan..."
DrawScreen
nappi = LoadObject("media/cow.bmp", 1)
nappi_1 = LoadObject("media/cow.bmp", 1)
ClearText
PositionObject nappi, -200, 200
PositionObject nappi_1, -200, 100
Repeat
Text 0,300, "X: " +MouseX()
Text 0,320, "Y: " +MouseY()
Locate 30,15
AddText "Aloita peli"
Locate 30,115
AddText "Free fight"
If MouseX() > 25 And MouseX() < 215 And MouseY() >5 And MouseY() < 75 Then
if MouseHit(1) Then
Goto Peli_alkaa
EndIf
EndIf
If MouseX() > 25 And MouseX() < 215 And MouseY() >105 And MouseY() < 175 Then
if MouseHit(1) Then
Goto Vapaa_taistelu
EndIf
EndIf
DrawScreen
Forever
Peli_alkaa :
ClearText
ShowObject nappi, OFF
ShowObject nappi_1, OFF
AddText "Metal War is something new. Something. What no one can explain."
AddText "1000 metal tank attack. I'am alone. What i do?"
DrawScreen
WaitKey //wait 5000
AddText "Correct. Try go some hide place."
WaitKey // wait 2000
AddText "I hideing 20minutes and then i saw U.S.A helicopter"
AddText "I try sway. It was really good they see me. Then one tank shoot and it collison"
AddText "Helicopter and another shoot me."
AddText ""
AddText "Paina mitä tahansa."
DrawScreen
WaitKey
ClearText
AddText "It was my dad story. This war continued two years. I'am 18 years old."
AddText ""
AddText "Paina mitä tahansa."
DrawScreen
WaitKey
//mahdollinen soundi
AddText "Ladataan hahmoja..."
DrawScreen
ukko = LoadObject("media/guy.bmp",72)
Sotilas = LoadObject("media/guy.bmp",72)//ilkeä
Sotilas_1 = LoadObject("media/guy.bmp",72)//persoonallinen
Sotilas_2 = LoadObject("media/guy.bmp",72)//kaveri
Sotilas_3 = LoadObject("media/guy.bmp",72)//peloton
Sotilas_4 = LoadObject("media/guy.bmp",72)//Vitsailija
Sotilas_5 = LoadObject("media/guy.bmp",72)//Pelkuri
Sotilas_6 = LoadObject("media/guy.bmp",72)//ystävällinen
Sotilas_7 = LoadObject("media/guy.bmp",72)//Riemukas
Sotilas_8 = LoadObject("media/guy.bmp",72)//Peloton
Sotilas_9 = LoadObject("media/guy.bmp",72)//Herkkä
Sotilas_10 = LoadObject("media/guy.bmp",72)//Epäilyttävä
Sotilas_11 = LoadObject("media/guy.bmp",72)//Hullu
boss = LoadObject("media/guy.bmp",72)
pati=LoadObject("media/bullet.bmp")
ShowObject pati,OFF
PositionObject ukko, 0,0
PositionObject boss, 100,0
PositionObject Sotilas, 0,50
PositionObject Sotilas_1, 0,100
PositionObject Sotilas_2, 0,150
PositionObject Sotilas_3, 0,-50
PositionObject Sotilas_4, 0,-100
PositionObject Sotilas_5, 0,-150
PositionObject Sotilas_6, -50,50
PositionObject Sotilas_7, -50,100
PositionObject Sotilas_8, -50,150
PositionObject Sotilas_9, -50,-50
PositionObject Sotilas_10, -50,-100
PositionObject Sotilas_11, -50,-150
TurnObject boss, 180
ClearText
AddText "Henri: Minun tehtäväni on kouluttaa teidät märkäkorvat"
AddText "taistelemaan."
DrawScreen
Wait 5000
ClearText
AddText "Henri: Ensimmäisenä tehtävä käsken teidät juoksemaan ampuma radalle!"
DrawScreen
perilla=1
Wait 5000
TurnObject boss, 180
ClearText
Repeat
If ObjectX(ukko) > ScreenWidth() / 2 Then
perilla=2
EndIf
If perilla=2 Then
ShowObject ukko,OFF
ShowObject Sotilas,OFF
ShowObject Sotilas_1,OFF
ShowObject Sotilas_2,OFF
ShowObject Sotilas_3,OFF
ShowObject Sotilas_4,OFF
ShowObject Sotilas_5,OFF
ShowObject Sotilas_6,OFF
ShowObject Sotilas_7,OFF
ShowObject Sotilas_8,OFF
ShowObject Sotilas_9,OFF
ShowObject Sotilas_10,OFF
ShowObject Sotilas_11,OFF
text 50,50, "MOROOOO!!!"
EndIf
If perilla=1 Then
MoveObject Sotilas, 2
MoveObject Sotilas_1, 2
MoveObject Sotilas_2, 2
MoveObject Sotilas_3, 2
MoveObject Sotilas_4, 2
MoveObject Sotilas_5, 2
MoveObject Sotilas_6, 2
MoveObject Sotilas_7, 2
MoveObject Sotilas_8, 2
MoveObject Sotilas_9, 2
MoveObject Sotilas_10, 2
MoveObject Sotilas_11, 2
MoveObject Boss, 3
EndIf
Text 0,300, "X: " +MouseX()
Text 0,320, "Y: " +MouseY()
If KeyDown(cbkeyw) Then MoveObject ukko, 2
If KeyDown(cbkeys) Then MoveObject ukko, -2
If KeyDown(cbkeya) Then TurnObject ukko, 5
If KeyDown(cbkeyd) Then TurnObject ukko, -5
'Ammu-systeemi. Vain, jos ase on ladattu
If KeyDown(cbKeyRControl) And reload=0 Then
luoti.AMMUS = New(AMMUS) 'luo uusi ammus
luoti\obj=CloneObject(pati) 'tee klooni
'asetetaan pati samaan paikkaan
CloneObjectPosition luoti\obj,ukko
'käännetään pati samaan suuntaan
CloneObjectOrientation luoti\obj,ukko
reload=5 'aseen lataus
EndIf
'päivitä aseen lataaminen
If reload>0 Then reload=reload-1
'Päivitä kaikki ammukset
For luoti.AMMUS = Each AMMUS
MoveObject luoti\obj,6
If ObjectX(luoti\obj)<-800 Or ObjectX(luoti\obj)>800 Or ObjectY(luoti\obj)<-800 Or ObjectY(luoti\obj)>800 Then
'ammus ylittää rajan -> tuhoa se
DeleteObject luoti\obj 'poista objekti
Delete luoti 'poista luoti kokonaan
EndIf
Next luoti
'tämä ennen muuta grafiikkaa (box)
DrawGame
'piirrä "kenttä"
DrawScreen
Until EscapeKey()
Vapaa_taistelu :
ClearText
ShowObject nappi, OFF
ShowObject nappi_1, OFF
AddText "Welcome free fight."
AddText "Here you can fight some your own war."
DrawScreen
WaitKey
Hengität nyt manuaalisesti.
-
- Active Member
- Posts: 116
- Joined: Sat Feb 14, 2009 7:47 am
Re: Tyhmät kysymykset (II/2009)
Code: Select all
SCREEN 800,600
Repeat
Text 0,0, "Haluatko tilata aluksen?"
Text 0,11, "1. Kyllä"
Text 0,22, "2. Ei"
If KeyHit(cbkey1) Then
uusialus = 1
Goto uusilaiva
EndIf
If KeyHit(cbkey2) Then End
DrawScreen
Forever
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.
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.
Re: Tyhmät kysymykset (II/2009)
Käytä tyyppikokoelmia tai taulukoita aluksien hallintaan. Pienet aliohjelmat, kuten aluksen luontiin tarkoitetut koodinpätkät kannattaa tehdä joko funktioita tai Gosubia (kirjaimellisesti aliohjelmia) käyttämällä. Älä käytä Gotoa. Katso manuaalista ero, niin tajuat miksi.
Code: Select all
Type Alukset
Field nimi As String
EndType
Repeat
Text 20, 20, "Paina Enter luodaksesi uuden aluksen."
If KeyHit( CbKeyReturn ) Then Gosub uusilaiva
rivi = 0
For iAlus.Alukset = Each Alukset
rivi + 1
Text 20, 20 + 20 * rivi, iAlus\nimi
Next iAlus
DrawScreen
Forever
uusilaiva:
nAlus.Alukset = New( Alukset )
alusmäärä + 1
nAlus\nimi = "Alus " + alusmäärä
Return
Re: Tyhmät kysymykset (II/2009)
Ny on tämmönen ongelma johon en juurikaan keksi ratkaisua..manuaalista olen katellu kaikenlaisia komentoja, mutta en kait osaa soveltaa niitä tähän.
eli jos hiiri on pelihahmosta enemmän oikealla niin kääntyminen sinnepäin ja jos painaa välilyöntiä niin soittaa lyömis animaation
Koodissa on tuo kohta
eli jos hiiri on pelihahmosta enemmän oikealla niin kääntyminen sinnepäin ja jos painaa välilyöntiä niin soittaa lyömis animaation
Koodissa on tuo kohta
Code: Select all
ClearKeys
ClearText
ClearObjects
Type AMMUKSET
Field obj
Field dmg
Field speed
Field hp
Field id
End Type
Type BULLETS
Field obj
Field hp
Field dmg
Field speed
Field id
End Type
Type VIHUT
Field obj
Field hp
Field dmg
Field speed
Field id
EndType
Const PAINOVOIMA = -0.1
yPlus#=0
SetWindow "Viikatemies 2",3
FrameLimit 40
//PUHELAATIKOT
viikatemiespuhe = LoadImage ("puheloota1.png")
MaskImage viikatemiespuhe,cbmagenta
tonttupuhe = LoadImage ("puheloota2.png")
MaskImage tonttupuhe,cbmagenta
//PELINULKOASU
tausta = LoadImage ("tausta2.png")
kenttä=LoadMap("testmap.til","malli tileset.png")
MaskObject kenttä,cbmagenta
PositionObject kenttä,0,50
PlayObject kenttä,0,0,0.5
hiiri = LoadObject("hiiri.png")
//ITSE PELI
pallo=LoadObject("ammus2.png",72)
ShowObject pallo,OFF
nuoli=LoadObject("ammus1.png",72)
ShowObject nuoli,OFF
//PELAAJA
oikea=LoadAnimObject("Viikatemiesjuoksu1.png",47,51,0,13)
MaskObject oikea,cbMagenta
ShowObject oikea,OFF
ObjectRange oikea,30,51
vasen=LoadAnimObject("Viikatemiesjuoksu2.png",47,51,0,13)
MaskObject vasen,cbMagenta
ShowObject vasen,OFF
ObjectRange vasen,30,51
pelihahmo=CloneObject(oikea)
health=100
For x=1 To MapWidth()
For y=1 To MapWidth()
If GetMap2(3,x,y)=1 Then PositionObject pelihahmo,x*32-(ObjectSizeX(kenttä)/2),-y*32+(ObjectSizeY(kenttä)/2)
Next y
Next x
SetupCollision pelihahmo,kenttä,1,4,2
ObjectRange pelihahmo,30,51
PositionCamera -160,-120
////VIHOLLISET
Repeat
DrawImage tausta,0,0
If KeyHit(cbkey2) Then Gosub alkupuhe'painappa 2 niin ei mitään
If KeyHit(cbkeyp) Then Gosub tauko'painappa p niin tauko
////HIIRI
PositionObject hiiri,MouseWX(),MouseWY()
ShowMouse OFF
PointObject pelihahmo,hiiri
////AMPUMINEN
If MouseHit (1) And reload<0
newBullet.AMMUKSET= New(AMMUKSET)
newBullet\obj=CloneObject(pallo)
CloneObjectPosition newBullet\obj,pelihahmo
CloneObjectOrientation newbullet\obj,pelihahmo
MoveObject newBullet\obj,24
reload=15
SetupCollision newbullet\obj,kenttä,1,4,2
EndIf
reload-1
For iBullet.AMMUKSET= Each AMMUKSET
If CountCollisions(ibullet\obj) Then ibullet\hp-32
MoveObject iBullet\obj,6'llikutetaan luotia
If Distance2(iBullet\obj,pelihahmo)>600 Or ibullet\hp<0 Then 'jos...niin tuhotaan ammus
DeleteObject iBullet\obj
Delete iBullet
EndIf
Next iBullet
//KÄVELEMINEN ,HYPPÄÄMMINEN JNE...
vauhti=0
If KeyDown(cbkeyD) Then
'juokse oikealle
PaintObject pelihahmo,oikea
If maassa Then PlayObject pelihahmo,0,3,0.25
vauhti=2 'vauhtia oikealle
ElseIf KeyDown(cbkeyA) Then
'juokse vasemmalle
PaintObject pelihahmo,vasen
If maassa Then PlayObject pelihahmo,0,3,0.25
vauhti=-2 'vauhtia vasemmalle
Else
PlayObject pelihahmo,0
EndIf
TranslateObject pelihahmo,vauhti,yPlus#
yPlus=yPlus+PAINOVOIMA
UpdateGame
CloneCameraPosition pelihahmo
maassa=0
törmäykset=CountCollisions(pelihahmo)
For i=1 To törmäykset
If GetCollision(pelihahmo,i)=kenttä
If CollisionAngle(pelihahmo,i)=90 Then
yPlus#=-1
maassa=1
EndIf
If CollisionAngle(pelihahmo,i)=270 Then
yPlus#=-1
EndIf
EndIf
Next i
////TAPPELEMINEN
JOS HIIRI ON ENEMMÄN VASEMMALLA NIIN
Pelihahmo kääntyy vasemmalle
ja jos painan nappia välilyönti niin lyön
ja soitan animaation PlayObject pelihahmo,4,7,0.25
JA Toisinpäin samahomma
If törmäykset=0 Then PlayObject pelihahmo,12,0
////HYPPÄÄMINEN
If KeyHit(cbKeyW) And maassa Then
yPlus#=2.5
EndIf
If KeyHit (cbkeyq) And powerhyppy>1 And maassa Then
yPlus#=5.0
powerhyppy-1
EndIf
DrawGame
If health > 49 Then Color 0,210,0
If health > 24 And health < 50 Then Color 200,200,0
If health < 25 And health > 17 Then Color 220,105,0
If health < 18 Then Color 215,0,0
If health = 0 Then MakeError "ei mitään vielä.."
Box 100,23,health,15
Color cbwhite
Text 110,25,"HP:"+health
If KeyHit (cbkeyf12) Then ScreenShot "c:\viikatemies2\capture.bmp"
DrawScreen
Until EscapeKey()
EDIT:
Kiitti!
Last edited by rami123 on Wed Jul 08, 2009 9:45 am, edited 2 times in total.
-
- Advanced Member
- Posts: 281
- Joined: Sat Jun 28, 2008 5:19 pm
- Location: Hämeessä miä
Re: Tyhmät kysymykset (II/2009)
suunnan vaihto:
ja animaation soittaminen PlayObject:illa
Code: Select all
kulma=GetAngle2(pelihahmo,hiiri)
If kulma<90 Or kulma>270 Then
PaintObject pelihahmo,oikea
ElseIf kulma>90 Or kulma<270 Then
PaintObject pelihahmo,vasen
EndIf
Re: Tyhmät kysymykset (II/2009)
Miten toteuttaa tämmöinen?:
Text x,y,"Press jotainnappia to continue"
Jokin joka toimii kuten waitkey, mutta pysäyttää ohjelman kunnes tietty nappi on painettu, eikä kunnes jotain nappia on painettu
loppu koodi
Text x,y,"Press jotainnappia to continue"
Jokin joka toimii kuten waitkey, mutta pysäyttää ohjelman kunnes tietty nappi on painettu, eikä kunnes jotain nappia on painettu
loppu koodi
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)
Jotain tämän tyylistä(kö)?
Code: Select all
For i = 0 To 25
Repeat
Text 2,2,"Press "+Chr(97 + i)+" to continue."
DrawScreen
Until GetKey() = 97 + i
Next i
Hengität nyt manuaalisesti.
Re: Tyhmät kysymykset (II/2009)
Feuer wrote:Miten toteuttaa tämmöinen?:
Text x,y,"Press jotainnappia to continue"
Jokin joka toimii kuten waitkey, mutta pysäyttää ohjelman kunnes tietty nappi on painettu, eikä kunnes jotain nappia on painettu
loppu koodi
Code: Select all
SCAN_koodi=cbkeyspace
While 1 : If WaitKey()=SCAN_koodi Then Exit : Wend
Dead men tell no tales. Also, Python rocks!
Codegolf: 99 bottles of beer (oneliner) - Water map partition
Codegolf: 99 bottles of beer (oneliner) - Water map partition
Re: Tyhmät kysymykset (II/2009)
Kiitän Sain noista patentoitua systeemin.
Seuraava ongelma eri projektista:
Miksi edellinen funktio palauttaa nollan jokaisella 'otsikolla' kun asetustiedosto kuuluu:
Seuraava ongelma eri projektista:
Code: Select all
Function ReadConfig(tiedosto$, otsikko$)
otsikko$ = Lower(otsikko$)
If FileExists(tiedosto$) Then
f = OpenToRead(tiedosto$)
While Not EOF(f)
rivi$ = Lower(ReadLine(f))
If Left(rivi$, Len(otsikko$)+1) = otsikko$+"=" Then
arvo$ = Replace(rivi$, otsikko$+"=", "")
Return arvo$
EndIf
Wend
Else
MakeError "Config file not found!"
EndIf
End Function
täytettä=töttöröö
rekkari=abc-123
valmnro=K9HÖM9813E390196
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)
Saako kysyä, miten kutsut tuota funktiota?Feuer wrote:Kiitän Sain noista patentoitua systeemin.
Seuraava ongelma eri projektista:
Miksi edellinen funktio palauttaa nollan jokaisella 'otsikolla' kun asetustiedosto kuuluu:Code: Select all
Function ReadConfig(tiedosto$, otsikko$) otsikko$ = Lower(otsikko$) If FileExists(tiedosto$) Then f = OpenToRead(tiedosto$) While Not EOF(f) rivi$ = Lower(ReadLine(f)) If Left(rivi$, Len(otsikko$)+1) = otsikko$+"=" Then arvo$ = Replace(rivi$, otsikko$+"=", "") Return arvo$ EndIf Wend Else MakeError "Config file not found!" EndIf End Function
täytettä=töttöröö
rekkari=abc-123
valmnro=K9HÖM9813E390196
Joskus se vika piilee siinä...
Dead men tell no tales. Also, Python rocks!
Codegolf: 99 bottles of beer (oneliner) - Water map partition
Codegolf: 99 bottles of beer (oneliner) - Water map partition
Re: Tyhmät kysymykset (II/2009)
Ja tuon asetustiedoston rivit on luotu Writeconfigillaoiskovalmnro=Readconfig("kansiotiedot.cfg", "valmnro")
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