Pikku pelit

Jaa meneillään olevat projektisi tai valmiit pelit muun yhteisön kanssa täällä.
User avatar
Knoy
Active Member
Posts: 187
Joined: Fri Feb 12, 2010 11:50 pm

Re: Pikku pelit

Post by Knoy » Thu Jun 10, 2010 8:20 pm

Duunailin pienen pelin nimi on City Runner

Grafiikkaan käytin aikaa jonkin aikaa... (Hahmon spriteen)

Idea: Hyppää porttien ohi niin kauan kuin pystyt!

Näppäimet:
Z - Hyppää (Jos on maassa)
X - Spurttaa (Jos on maassa) - Laskeutuu alas nopeammin (Jos on ilmassa)

Kuva:
Image
Ajattelin jatkaa pelin kehittelyä ja tehdä siitä jonkin kokoisen projektin, mutta ensimmäinen osa nyt tänne kun kerron on näin pieni.

Edit: Bugi korjattu.
Attachments
City Runner.rar
Bugit korjattu
(599.03 KiB) Downloaded 59 times
Last edited by Knoy on Fri Jun 11, 2010 10:02 am, edited 2 times in total.

User avatar
skinkken
Advanced Member
Posts: 453
Joined: Sat Sep 01, 2007 4:00 pm
Location: Helsinki

Re: Pikku pelit

Post by skinkken » Thu Jun 10, 2010 9:09 pm

Knoy wrote:Edit: Bugi korjattu.
Ainakin siinä on sellainen bugi että ukko jumittuu välillä seinään.
Valmiit pelit: House of Horrors , Battle Zone , Über Ball , Itdoti , Space Chaos , Bloxxplosives
Projekti jota teen ehkä joskus vielä: viewtopic.php?f=11&t=2636 <-- Tämä rivi päivitetty 14.1.2013

User avatar
Knoy
Active Member
Posts: 187
Joined: Fri Feb 12, 2010 11:50 pm

Re: Pikku pelit

Post by Knoy » Thu Jun 10, 2010 9:10 pm

skinkken wrote:
Knoy wrote:Edit: Bugi korjattu.
Ainakin siinä on sellainen bugi että ukko jumittuu välillä seinään.
Se bugi tuli kun korjasin ensimmäisen bugin, korjaan juuri nyt tuota bugia.

User avatar
-Z-
Devoted Member
Posts: 682
Joined: Tue Aug 28, 2007 3:33 pm
Location: In ur danmaku, grazin ur bullets

Re: Pikku pelit

Post by -Z- » Thu Jun 10, 2010 10:29 pm

Knoy wrote:Duunailin pienen pelin nimi on City Runner

Grafiikkaan käytin aikaa jonkin aikaa... (Hahmon spriteen)

Idea: Hyppää porttien ohi niin kauan kuin pystyt!

Näppäimet:
Z - Hyppää (Jos on maassa)
X - Spurttaa (Jos on maassa) - Laskeutuu alas nopeammin (Jos on ilmassa)

Kuva:
Image
Ajattelin jatkaa pelin kehittelyä ja tehdä siitä jonkin kokoisen projektin, mutta ensimmäinen osa nyt tänne kun kerron on näin pieni.

Edit: Bugi korjattu.
Osuin ensimmäisellä hypyllä alas tullessa portin alaosaan ja peli jäi ilmeisesti loputtomaan looppiin.
"Fallout 3 (#10) marked a shift in the industry, a move that saw the western RPG begin to surpass its Japanese counterparts." -IGN top 100 RPGs of all time

User avatar
Knoy
Active Member
Posts: 187
Joined: Fri Feb 12, 2010 11:50 pm

Re: Pikku pelit

Post by Knoy » Thu Jun 10, 2010 10:31 pm

Okei bugien pitäisi nyt olla korjattu.

Spurtilla pääsee nyt seinän läpi...

Tuo bugi oli varsinainen mysteeri, siilä pelissä ei ollut kuin 1 looppi ja se oli pää silmukka, mikään muu pelin osa ei voinut toistua useasti...
Peli vaan pysähtyi kun osui tolpan alaosaan...

