Readline on funktio, joten se palauttaa jotain. Tässä tapauksessa lukee rivin tiedostosta, mutta sitä ei saa tallennettua mihinkään koska et tavallaan ole määritellyt sille muuttujaa, eli esim. rivi$=Readline (ff)matti3 wrote: Lataa_peli :
ff = OpenToRead("save/"+slot+"_"+slot_j +".bm")
ReadLine ff
CloseFile ff[/code]matti3 wrote:Kyllä tuon osaan, mutta peli jumittuu, kun yrittää ladata jotain.
Tyhmät kysymykset (II/2009)
Re: Tyhmät kysymykset (II/2009)
Re: Tyhmät kysymykset (II/2009)
Nyt toimii muuten, mutta yksi pikkuinen ongelma. Tuo ei löydä Slot_1 tekstiä. :OO
talennus_nimet.td:
exe:
Tiedän vian:
Slot_1 ei ole merkkijono, mutta miten muutan sen?
Koitin:
Sloot$ = Slot_1
Ei
Sloot$ = "Slot_1"
Juu
Tulostaa:
(1)Slot_1
Sitten
Sloot$ = ""+Slot_1
Ei mitään.
talennus_nimet.td:
Code: Select all
Slot_1=jouluo
Code: Select all
Ladataan_peli :
Include "data/tallennus_nimet.td"
Wait 500
Goto Ladataan
Ladataan :
AddText "(1)" +Slot_1
Repeat
If KeyHit(cbkey1) Then
ClearKeys
ClearText
slot_j=1
Goto Lataa_peli
EndIf
DrawScreen
Until KeyHit(cbkeyreturn)
End
Slot_1 ei ole merkkijono, mutta miten muutan sen?
Koitin:
Sloot$ = Slot_1
Ei
Sloot$ = "Slot_1"
Juu
Tulostaa:
(1)Slot_1
Sitten
Sloot$ = ""+Slot_1
Ei mitään.
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)
tallennus_nimet.td:matti3 wrote: Slot_1 ei ole merkkijono, mutta miten muutan sen?
Code: Select all
Slot_1$="jouluo"
Grandi wrote:Sumpille piste. Jos nimimerkin m-kirjain muutetaan r:ksi, p-kirjain v:ksi ja 3 viimeistä kirjainta "vor":iksi, saadaan "survivor", eli suomeksi selviytyjä. Melkoinen yhteensattuma!
Re: Tyhmät kysymykset (II/2009)
Sitten vielä viimeinen kysymys tähän liittyen (toivottavasti)
WriteLine r,"Slot_1$=" +nimi
Se ei tallenna sitä tuossa kohtaa "" merkkien sisään. Vaan suoraan. Miten voin laittaa tuohon ne heittomerkit? Jos laitan näin.
WriteLine r,"Slot_1$=" +"nimi"
Niin ei toimi.
WriteLine r,"Slot_1$=" +nimi
Se ei tallenna sitä tuossa kohtaa "" merkkien sisään. Vaan suoraan. Miten voin laittaa tuohon ne heittomerkit? Jos laitan näin.
WriteLine r,"Slot_1$=" +"nimi"
Niin ei toimi.
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)
Laita WriteLine r,"Slot_1$ = "+Chr(34)+nimi+Chr(34)matti3 wrote:Sitten vielä viimeinen kysymys tähän liittyen (toivottavasti)
WriteLine r,"Slot_1$=" +nimi
Se ei tallenna sitä tuossa kohtaa "" merkkien sisään. Vaan suoraan. Miten voin laittaa tuohon ne heittomerkit? Jos laitan näin.
WriteLine r,"Slot_1$=" +"nimi"
Niin ei toimi.
Chr muuttaa siis asciin merkiksi, ja 34 on lainausmerkki.
btw. heittomerkki on ´ eikä " ;D " on lainausmerkit.
Re: Tyhmät kysymykset (II/2009)
Nyt olen miettinyt pääni puhki ja katsonut manuaalia, mutta en keksi vikaa
Tässä ollaan siis lataamassa tietoja.
Kaikki tiedosto nimet ovat mielestäni oikein, mutta silti tuo ei ymmärrä sitä, että ottaa ne muuttujat tiedostosta vaan esimerkiksi Rahat on pyöreä NOLLA.
Tässä on tuo save tiedosto:
ps: Kiitos kaikille auttajille ja etukäteen kiitos jos autatte tähän.
Tässä ollaan siis lataamassa tietoja.
Code: Select all
Lataa_peli :
Include "save/" +Slot_1 +"_"+slot_j +".bm"
Rahat=Rahaat
AddText "Lataus suoritettu "
AddText "Odota hetki... "
DrawScreen
Wait 500
Goto Aloita_peli
Tässä on tuo save tiedosto:
Code: Select all
Rahaat=400
kauppa$="Kaupunkissa oleva talo"
kauppa_taso=6
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 huomhuomhuom!!! Älä käytä Include-komentoa kun haluat tallennustiedoston! Include-komennolla lisätyt tiedostot lisätään koodiin suoraan kääntövaiheessa, eikä siis julkaisuversiossa tallennus toimi! Käytä mielummin ReadString ja ReadInt -komentoja
EDIT: Luinkin edelliseltä sivulta viestejä. Siltikin, täytyy itsekin sanoa, että _UNOHDA_ Include-komento, kun haluat tehdä tallennustiedostoja. Se ei toimi muilla kuin sinulla, jos siis jossain vaiheessa haluat peliäsi jakaakin eteenpäin.
EDIT: Luinkin edelliseltä sivulta viestejä. Siltikin, täytyy itsekin sanoa, että _UNOHDA_ Include-komento, kun haluat tehdä tallennustiedostoja. Se ei toimi muilla kuin sinulla, jos siis jossain vaiheessa haluat peliäsi jakaakin eteenpäin.
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 (II/2009)
Jaa-a en tiä minulla ainakin toimi nämä:
Edit: Niin tosiaan, kuten VesQ sanoi, niin kannattaa tehdä oma systeemi, siten voit myös salata tietoa.
Edit2: ReadString on vähän... Joten jos yhdellä rivillä on yksi "tieto" niin käytä ReadLine:ä.
Code: Select all
//Main file
Include "kokeilu.CB"
rahat=rahat2
Text 0,0,rahat
Text 0,20,rahat2
DrawScreen
WaitKey
Code: Select all
//kokeilu.CB
rahat2=400
Edit2: ReadString on vähän... Joten jos yhdellä rivillä on yksi "tieto" niin käytä ReadLine:ä.
Re: Tyhmät kysymykset (II/2009)
Käännäppä eka tuo "Main file" EXE:ksi, sitten muuta "kokeilu.CB" tiedostossa rivi muotoon "rahat2=700". Muuttuuko se rahojen määrä silloin muka myös EXE:ssä? Epäilen...phons wrote:Jaa-a en tiä minulla ainakin toimi nämä:Code: Select all
//Main file Include "kokeilu.CB" rahat=rahat2 Text 0,0,rahat Text 0,20,rahat2 DrawScreen WaitKey
Edit: Niin tosiaan, kuten VesQ sanoi, niin kannattaa tehdä oma systeemi, siten voit myös salata tietoa.Code: Select all
//kokeilu.CB rahat2=400
Edit2: ReadString on vähän... Joten jos yhdellä rivillä on yksi "tieto" niin käytä ReadLine:ä.
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 (II/2009)
Tiedän hyvin ettei se toimi EXEnä. Ratkoin vain hänen ongelmansa eikä hän edes puhunut mitään exeksi käännöstä.
Tässä sinulle pieni tallennus filun avaus systeemi.
Tässä esimerkki filu:
Eka numero on siis vaikka asukasmäärä, toka on vuosi ja viimeinen teksti on kaupungin nimi.
Tässä sinulle pieni tallennus filun avaus systeemi.
Code: Select all
Dim intit(2) As Integer
Dim nimi As String
Function OpenSaveFile(file$)
filu=OpenToWrite(file$)
For i=1 To 2
intit(i)=ReadInt(filu) //Eka luettava(intit(1)) on vaikka asukasmäärä ja toka(intit(2)) on vaikka vuosi
nimi=ReadLine(filu) //Kaupungin nimi
Next i
EndFunction
Eka numero on siis vaikka asukasmäärä, toka on vuosi ja viimeinen teksti on kaupungin nimi.
Code: Select all
100000
2100
Phonsland
Re: Tyhmät kysymykset (II/2009)
Noin tuo ei takuulla toimi. ReadInt(filu) -> ReadLine(filu) jos tuollasella systeemillä jatkaa.phons wrote:Tiedän hyvin ettei se toimi EXEnä. Ratkoin vain hänen ongelmansa eikä hän edes puhunut mitään exeksi käännöstä.
Tässä sinulle pieni tallennus filun avaus systeemi.
Tässä esimerkki filu:Code: Select all
Dim intit(2) As Integer Dim nimi As String Function OpenSaveFile(file$) filu=OpenToWrite(file$) For i=1 To 2 intit(i)=ReadInt(filu) //Eka luettava(intit(1)) on vaikka asukasmäärä ja toka(intit(2)) on vaikka vuosi nimi=ReadLine(filu) //Kaupungin nimi Next i EndFunction
Eka numero on siis vaikka asukasmäärä, toka on vuosi ja viimeinen teksti on kaupungin nimi.
Code: Select all
100000 2100 Phonsland
Lisäksi nimen luku pois silmukasta.
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)
Tässä on tallennus/save engine, mutta tuo ei ymmärrä noita minun muuttujia. Aina kun lataa rahaa on 0 vaikka tallensin 700. :O
E. Ja siis tiedot tallentuvat tällä tavalla:
Code: Select all
'This sub-program will save game
savegame:
f=OpenToWrite("save\Save.dat")
WriteInt f,"Rahat=" +Rahat
WriteInt f,"kauppa$=" +Chr(34)+kauppa+Chr(34)
CloseFile f
AddText "Onnistunut tallennus. =)"
DrawScreen
WaitKey
Goto Aloita_peli
Return
'This sub-program will load game
loadgame:
f=OpenToRead("save\Save.dat")
Rahat=ReadInt(f)
kauppa=ReadInt(f)
CloseFile f
Goto Aloita_peli
Return
Code: Select all
NULNULNULNULNULNULNULNUL
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)
Teinpä pienen esimerkin tästä tallennusjutusta. Olepa hyvä.
Code: Select all
Global player, rahat
player = LoadObject("media/guy.bmp",72)
rahat = 100
Repeat
MoveObject player,(UpKey() - DownKey()) * 2
TurnObject player,(LeftKey() - RightKey()) * 5
If KeyDown(cbkeyr)
rahat = rahat +1
EndIf
//F5 tallentaa ja F6 lataa pelin.
If KeyHit(cbkeyf5)
saveGame()
ElseIf KeyHit(cbkeyf6)
loadGame()
EndIf
Text 0,0,"Rahat: " + rahat
DrawScreen
Forever
//Pelin tallennus
Function saveGame()
f = OpenToWrite("save.sav") //Avataan tallennustiedosto
//Kirjoitetaan pelaajan nykyiset koordinaatit tiedostoon.
WriteInt f,ObjectX(player)
WriteInt f,ObjectY(player)
//Myös rahat
WriteInt f,rahat
CloseFile f
EndFunction
//Pelin lataus
Function loadGame()
//Jos tallennus ON olemassa niin avataan se.
If FileExists("save.sav")
f = OpenToRead("save.sav")
//Luetaan koordinaatit samassa järjestyksessä kuin ne kirjoitettiinkin
tmpX = ReadInt(f)
tmpY = ReadInt(f)
//Luetaan rahan määrä
rahat = ReadInt(f)
CloseFile f
//Asetetaan pelaaja juuri ladattuihin koordinaatteihin.
PositionObject player,tmpX,tmpY
EndIf
EndFunction
Re: Tyhmät kysymykset (II/2009)
Kohta loppuu mielenkiinto ohjelmointiin. Vaikka annoit toimivan niin ei toimi. Se kun ei perhana vaihda tuota raha määrää ladatuksi pelissäni. : OOO
Joten laitan koko paskan tänne. :O
Joten laitan koko paskan tänne. :O
Code: Select all
FrameLimit 40
SCREEN 640,480
AddText "Ladataan..."
Goto Alku_valikko
Uusi_peli :
Rahat=1000
kauppa$="Pieni kioski"
kauppa_taso=6
tyon_tekijat=1
menot=0
tulot=0
paiva=1
kuukausi=1
vuosi=2009
valittu=0
tuotteita=0
tuotteita_mahtuu=100
Goto Aloita_peli
Alku_valikko :
ClearText
AddText "V.1.0"
AddText ""
AddText ""
AddText "(1) Aloita uusi peli"
AddText "(1) Lataa vanha peli"
AddText "(2) Opas"
AddText "(3) Lopeta"
Repeat
If KeyHit(cbkey1) Then
ClearKeys
ClearText
Goto Uusi_peli
EndIf
If KeyHit(cbkey2) Then
ClearKeys
ClearText
Goto Tallenna_lataa
EndIf
If KeyHit(cbkey3) Then
ClearKeys
ClearText
Goto Lopeta
EndIf
DrawScreen
Until KeyHit(cbkeyreturn)
End
Juoni :
ClearText
AddText "Pelissä voit tehdä kaiken näköistä."
WaitKey
Goto Alku_valikko
Aloita_peli :
Include "data/kauppa_taso.td"
ClearText
Locate 30,10
AddText "Päivämäärä: " +paiva +"." +kuukausi +"." +vuosi
Locate 30,45
AddText "(1)Osta tuotteita varastoosi"
AddText "(2)Säädä tuotteesi hintoja"
AddText "(3)Palkkaa työntekijöitä"
AddText "(4)Laajenna kauppaasi"
AddText "(5)Seuraava viikko"
AddText "(6)Tietoa firmastasi"
AddText "(A)Lopeta"
Locate 290,10
AddText "Rahasi: " +Rahat
AddText "Kauppasi: " +kauppa
AddText "Työntekijäsi: " +tyon_tekijat
AddText "Tuotteita varastossasi: " +tuotteita
AddText "Tuotteita mahtuu varastoon: " +tuotteita_mahtuu
AddText ""
AddText "Tuottosi/menosi"
AddText "Tuottosi: " +tulot
AddText "Menosi: " +menot
Repeat
If KeyHit(cbkey1) Then
ClearKeys
ClearText
Goto Osta_tuotteita_varastoon
EndIf
If KeyHit(cbkey2) Then
ClearKeys
ClearText
Goto Tallenna_lataa
EndIf
If KeyHit(cbkey3) Then
ClearKeys
ClearText
Goto Aloita_peli
EndIf
If kokouksia > 2 Then
If KeyHit(cbkey4) Then
ClearKeys
ClearText
Goto Aloita_peli
EndIf
EndIf
If KeyHit(cbkey5) Then
ClearKeys
ClearText
Goto Aloita_peli
EndIf
If KeyHit(cbkey6) Then
ClearKeys
ClearText
End
EndIf
DrawScreen
Until KeyHit(cbkeyreturn)
Osta_tuotteita_varastoon :
ClearText
Repeat
Include "data/osta_tuotteita.td"
DrawScreen()
Until KeyHit(cbkeyspace)
CloseInput
Goto Aloita_peli
Tallenna_lataa :
Repeat
//F5 tallentaa ja F6 lataa pelin.
If KeyHit(cbkeyf5)
saveGame()
ElseIf KeyHit(cbkeyf6)
loadGame()
EndIf
If KeyHit(cbkeyh)
Goto Aloita_peli
EndIf
Text 0,0,"Rahat: " + Rahat
Text 0,20,"F5 Savegame"
Text 0,40, "F6 Loadgame"
DrawScreen
Forever
//Pelin tallennus
Function saveGame()
f = OpenToWrite("save.sav") //Avataan tallennustiedosto
//Myös rahat
WriteInt f,Rahat
CloseFile f
EndFunction
//Pelin lataus
Function loadGame()
//Jos tallennus ON olemassa niin avataan se.
If FileExists("save.sav")
f = OpenToRead("save.sav")
//Luetaan rahan määrä
Rahat = ReadInt(f)
CloseFile f
EndIf
EndFunction
Lopeta :
End
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)
Koitappas asettaa Rahat - muuttuja globaaliksi. Muuten et voi käyttää sitä funktiossa.
Re: Tyhmät kysymykset (II/2009)
Nyt toimii kiitos.
Nyt tulee varmaan aika vaikea kysymys ja jos vaikea toteuttaa niin krediittiä tulee. :O
Miten saa sellaisen, että autot liikkuvat maan tiellä ja ihmiset kävely tiellä? :O
Nyt tulee varmaan aika vaikea kysymys ja jos vaikea toteuttaa niin krediittiä tulee. :O
Miten saa sellaisen, että autot liikkuvat maan tiellä ja ihmiset kävely tiellä? :O
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)
Miten saan luodin pysähtymään, kun se osuu seinään? Käytössä yksi näistä CB:n oletusmapeista.
"Baby," I said. "I'm a genius but nobody knows it but me."
-
- Member
- Posts: 54
- Joined: Fri Apr 03, 2009 8:12 pm
- Location: Loviisa
Re: Tyhmät kysymykset (II/2009)
Pysähtymään? Vai tarkoitatko miten poistaa se jos se osuu seinään?
Osallistu suuren tilastoon -> viewtopic.php?f=13&t=1756
-
- Advanced Member
- Posts: 281
- Joined: Sat Jun 28, 2008 5:19 pm
- Location: Hämeessä miä
Re: Tyhmät kysymykset (II/2009)
jos käytät tyyppejä tarkistat osuuko luoti seinään,vaikkapa näin:Hene wrote:Miten saan luodin pysähtymään, kun se osuu seinään? Käytössä yksi näistä CB:n oletusmapeista.
Code: Select all
'Päivitä kaikki ammukset
For luoti.AMMUS = Each AMMUS
If GetMap(2,ObjectX(luoti\obj),ObjectY(luoti\obj)) Then 'jos luoti osuu kartan hit-kerrokseen
DeleteObject luoti\obj 'poista objekti
Delete luoti 'poista luoti kokonaan
EndIf
Next luoti
-
- Member
- Posts: 54
- Joined: Fri Apr 03, 2009 8:12 pm
- Location: Loviisa
Re: Tyhmät kysymykset (II/2009)
Kertokaas helppokäyttöinen rar-purkuohjelma. Ei mitään kuukauden ilmaisversioita yms.
EDIT: Laittaisitko vielä latauslinkin? Kun googletuksella tulokset olivat vähän niitä jä näitä.
EDIT: Laittaisitko vielä latauslinkin? Kun googletuksella tulokset olivat vähän niitä jä näitä.
Last edited by Nasse-setä on Fri Jul 03, 2009 3:28 am, edited 2 times in total.
Osallistu suuren tilastoon -> viewtopic.php?f=13&t=1756