Tyhmät kysymykset (I/2010)

Voit pyytää apua ohjelmointiongelmiin täältä.
Locked
phons
Guru
Posts: 1056
Joined: Wed May 14, 2008 10:11 am

Re: Tyhmät kysymykset (I/2010)

Post by phons »

Korjattu versio:

Code: Select all

    Type AMMUKSET
         Field fieldi
    End Type

    FrameLimit 40

    man1=LoadObject("media\soldier.bmp")

    man=LoadObject("media\soldier.bmp",72)

    ammus=LoadObject("media\bullet.bmp")
    ShowObject ammus,OFF

    Repeat

    If LeftKey() Then TurnObject man,5
    If RightKey() Then TurnObject man,-5
    If UpKey() Then MoveObject man,5
    If DownKey() Then MoveObject man,-5

    If KeyDown(cbkeyspace) And reload=0 Then

    pati.AMMUKSET = New (AMMUKSET)
    pati\fieldi = CloneObject (ammus)

    CloneObjectPosition pati\fieldi, man
    CloneObjectOrientation pati\fieldi, man
    ResetObjectCollision pati\fieldi
    reload=5
    EndIf

    If reload>0 Then reload=reload-1

    For pati.AMMUKSET = Each AMMUKSET
    MoveObject pati\fieldi, 5
    Next pati

    For pati.AMMUKSET = Each AMMUKSET
    If ObjectsOverlap (pati\fieldi, man1) Then
    DeleteObject pati\fieldi
    Delete pati
    EndIf
    Next pati

    DrawScreen

    Forever
Ongelma: käytit ObjectsOverLap()- funktiota ihan päin... en tajunnut mitä luulit sen tekevän, mutta se tarvitsee vain kaksi parametriä jotka ovat objektit jotka voivat olla päällekkäin, kolmas taas on tapa jolla katsotaan onko objekti9n toisen päällä, 1 = laatikko, 2 = pallo ja 3 = pikselintarkka. Muista: Kun tuhoat padin tyypin muista tuhota myös sen objekti.
Image
User avatar
Sami The Great
Advanced Member
Posts: 485
Joined: Tue Aug 28, 2007 4:15 pm
Contact:

Re: Tyhmät kysymykset (I/2010)

Post by Sami The Great »

Tuli tälläinen tyhmä kysymys mieleen: paljon muistiin ladatut kuvat vievät RAM-muistia? Koneessani on 2x1GB DDR2 muistikampaa, mutta tehtävänhallinta ilmoittaa, että muistin varauksen raja olisi 4033400 tavua, eli noin 4GB?? Mietitään, että jos ladataan koneelta kuva, jonka koko on 512x512 pikseliä, niin viekö se sitten muistia 512*512*3 tavua (n. 0.75 MB)?
Aloin miettimään asiaa, kun pelissäni on suht suuria kuvia, joten piti vähän miettiä kanssa paljon ne vievät muistia, että pysyttäisiin järkevyyden rajoissa :D
http://www.rockodilegames.com
CoolBasickin käyttäjä vuodesta 2004.
rami123
Advanced Member
Posts: 354
Joined: Mon Jun 23, 2008 8:20 pm
Location: Kittilä

Re: Tyhmät kysymykset (I/2010)

Post by rami123 »

Miten suurennan Dotia, lineä ja jne? Tarkoitus on, että se olisi yhtä suuri kuin mitä muuttuja on.

Kiitos, koodaaja :) pitääpä sidden koittaa noin.
Last edited by rami123 on Tue Mar 16, 2010 10:42 pm, edited 1 time in total.
koodaaja
Moderator
Moderator
Posts: 1583
Joined: Mon Aug 27, 2007 11:24 pm
Location: Otaniemi - Mikkeli -pendelöinti

Re: Tyhmät kysymykset (I/2010)

Post by koodaaja »

Omia funktioita vaatii. Dot on melko kätevä korvata boxilla, lineä varten pitää laskea pari kulmaa ja piirtää useita samansuuntaisia viivoja ja mahdollisesti ympyrät päätyihin, riippuu hieman millaista visuaalista ilmettä hakee.
sankja
Newcomer
Posts: 30
Joined: Thu Jan 29, 2009 10:32 pm