User avatar
Someday coder
Active Member
Posts: 106
Joined: Wed Jul 30, 2008 5:04 pm

Re: Pikku pelit

Post by Someday coder » Thu Jun 10, 2010 11:04 pm

Hyvä peli kyll, ja toi seinän läpi juokseminen johtuu varmaan siitä, että ukkeli spurttaa pidemmän matkan yhdessä framessa mitä seinä on paksu. Yks mahollisuus ainaki. Ilman viilunkia pääsin 34 seinää.

User avatar
MaGetzUb
Guru
Posts: 1715
Joined: Sun Sep 09, 2007 12:35 pm
Location: Alavus

Re: Pikku pelit

Post by MaGetzUb » Fri Jun 11, 2010 12:38 am

Aika hienoa kun tyyppi putoaa heti alussa seinän läpi. :o
Solar Eclipse
Meneillä olevat Projektit:
We're in a simulation, and God is trying to debug us.

User avatar
Knoy
Active Member
Posts: 187
Joined: Fri Feb 12, 2010 11:50 pm

Re: Pikku pelit

Post by Knoy » Fri Jun 11, 2010 10:03 am

Nyt pitäisi olla suurin osa bugeista korjattu, Juoksemalla ei pääse enää seinän läpi eikä kentän oikean reunan yli, ei (pitäisi) voida hyppiä kaiken maailman seinän läpi...

Edit: Ainiin vaikeus astetta nostettu kun peli oli hieman liika helppo...

User avatar
Someday coder
Active Member
Posts: 106
Joined: Wed Jul 30, 2008 5:04 pm

Re: Pikku pelit

Post by Someday coder » Fri Jun 11, 2010 10:14 am

Nyt fps tippuu puoleen kun hyppää? Ja toi on kyllä hyvä, että mitä pidempään painaa hyppyä sitä korkeammalle hyppää.

E: Ja BTW joku tunnelmallinen musiikki olisi hieno taustalle.

Awaclus
Forum Veteran
Posts: 2939
Joined: Tue Aug 28, 2007 2:50 pm

Re: Pikku pelit

Post by Awaclus » Fri Jun 11, 2010 10:19 am

Knoy wrote:Edit: Ainiin vaikeus astetta nostettu kun peli oli hieman liika helppo...
Nyt peli taas on liian vaikea. Ohjaus voisi olla kiva olla nuolinäppäimistä (ylänuoli hyppää, oikea spurttaa). Muuten ihan hyvä peli.

User avatar
Knoy
Active Member
Posts: 187
Joined: Fri Feb 12, 2010 11:50 pm

Re: Pikku pelit

Post by Knoy » Fri Jun 11, 2010 10:23 am

Vaikea sanoa miksi Fps tippuu itselläni peli pyörii kokoajan 60 fps kohdalla...

Hypyn tein suunnilleen näin:

If KeyHit() Then Hyppää=10

If Hyppää>0 Then
Hyppää-1
If KeyDown()Nosto+3.2
Endif

If Nosto>-25 then Nosto-0.9

TranslateObject ...,Run(Juokseeko),Nosto

User avatar
-Z-
Devoted Member
Posts: 682
Joined: Tue Aug 28, 2007 3:33 pm
Location: In ur danmaku, grazin ur bullets

Re: Pikku pelit

Post by -Z- » Fri Jun 11, 2010 4:55 pm

Noniin, nyt toimii kunnolla. Ennätykseksi muodostui 24.
"Fallout 3 (#10) marked a shift in the industry, a move that saw the western RPG begin to surpass its Japanese counterparts." -IGN top 100 RPGs of all time

User avatar
MaGetzUb
Guru
Posts: 1715
Joined: Sun Sep 09, 2007 12:35 pm
Location: Alavus

Re: Pikku pelit

Post by MaGetzUb » Sat Jun 12, 2010 6:32 pm

Siltkin heti alussa tippuu seinän läpi ja fps tuntuu olevan HIIDASS....
Solar Eclipse
Meneillä olevat Projektit:
We're in a simulation, and God is trying to debug us.