Re: Tyhmät kysymykset (I/2010)

Post by sankja »

Miten voin laittaa pienen koodin pätkän tänne vastaukseksi jollekkin? Olen Noob näis asiois. :shock:
Awaclus
Forum Veteran
Posts: 2939
Joined: Tue Aug 28, 2007 2:50 pm

Re: Tyhmät kysymykset (I/2010)

Post by Awaclus »

sankja wrote:Miten voin laittaa pienen koodin pätkän tänne vastaukseksi jollekkin? Olen Noob näis asiois. :shock:
[*code]
Print "Hello World o.O"
WaitKey
[*/code]
Ilman *-merkkejä.

EDIT: Kyllä kirjotin kauttaviivan! KYLLÄ KIRJOTIN! Foorumit sotki sen pois johonkin...
Last edited by Awaclus on Wed Mar 17, 2010 3:23 pm, edited 2 times in total.
User avatar
kaneli2000
Guru
Posts: 1059
Joined: Mon Mar 17, 2008 2:40 pm
Location: Lempäälä

Re: Tyhmät kysymykset (I/2010)

Post by kaneli2000 »

Chaosworm wrote:
sankja wrote:Miten voin laittaa pienen koodin pätkän tänne vastaukseksi jollekkin? Olen Noob näis asiois. :shock:
[*code]
Print "Hello World o.O"
WaitKey
[*code]
Ilman *-merkkejä.
Ei vaan:
[*code]
Print "Hello World o.O"
WaitKey
[*/code]
I see the rainbow rising
Jani
Devoted Member
Posts: 741
Joined: Fri Oct 31, 2008 4:53 pm

Re: Tyhmät kysymykset (I/2010)

Post by Jani »

Miksihän IDE puskee erroria "Code 101 in 'cbapi.cb'. Type mismatch at line 125."
Tällä rivillähän siis lukee "Next i".
Tämä virhe tulee vain jos käännän sen includena. Jos ajan koodin suoraan, virhettä ei synny.
Dead men tell no tales. Also, Python rocks!
Codegolf: 99 bottles of beer (oneliner) - Water map partition
User avatar
Jonez
Devoted Member
Posts: 575
Joined: Mon Aug 27, 2007 8:37 pm

Re: Tyhmät kysymykset (I/2010)

Post by Jonez »

Cb ei aina tunnista missä tiedostossa virhe on includea käytettäessä. Eli todennäköisesti virhe on jossain toisessa tiedostossa, tosin ko. rivillä.
-Vuoden 2008 aloittelijan ystävä -palkinnon voittaja-
Image <- protestipelikilpailun voittaja.
Space War
Jani
Devoted Member
Posts: 741
Joined: Fri Oct 31, 2008 4:53 pm

Re: Tyhmät kysymykset (I/2010)

Post by Jani »

Ah, kiitos! Vika oli functions.cb-filussa.
Dead men tell no tales. Also, Python rocks!
Codegolf: 99 bottles of beer (oneliner) - Water map partition
sankja
Newcomer
Posts: 30
Joined: Thu Jan 29, 2009 10:32 pm

Re: Tyhmät kysymykset (I/2010)

Post by sankja »

Eli ehdotuksena tommonen simppeli suuruusjärjestys,ilman vaikeita lajittelusysteemei.Edellisel sivul oli puhetta että tarvittais tommost. :mrgreen:

Code: Select all

Type TYYPPI
    Field Muuttuja As Integer
EndType
Dim taulukko(56)
For i=1 To 56:taulukko(i)=0:Next i

For i = 1 To 10
    uusiJasen.TYYPPI = New (TYYPPI)
    uusiJasen\Muuttuja = Rand (1,56)
Next i

    For iJasen.TYYPPI=Each TYYPPI
        taulukko(iJasen\Muuttuja)=iJasen\Muuttuja
    Next iJasen
    
    For i=1 To 56
        If taulukko(i)<>0
            Print taulukko(i)
        EndIf
    Next i
    
WaitKey 
rami123
Advanced Member
Posts: 354
Joined: Mon Jun 23, 2008 8:20 pm
Location: Kittilä

Re: Tyhmät kysymykset (I/2010)

Post by rami123 »

Taas aika tyhmähkö kysymys, mutta mites tehdään saveimagelle semmonen tallennusjuttu, että se tallentaa järjestyksessä sitä mukaa tiedostoa erinimissä kuin kansiossa on.

edit. Kiittos :D
Last edited by rami123 on Wed Mar 17, 2010 7:28 pm, edited 2 times in total.
User avatar
Sami The Great
Advanced Member
Posts: 485
Joined: Tue Aug 28, 2007 4:15 pm
Contact:

Re: Tyhmät kysymykset (I/2010)

Post by Sami The Great »

rami123 wrote:Taas aika tyhmähkö kysymys, mutta mites tehdään saveimagelle semmonen tallennusjuttu, että se tallentaa järjestyksessä sitä mukaa tiedostoa erinimissä kuin kansiossa on.
Katsos komento FileExists. Eli tarkistat vain, että onko kyseinen tiedosto jo olemassa, ja jos on niin muutat nimeä.
http://www.rockodilegames.com
CoolBasickin käyttäjä vuodesta 2004.
Wilsu
Newcomer
Posts: 13
Joined: Sun Mar 07, 2010 3:00 pm

Re: Tyhmät kysymykset (I/2010)

Post by Wilsu »

"Pelini" kaatuu memory acces violatiniin, eikä hajuakaan mistä se voisi johtua???
Joo, oon aika uusi ja tuolla saattaa olla jotain turhaa paskaa, esim. tuo loppu on täynnä samaa, mutta tuskinpa se siitä johtuu.
Ja mitään nuista objecteista en ole poistanut. :P

Code: Select all

SCREEN 350,350

FrameLimit 40

Iso=LoadFont("Arial",45)
pieni=LoadFont("times new roman",25)



tausta=LoadImage("Media\Tausta.bmp")

DrawImage tausta,1,1 

Color cbyellow
SetFont Iso
Text 45,100,"Free Adventure"

Color cbyellow
SetFont pieni
Text 45,250,"Free Adventuren tekijä: Wilsu"
Text 45,275,"Ohjaa ukkoa nuolinäppäimistä"

WaitKey 

DrawScreen 

Repeat 

UkkoOik=LoadAnimObject("Media\AnimGuy1.bmp",10,10,0,12) 
MaskObject UkkoOik,cbmagenta

UkkoVas=LoadAnimObject("Media\Animguy2.bmp",10,10,0,12)
MaskObject UkkoVas,cbmagenta
ShowObject ukkovas,OFF 


UkkoYlaAla=LoadAnimObject("Media\AnimGuy3.bmp",10,10,0,12)
MaskObject UkkoYlaAl, cbmagenta
ShowObject UkkoYlaAla, OFF 

Ukko1=UkkoOik 

Repeat 

If RightKey() Then
ShowObject UkkoOik, ON
ShowObject UkkoVas, OFF
ShowObject UkkoYlaAla, OFF 
Ukko1=UkkoOik
PlayObject Ukko1,2,11,0.25

ElseIf LeftKey() Then
ShowObject UkkoVas,ON
ShowObject UkkoOik,OFF
ShowObject UkkoYlaAla, OFF 
Ukko2=UkkoVas
PlayObject Ukko2,2,11,0.25

ElseIf UpKey() Then
ShowObject UkkoYlaAla,ON
ShowObject UkkoVas,OFF
ShowObject UkkoOik,OFF
Ukko3=UkkoYlaAla
PlayObject Ukko3,2,11,0.25
Else
PlayObject Ukko1,0
EndIf



DrawScreen 



 Repeat 


Until EscapeKey()

Until EscapeKey()

Until EscapeKey() 
Jurri3
Newcomer
Posts: 38
Joined: Tue Oct 14, 2008 4:57 pm

Re: Tyhmät kysymykset (I/2010)

Post by Jurri3 »