User avatar
Koodari
Active Member
Posts: 201
Joined: Wed Nov 18, 2009 10:01 pm
Contact:

Re: Pikku pelit

Post by Koodari » Sat Jun 12, 2010 9:17 pm

Lehmänammuntapeli
Pelissä yritetään ampua tulta piereskeleviä lehmiä!
Attachments
Lehmänammunta -peli.rar
Lataus KESTÄÄÄÄÄÄÄÄÄÄ
(630.83 KiB) Downloaded 49 times
Alussa oli asiakas, projekti ja Koodari...

Code: Select all

[23:36:33] <Minixmix> jos nyt viel yhen lastin heittäis
[23:36:48] <Minixmix> Sit loput vois hoitaa kännyllä :/
[00:14:49] <Minixmix> mutta nyt tyhjennykselle ->
[/size]

jokunen

Re: Pikku pelit

Post by jokunen » Sun Jun 13, 2010 10:45 am

Tässä olisi ristinolla, isolla ruudulla, 30*30. Tekoäly on hyvä mielestäni, lukuun ottamatta pieniä bugeja.

Code: Select all

   SCREEN 600,600
    
    Dim Ruutu(30,30) As Byte //Unohdin nollat =)
    Dim pois As Byte //Milloin löydettiin oikea kohta
    
    Dim x As Integer //väliaikaiset...
    Dim y As Integer
    Dim i As Integer
    
    
    
    ///////////Tekoälyyn////////////
    
    Dim Arvo As Byte//Suurin väliaikainen arvo
    Dim Arvo1 As Byte //Polun arvo, Vaaka
    Dim Arvo2 As Byte //Pysty
    Dim Arvo3 As Byte //Viisto(Ylhäältä oikealta)
    Dim Arvo4 As Byte //Viisto(alhaalta oikealta)
    
    Dim Maa1 As Byte //Polun Maa, Vaaka
    Dim Maa2 As Byte //Pysty
    Dim Maa3 As Byte //Viisto(Ylhäältä oikealta)
    Dim Maa4 As Byte //Viisto(alhaalta oikealta)
    
    Dim Päätty1 As Byte //Milloin polku päättyy
    Dim Päätty2 As Byte
    Dim Päätty3 As Byte
    Dim Päätty4 As Byte
    
    //Suurimmat
    Dim RuudunArvot As Byte //Arvot
    Dim RuudunArvotX As Byte //Sijainti
    Dim RuudunArvotY As Byte
    Dim RuudunArvo As Byte  //Suurin (ratkaiseva)
    
    //Pisteytys
    Const Tyhjä = 6 //Tärkein
    Const Pelaaja = 13
    Const Tietokone = 14
    Const Kerroin = 3 //Piste kerroin
    
    Dim Kerroin1 As Byte //Sarjat huomataan paremmin
    Dim Kerroin2 As Byte
    Dim Kerroin3 As Byte
    Dim Kerroin4 As Byte
    
    /////////////////////////////////
    
    Dim Määrä As Byte 
    Määrä = 5
    
    Puhdista()
    
    Repeat
        pois = 0
        
        For x=20 To 600 Step 20
            For y=20 To 600 Step 20
                Color cbwhite
                Line x,0,x,600 //Ylhäältä alas
                Line 0,y,600,y//Vasemmalta oikealle
                If pois = 0 And MouseHit(1) And  MouseX() <= x And MouseY() <= y
                    If Ruutu(x/20,y/20) = Tyhjä
                        Ruutu(x/20,y/20) = Pelaaja
                        pois = 1
                    Else
                        pois = 2
                    EndIf
                EndIf
                If Ruutu(x/20,y/20) = Pelaaja
                    Color cbgreen
                    Box x-19,y-19,19,19
                ElseIf Ruutu(x/20,y/20) = Tietokone
                    Color cbred
                    Box x-19,y-19,19,19
                EndIf
            Next y
        Next x
        
        If pois =1
            
            Gosub Tarkistus
            
            Gosub Tietokone
            
            Ruutu(RuudunArvotX, RuudunArvotY) = Tietokone
            Color cbred
            Box RuudunArvotX*20-19,RuudunArvotY*20-19,19,19
            
            RuudunArvot = 0
            RuudunArvo = 0
            RuudunArvotX = 0 
            RuudunArvotY = 0
            
            Gosub Tarkistus
            
        EndIf
        
        DrawScreen
        
    Forever
    
    
    Tarkistus:
    
    Arvo1 = 0
    Arvo2 = 0
    Arvo3 = 0
    Arvo4 = 0
    
    For x=1 To 30
        For y=1 To 30
        
            If Ruutu(x,y) > Tyhjä
            
                For i=0 To Määrä
                    pois = 1
                    If Ruutu(x,y) = Ruutu(x+i,y)
                        Arvo1 = Arvo1 + 1
                        pois = 0
                    EndIf
                    If Ruutu(x,y) = Ruutu(x,y+i)
                        Arvo2 = Arvo2 + 1
                        pois = 0
                    EndIf
                    If Ruutu(x,y) = Ruutu(x+i,y+i)
                        Arvo3 = Arvo3 + 1
                        pois = 0
                    EndIf
                    If Ruutu(x,y) = Ruutu(x+i,y-i)
                        Arvo4 = Arvo4 + 1
                        pois = 0
                    EndIf
                    If pois = 1
                        Exit
                    EndIf
                Next i
                
                
                If Max(Arvo1,Max(Arvo2,Max(Arvo3,Arvo4))) >= Määrä
                    Voitto(Ruutu(x,y))
                EndIf
                
                Arvo1 = 0
                Arvo2 = 0
                Arvo3 = 0
                Arvo4 = 0
            EndIf
            
        Next y
    Next x                 
                    
    Return
    
    Tietokone:
    
    ClearText
        
    For x=1 To 30
        For y=1 To 30
            If Ruutu(x,y) = Tyhjä
                For i=-Määrä-1 To Määrä-1
                    If i >< 0
                        If x+i >= 1 And x+i <= 30 And Päätty1 = 0
                            If Ruutu(x+i,y) = Tyhjä
                                Arvo1 = Arvo1 + Ruutu(x+i,y)
                                Kerroin1 = 1
                            ElseIf Maa1 = Ruutu(x+i,y) Or Maa1 = 0
                                Kerroin1 = Kerroin1 * Kerroin
                                Arvo1 = Arvo1 + Ruutu(x+i,y) - Abs(i) + Kerroin1 
                                Maa1 = Ruutu(x+i,y)
                            Else
                                Päätty1 = 1
                                Arvo1 = Arvo1/2
                            EndIf
                        EndIf
                        If y+i >= 1 And y+i <= 30 And Päätty2 = 0
                            If Ruutu(x,y+i) = Tyhjä
                                Arvo2 = Arvo2 + Ruutu(x,y+i)
                                Kerroin2 = 1
                            ElseIf Maa2 = Ruutu(x,y+i) Or Maa2 = 0
                                Kerroin2 = Kerroin2 * Kerroin
                                Arvo2 = Arvo2 + Ruutu(x,y+i) - Abs(i) + Kerroin2
                                Maa2 = Ruutu(x,y+i)
                            Else
                                Päätty2 = 1
                                Arvo2 = Arvo2/2
                            EndIf
                        EndIf
                        If x-i >= 1 And x-i <= 30 And y-i >= 1 And y-i <= 30 And Päätty3 = 0
                            If Ruutu(x-i,y-i) = Tyhjä
                                Arvo3 = Arvo3 + Ruutu(x-i,y-i)
                                Kerroin3 = 1
                            ElseIf Maa3 = Ruutu(x-i,y-i) Or Maa3 = 0
                                Kerroin3 = Kerroin3 * Kerroin
                                Arvo3 = Arvo3 + Ruutu(x-i,y-i) - Abs(i) + Kerroin3
                                Maa3 = Ruutu(x-i,y-i)
                            Else
                                Päätty3 = 1
                                Arvo3 = Arvo3/2
                            EndIf
                        EndIf
                        If x+i >= 1 And x+i <= 30 And y-i >= 1 And y-i <= 30 And Päätty4 = 0
                            If Ruutu(x+i,y-i) = Tyhjä
                                Arvo4 = Arvo4 + Ruutu(x+i,y-i)
                                Kerroin4 = 1
                            ElseIf Maa4 = Ruutu(x+i,y-i) Or Maa4 = 0
                                Kerroin4 = Kerroin4 * Kerroin
                                Arvo4 = Arvo4 + Ruutu(x+i,y-i) - Abs(i) + Kerroin4
                                Maa4 = Ruutu(x+i,y-i)
                            Else
                                Päätty4 = 1
                                Arvo4 = Arvo4/2
                            EndIf
                        EndIf 
                    EndIf
                Next i
                
                Arvo = Max(Arvo1,Max(Arvo2,Max(Arvo3,Arvo4)))   
                Locate  (x-1)*20, (y-1)*20
                AddText arvo +""
                
                If RuudunArvo < Arvo//Jos oli tähän mennessä paras niin muistiin vaan!
                    RuudunArvot = Arvo1 + Arvo2 + Arvo3 + Arvo4
                    RuudunArvotX = x
                    RuudunArvotY = y
                    RuudunArvo = Arvo
                ElseIf RuudunArvot < Arvo1 + Arvo2 + Arvo3 + Arvo4  And RuudunArvo = Arvo
                    RuudunArvot = Arvo1 + Arvo2 + Arvo3 + Arvo4
                    RuudunArvotX = x
                    RuudunArvotY = y
                    RuudunArvo = Arvo
                EndIf
            EndIf
            
            Arvo = 0
            Arvo1 = 0
            Arvo2 = 0
            Arvo3 = 0
            Arvo4 = 0
            Maa1 = 0
            Maa2 = 0
            Maa3 = 0
            Maa4 = 0
            Kerroin1 = 1
            Kerroin2 = 1
            Kerroin3 = 1
            Kerroin4 = 1
            Päätty1 = 0
            Päätty2 = 0
            Päätty3 = 0
            Päätty4 = 0
            
        Next y
    Next x
    
    Return
    
    
    Function Voitto(maa)
        Color cbwhite
        If maa = Tyhjä
            Text 10,5, "Tasapeli"
        ElseIf maa = Pelaaja
            Text 10,5, "Pelaaja voitti"
        Else
            Text 10,5, "Tekoäly voitti"
        EndIf
        
        DrawScreen
        
        ClearMouse()
        WaitMouse
        ClearMouse()
        
        Puhdista()
        
    EndFunction
    
    Function Puhdista()
        For x=1 To 30
            For y=1 To 30
                Ruutu(x,y) = Tyhjä
            Next y
         Next x
    EndFunction
    