Lataat objecteja silmukan sisällä ;)
Wilsu wrote:"Pelini" kaatuu memory acces violatiniin, eikä hajuakaan mistä se voisi johtua???
Joo, oon aika uusi ja tuolla saattaa olla jotain turhaa paskaa, esim. tuo loppu on täynnä samaa, mutta tuskinpa se siitä johtuu.
Ja mitään nuista objecteista en ole poistanut. :P

Code: Select all

SCREEN 350,350

FrameLimit 40

Iso=LoadFont("Arial",45)
pieni=LoadFont("times new roman",25)



tausta=LoadImage("Media\Tausta.bmp")

DrawImage tausta,1,1 

Color cbyellow
SetFont Iso
Text 45,100,"Free Adventure"

Color cbyellow
SetFont pieni
Text 45,250,"Free Adventuren tekijä: Wilsu"
Text 45,275,"Ohjaa ukkoa nuolinäppäimistä"

WaitKey 

DrawScreen 

Repeat 

UkkoOik=LoadAnimObject("Media\AnimGuy1.bmp",10,10,0,12) 
MaskObject UkkoOik,cbmagenta

UkkoVas=LoadAnimObject("Media\Animguy2.bmp",10,10,0,12)
MaskObject UkkoVas,cbmagenta
ShowObject ukkovas,OFF 


UkkoYlaAla=LoadAnimObject("Media\AnimGuy3.bmp",10,10,0,12)
MaskObject UkkoYlaAl, cbmagenta
ShowObject UkkoYlaAla, OFF 

Ukko1=UkkoOik 

Repeat 

If RightKey() Then
ShowObject UkkoOik, ON
ShowObject UkkoVas, OFF
ShowObject UkkoYlaAla, OFF 
Ukko1=UkkoOik
PlayObject Ukko1,2,11,0.25

ElseIf LeftKey() Then
ShowObject UkkoVas,ON
ShowObject UkkoOik,OFF
ShowObject UkkoYlaAla, OFF 
Ukko2=UkkoVas
PlayObject Ukko2,2,11,0.25

ElseIf UpKey() Then
ShowObject UkkoYlaAla,ON
ShowObject UkkoVas,OFF
ShowObject UkkoOik,OFF
Ukko3=UkkoYlaAla
PlayObject Ukko3,2,11,0.25
Else
PlayObject Ukko1,0
EndIf



DrawScreen 



 Repeat 


Until EscapeKey()

Until EscapeKey()

Until EscapeKey() 
Tekeillä uusi peli!
Awaclus
Forum Veteran
Posts: 2939
Joined: Tue Aug 28, 2007 2:50 pm

Re: Tyhmät kysymykset (I/2010)

Post by Awaclus »

Wilsu: koodissasi on tämmöinen rivi:

Code: Select all

MaskObject UkkoYlaAl, cbmagenta
Ilmeisesti tarkoitus olisi olla UkkoYlaAla, ei UkkoYlaAl (jonka nimistä objektia sinulla ei ole). Virheen korjattuasi huomannet, että peli ei toimi. Syy: Koodissasi on näin:

Code: Select all

Repeat

    //Ladataan vähäsen objekteja

    Repeat

        //Tehdään niille kaikkea jännää

        Repeat

            //Mutta enää ei tehdäkään yhtään mitään ennen kuin painetaan Esciä, mikä taas lopettaa koko pelin
Korjattuasi viimeisen repeatin pois, huomaat, että peli on aivan järkyttävän hidas. Sen saat poistamalla myös ensimmäisen Repeatin, koska tämän jälkeen et lataa noita objekteja koko ajan uudestaan.
sankja
Newcomer
Posts: 30
Joined: Thu Jan 29, 2009 10:32 pm

Re: Tyhmät kysymykset (I/2010)

Post by sankja »

Eli tossois Wilsun onkelmaan ratkasuu,jos tota hait.Joutu kyllä muuttaan systeemei jonku verra. :geek:

Code: Select all

SCREEN 350,350
Const PAINOVOIMA = -0.1
yPlus#=0 
maassa=0
FrameLimit 40

Iso=LoadFont("Arial",45)
pieni=LoadFont("times new roman",25)

Color cbyellow
SetFont Iso
Text 45,100,"Free Adventure"

Color cbyellow
SetFont pieni
Text 45,250,"Free Adventuren tekijä: Wilsu"
Text 45,275,"Ohjaa ukkoa nuolinäppäimistä"

'ladataan kuvasarja ja frame 0 tulee näkyviin
UkkoOik=LoadAnimObject("zerorun1.bmp",47,51,0,13)
MaskObject UkkoOik,cbmagenta
ShowObject UkkoOik,OFF 

UkkoVas=LoadAnimObject("zerorun2.bmp",47,51,0,13)
MaskObject UkkoVas,cbmagenta
ShowObject UkkoVas,OFF

'UkkoYlaAla=LoadAnimObject("zerorun1.bmp",47,51,0,13)
'MaskObject UkkoYlaAla, cbmagenta
'ShowObject UkkoYlaAla, OFF
Ukko=CloneObject(UkkoOik)
DrawScreen 
WaitKey
maassa=1 'aluksi Ukko on maassa
    
    Repeat 
    
        If RightKey() Then
            PaintObject Ukko,UkkoOik
            If maassa
            PlayObject Ukko,2,11,0.25
            EndIf 
        ElseIf LeftKey() Then
            PaintObject Ukko,UkkoVas
            If maassa
            PlayObject Ukko,2,11,0.25
            EndIf 
        Else
            PlayObject Ukko,0
        EndIf
        
        'liikuta pelihahmoa ylöspäin
        If maassa=0
            TranslateObject Ukko,0,yPlus#
            yPlus=yPlus+PAINOVOIMA 'päivitä painovoima 
            If ObjectY(Ukko)<=0
                PositionObject Ukko,0,0
                maassa=1
                yPlus=0
            EndIf 
        EndIf 
        
        'HYPPY (vain jos jalat maassa)
        If KeyHit(cbKeyZ) And maassa Then 
            yPlus#=4.5 'voimaa ylös päin
            maassa=0
        EndIf
        
        Text 10,10,"yPlus:"+yPlus
        DrawScreen 

    Until EscapeKey()
jaahas
Advanced Member
Posts: 307
Joined: Fri Feb 05, 2010 11:36 pm
Location: Tornio

Re: Tyhmät kysymykset (I/2010)

Post by jaahas »

miten saan hiiren tähtäimeksi eli panoksen menemään hiireen käsin
temu92
Web Developer
Web Developer
Posts: 1226
Joined: Mon Aug 27, 2007 9:56 pm
Location: Gamindustri
Contact:

Re: Tyhmät kysymykset (I/2010)

Post by temu92 »

Protip: manuaali.

Protip 2: MouseX() ja MouseY().

Protip 3: MouseWX() ja MouseWY().

Josset edes ton verran jaksa kattoa manuaalia niin projektis on aikalailla tuhoontuomittu.
phons
Guru
Posts: 1056
Joined: Wed May 14, 2008 10:11 am

Re: Tyhmät kysymykset (I/2010)

Post by phons »

jaahas wrote:miten saan hiiren tähtäimeksi eli panoksen menemään hiireen käsin
Oman hiiren saa tähtäimeksi näin:

Code: Select all

mouse = LoadObject("media\target.bmp")
PositionObject mouse,MouseWX(),MouseWY()
panoksen saa menemään hiireen näin, kun sinulla on tyyppi AMMUS jossa on objekti obj joka sisältää ammuksen kuvan, silloin kun edellinen koodi on mukana:

Code: Select all

A.AMMUS = New(AMMUS)
A\obj = CloneObject(ammus_obj)
Pointobject A\obj,mouse
Jos haluat vähän hienomman näköistä ampumista, eli esim. jonkun rynnäkkökiväärin hajannaisuuden teet näin tuon PointObject:n tilalle:

Code: Select all

RotateObject A\obj,-GetAngle2(A\obj,mouse) + Rand(-3,3)
EDIT:

temu92 wrote:Josset edes ton verran jaksa kattoa manuaalia niin projektis on aikalailla tuhoontuomittu.
Totta, jaahas, katso manuska läpi ja käytä HAKUA!!![/edit]
Image
Locked