User avatar
Someday coder
Active Member
Posts: 106
Joined: Wed Jul 30, 2008 5:04 pm

Re: Pikku pelit

Post by Someday coder » Sun Jun 13, 2010 11:21 am

Hienosti tehty tekoäly, sen verta laginen oli, että optimoin ja parantelin käytettävyyttä. Älä ota loukkauksena :D. Vaihdoin siis systeemin siihen, että kaikki liikkeet päivitetään tiettyyn kuvaan, joka piirretään sitten joka kerta kun looppi mennään läpi. Toimii sujuvasti.

E: Tekoälyssä on vaan yksi heikkous, kun laittaa kaksi kertaa kaksi palikkaa taktisesti, niin että siitä tulisi kaksi kolmen riviä kun lisää viidennen palikan, niin se ei huomaa sitä.

Code: Select all

       SCREEN 600,600
       SetWindow "Loading..."
       
        Dim Ruutu(30,30) As Byte //Unohdin nollat =)
        Dim pois As Byte //Milloin löydettiin oikea kohta
       
        Dim x As Integer //väliaikaiset...
        Dim y As Integer
        Dim i As Integer
       
       
       
        ///////////Tekoälyyn////////////
       
        Dim Arvo As Byte//Suurin väliaikainen arvo
        Dim Arvo1 As Byte //Polun arvo, Vaaka
        Dim Arvo2 As Byte //Pysty
        Dim Arvo3 As Byte //Viisto(Ylhäältä oikealta)
        Dim Arvo4 As Byte //Viisto(alhaalta oikealta)
       
        Dim Maa1 As Byte //Polun Maa, Vaaka
        Dim Maa2 As Byte //Pysty
        Dim Maa3 As Byte //Viisto(Ylhäältä oikealta)
        Dim Maa4 As Byte //Viisto(alhaalta oikealta)
       
        Dim Päätty1 As Byte //Milloin polku päättyy
        Dim Päätty2 As Byte
        Dim Päätty3 As Byte
        Dim Päätty4 As Byte
       
        //Suurimmat
        Dim RuudunArvot As Byte //Arvot
        Dim RuudunArvotX As Byte //Sijainti
        Dim RuudunArvotY As Byte
        Dim RuudunArvo As Byte  //Suurin (ratkaiseva)
       
        //Pisteytys
        Const Tyhjä = 6 //Tärkein
        Const Pelaaja = 13
        Const Tietokone = 14
        Const Kerroin = 3 //Piste kerroin
       
        Dim Kerroin1 As Byte //Sarjat huomataan paremmin
        Dim Kerroin2 As Byte
        Dim Kerroin3 As Byte
        Dim Kerroin4 As Byte
       
        /////////////////////////////////
       
        Dim Määrä As Byte
        Määrä = 5
       
        Global tausta
        tausta = MakeImage(600,600)
        DrawToImage tausta
        For x=20 To 600 Step 20
            For y=20 To 600 Step 20
                Color cbwhite
                Line x,0,x,600
                Line 0,y,600,y
            Next y
        Next x
        DrawToScreen
       
        Puhdista()
       
        Repeat
            SetWindow "Ristinolla"
            pois = 0
            DrawImage tausta,0,0
           
            For x=20 To 600 Step 20
                For y=20 To 600 Step 20
                    If pois = 0 And MouseHit(1) And  MouseX() <= x And MouseY() <= y
                        If Ruutu(x/20,y/20) = Tyhjä Then
                            Ruutu(x/20,y/20) = Pelaaja
                            pois = 1
                        Else
                            pois = 2
                        EndIf
                    EndIf
                Next y
            Next x
           
            If pois =1
                SetWindow "Loading..."
               
                Gosub Tarkistus
               
                Gosub Tietokone
               
                Ruutu(RuudunArvotX, RuudunArvotY) = Tietokone
                Color cbred
                Box RuudunArvotX*20-19,RuudunArvotY*20-19,19,19
               
                RuudunArvot = 0
                RuudunArvo = 0
                RuudunArvotX = 0
                RuudunArvotY = 0
               
                Gosub Tarkistus
               
                DrawToImage tausta
                For x=20 To 600 Step 20
                    For y=20 To 600 Step 20
                        If Ruutu(x/20,y/20) = Pelaaja Then 
                            Color cbgreen
                            Box x-19,y-19,19,19
                        ElseIf Ruutu(x/20,y/20) <> tyhjä And Ruutu(x/20,y/20) <> pelaaja Then 
                            Color cbred
                            Box x-19,y-19,19,19
                        EndIf
                    Next y
                Next x
                DrawToScreen 
            EndIf
           
            DrawScreen
           
        Forever
       
       
        Tarkistus:
       
        Arvo1 = 0
        Arvo2 = 0
        Arvo3 = 0
        Arvo4 = 0
       
        For x=1 To 30
            For y=1 To 30
           
                If Ruutu(x,y) > Tyhjä
               
                    For i=0 To Määrä
                        pois = 1
                        If Ruutu(x,y) = Ruutu(x+i,y)
                            Arvo1 = Arvo1 + 1
                            pois = 0
                        EndIf
                        If Ruutu(x,y) = Ruutu(x,y+i)
                            Arvo2 = Arvo2 + 1
                            pois = 0
                        EndIf
                        If Ruutu(x,y) = Ruutu(x+i,y+i)
                            Arvo3 = Arvo3 + 1
                            pois = 0
                        EndIf
                        If Ruutu(x,y) = Ruutu(x+i,y-i)
                            Arvo4 = Arvo4 + 1
                            pois = 0
                        EndIf
                        If pois = 1
                            Exit
                        EndIf
                    Next i
                   
                   
                    If Max(Arvo1,Max(Arvo2,Max(Arvo3,Arvo4))) >= Määrä
                        Voitto(Ruutu(x,y))
                    EndIf
                   
                    Arvo1 = 0
                    Arvo2 = 0
                    Arvo3 = 0
                    Arvo4 = 0
                EndIf
               
            Next y
        Next x                 
                       
        Return
       
        Tietokone:
       
        ClearText
           
        For x=1 To 30
            For y=1 To 30
                If Ruutu(x,y) = Tyhjä
                    For i=-Määrä-1 To Määrä-1
                        If i >< 0
                            If x+i >= 1 And x+i <= 30 And Päätty1 = 0
                                If Ruutu(x+i,y) = Tyhjä
                                    Arvo1 = Arvo1 + Ruutu(x+i,y)
                                    Kerroin1 = 1
                                ElseIf Maa1 = Ruutu(x+i,y) Or Maa1 = 0
                                    Kerroin1 = Kerroin1 * Kerroin
                                    Arvo1 = Arvo1 + Ruutu(x+i,y) - Abs(i) + Kerroin1
                                    Maa1 = Ruutu(x+i,y)
                                Else
                                    Päätty1 = 1
                                    Arvo1 = Arvo1/2
                                EndIf
                            EndIf
                            If y+i >= 1 And y+i <= 30 And Päätty2 = 0
                                If Ruutu(x,y+i) = Tyhjä
                                    Arvo2 = Arvo2 + Ruutu(x,y+i)
                                    Kerroin2 = 1
                                ElseIf Maa2 = Ruutu(x,y+i) Or Maa2 = 0
                                    Kerroin2 = Kerroin2 * Kerroin
                                    Arvo2 = Arvo2 + Ruutu(x,y+i) - Abs(i) + Kerroin2
                                    Maa2 = Ruutu(x,y+i)
                                Else
                                    Päätty2 = 1
                                    Arvo2 = Arvo2/2
                                EndIf
                            EndIf
                            If x-i >= 1 And x-i <= 30 And y-i >= 1 And y-i <= 30 And Päätty3 = 0
                                If Ruutu(x-i,y-i) = Tyhjä
                                    Arvo3 = Arvo3 + Ruutu(x-i,y-i)
                                    Kerroin3 = 1
                                ElseIf Maa3 = Ruutu(x-i,y-i) Or Maa3 = 0
                                    Kerroin3 = Kerroin3 * Kerroin
                                    Arvo3 = Arvo3 + Ruutu(x-i,y-i) - Abs(i) + Kerroin3
                                    Maa3 = Ruutu(x-i,y-i)
                                Else
                                    Päätty3 = 1
                                    Arvo3 = Arvo3/2
                                EndIf
                            EndIf
                            If x+i >= 1 And x+i <= 30 And y-i >= 1 And y-i <= 30 And Päätty4 = 0
                                If Ruutu(x+i,y-i) = Tyhjä
                                    Arvo4 = Arvo4 + Ruutu(x+i,y-i)
                                    Kerroin4 = 1
                                ElseIf Maa4 = Ruutu(x+i,y-i) Or Maa4 = 0
                                    Kerroin4 = Kerroin4 * Kerroin
                                    Arvo4 = Arvo4 + Ruutu(x+i,y-i) - Abs(i) + Kerroin4
                                    Maa4 = Ruutu(x+i,y-i)
                                Else
                                    Päätty4 = 1
                                    Arvo4 = Arvo4/2
                                EndIf
                            EndIf
                        EndIf
                    Next i
                   
                    Arvo = Max(Arvo1,Max(Arvo2,Max(Arvo3,Arvo4)))   
                    Locate  (x-1)*20, (y-1)*20
                   
                    If RuudunArvo < Arvo//Jos oli tähän mennessä paras niin muistiin vaan!
                        RuudunArvot = Arvo1 + Arvo2 + Arvo3 + Arvo4
                        RuudunArvotX = x
                        RuudunArvotY = y
                        RuudunArvo = Arvo
                    ElseIf RuudunArvot < Arvo1 + Arvo2 + Arvo3 + Arvo4  And RuudunArvo = Arvo
                        RuudunArvot = Arvo1 + Arvo2 + Arvo3 + Arvo4
                        RuudunArvotX = x
                        RuudunArvotY = y
                        RuudunArvo = Arvo
                    EndIf
                EndIf
               
                Arvo = 0
                Arvo1 = 0
                Arvo2 = 0
                Arvo3 = 0
                Arvo4 = 0
                Maa1 = 0
                Maa2 = 0
                Maa3 = 0
                Maa4 = 0
                Kerroin1 = 1
                Kerroin2 = 1
                Kerroin3 = 1
                Kerroin4 = 1
                Päätty1 = 0
                Päätty2 = 0
                Päätty3 = 0
                Päätty4 = 0
               
            Next y
        Next x
       
        Return
       
       
        Function Voitto(maa)
            Color cbwhite
            If maa = Tyhjä
                Text 10,5, "Tasapeli"
                SetWindow "Tasapeli"
            ElseIf maa = Pelaaja
                Text 10,5, "Pelaaja voitti"
                SetWindow "Pelaaja voitti"
            Else
                Text 10,5, "Tekoäly voitti"
                SetWindow "Tekoäly voitti"
            EndIf
           
            DrawScreen
           
            Wait 1000
           
            Puhdista()
           
        EndFunction
       
        Function Puhdista()
            For x=1 To 30
                For y=1 To 30
                    Ruutu(x,y) = Tyhjä
                Next y
            Next x
            DeleteImage tausta
            tausta = MakeImage(600,600)
            DrawToImage tausta
            For x=20 To 600 Step 20
                For y=20 To 600 Step 20
                    Color cbwhite
                    Line x,0,x,600
                    Line 0,y,600,y
                Next y
            Next x
            DrawToScreen
        EndFunction
       

jaahas
Advanced Member
Posts: 307
Joined: Sat Feb 06, 2010 12:36 am
Location: Tornio

Re: Pikku pelit

Post by jaahas » Mon Jun 14, 2010 4:57 pm

täs olis mun väsäämä ruletti:
Attachments
ruletti.rar
(715.96 KiB) Downloaded 79 times

MrMonday
Advanced Member
Posts: 378
Joined: Fri Oct 10, 2008 2:35 pm

Re: Pikku pelit

Post by MrMonday » Mon Jun 14, 2010 8:11 pm

jaahas wrote:täs olis mun väsäämä ruletti:
Joo, oli kyllä hieno, mitä nyt grafiikat oli aika onnettomat, mutta ne nyt ei paljoa häirinneet :)
Loistava pikkupeli, tykkäsin :D

jaahas
Advanced Member
Posts: 307
Joined: Sat Feb 06, 2010 12:36 am
Location: Tornio

Re: Pikku pelit

Post by jaahas » Mon Jun 14, 2010 8:31 pm

MrMonday wrote:
jaahas wrote:täs olis mun väsäämä ruletti:
Joo, oli kyllä hieno, mitä nyt grafiikat oli aika onnettomat, mutta ne nyt ei paljoa häirinneet :)
Loistava pikkupeli, tykkäsin :D
kyl mä paremmat grafiikat tekisin jos olis joku parempi ohjelma ku paint

User avatar
TheDuck
Devoted Member
Posts: 632
Joined: Sun Aug 26, 2007 3:51 pm
Location: C:\Program Files\Tuusula\

Re: Pikku pelit

Post by TheDuck » Mon Jun 14, 2010 8:37 pm

jaahas wrote:
MrMonday wrote:
jaahas wrote:täs olis mun väsäämä ruletti:
Joo, oli kyllä hieno, mitä nyt grafiikat oli aika onnettomat, mutta ne nyt ei paljoa häirinneet :)
Loistava pikkupeli, tykkäsin :D
kyl mä paremmat grafiikat tekisin jos olis joku parempi ohjelma ku paint
Gimp, ilmainen, helppokäyttöinen ja sillä saa aikaan kaunista graffaa jos osaa käyttää.
^^

Post Reply