Pikku pelit

Jaa meneillään olevat projektisi tai valmiit pelit muun yhteisön kanssa täällä.
MrMonday
Advanced Member
Posts: 378
Joined: Fri Oct 10, 2008 2:35 pm

Re: Pikku pelit

Post by MrMonday »

Dodiin, terve vain kaikille tasapuolisesti, ja asiaan: Olen siis aloittelija, ollut jo varmaan vuoden, mutta vihdoin sain jotain myös aikaiseksi, ja ajattelinkin, josko se olisi jo tarpeeksi ihmeellistä minulta, jotta sen tänne kehtaa laittaa.. Eli kyseessä on pari kuukautta työstämäni (ihan oikeasti..) peli nimeltä Elämä. Elämässä on siis tarkoituksena ei mikään ja sisältöä ei juurikaan ole, mutta lyhyesti sanoen hiirellä liikutaan eri paikkoihin, joissa voi tehdä erilaisia asioita, kuten opiskella, tehdä töitä, sun muuta, kaikki todella tökerösti tehtynä. Mutta nyt, hyvät Cb:läiset, toivoisinkin saavani rakentavaa palautetta/kritiikkiä ensimmäisestä "kunnon" projektistani. Kestän kaiken, joten piiskatkaa minua kunnolla ja antakaa rehellisiä arvosteluja, muistaen kuitenkin, että en ole vielä mikään ammattilainen.

Kiitos kaunis kaikille, ja ihmeteltävää kaupan päälle.
Paranneltu versio, eli jos olet ladannut ensimmäisen version,
niin suosittelen lataamaan nyt tämän, hieman parempi :)
Elämä.rar
Last edited by MrMonday on Sun Aug 02, 2009 11:43 pm, edited 4 times in total.
KankiKalle
Active Member
Posts: 170
Joined: Mon Jun 23, 2008 9:04 pm

Re: Pikku pelit

Post by KankiKalle »

MrMonday wrote:Dodiin, terve vain kaikille tasapuolisesti, ja asiaan: Olen siis aloittelija, ollut jo varmaan vuoden, mutta vihdoin sain jotain myös aikaiseksi, ja ajattelinkin, josko se olisi jo tarpeeksi ihmeellistä minulta, jotta sen tänne kehtaa laittaa.. Eli kyseessä on pari kuukautta työstämäni (ihan oikeasti..) peli nimeltä Elämä. Elämässä on siis tarkoituksena ei mikään ja sisältöä ei juurikaan ole, mutta lyhyesti sanoen hiirellä liikutaan eri paikkoihin, joissa voi tehdä erilaisia asioita, kuten opiskella, tehdä töitä, sun muuta, kaikki todella tökerösti tehtynä. Mutta nyt, hyvät Cb:läiset, toivoisinkin saavani rakentavaa palautetta/kritiikkiä ensimmäisestä "kunnon" projektistani. Kestän kaiken, joten piiskatkaa minua kunnolla ja antakaa rehellisiä arvosteluja, muistaen kuitenkin, että en ole vielä mikään ammattilainen.

Kiitos kaunis kaikille, ja ihmeteltävää kaupan päälle.
Elämä.rar

Arvosteluja kaipasit, ja tässä tulee yksi. Ensiksi, ihan toimivaa naksutteluahan tuo oli, jopa minä tajusin nopeasti mitä piti tehdä :D Mutta ilman minkäänlaista päämäärää en jaksanut pelata tuota muutakuin sen verran että koitin kaikkia mahdollisia toimintoja. Tai no, mitä nyt olin baarin vakioasiakas :)
Huomasin, että ei voinut tehdä joitain asiota jos oli liian väsynyt. Tällöin vaikka joku vilkkuva teksti joka käskee mennä lepäämään olisi hyvä.
Ja tietysti pitää lisää paikkoja missä käydä, ainakin jonkinlainen kioski missä voisi lotota tai raaputtaa arpoja voisi olla mukava lisä.
Sinulla on tässä nyt hyvä perusta kunnon pelille, jossa pitäisi olla vielä juoni ja päämäärä, esim. Rahan saaminen, viisaaksi tuleminen, kaupungin isoin kaljamaha-titteli :D jne.
Eli tämä versio on aikamoinen raakile, mutta jatka ihmeessä kehitystä! Tästä on hyvä jatkaa.
Väsyttää niin ettei jaksa edes mennä lepäämään.
MrMonday
Advanced Member
Posts: 378
Joined: Fri Oct 10, 2008 2:35 pm

Re: Pikku pelit

Post by MrMonday »

Kiitos Paljon, olenkin jo jotain pientä saanut aikaan, ja päivitetty versio löytyykin ensimmäisestä viestistä.
Parannuksia on mm: Pelin voi tallentaa (Itse tehty Tallennus-systeemi), paikkoihin pääsee sisälle, joka kuukausi tulee vesi-sähkö-vuokra Lasku, ja eri tapahtumissa arvot ovat satunnaisia, eli ei ole vakio summaa esim sille, että paljon saat palkkaa, jne..

Lisää paikkoja on tulossa, kuten muutakin pikkukivaa (osaamiseni mukaan..), ja tietysti se tärkein: PÄÄMÄÄRÄ :D
MrMonday
Advanced Member
Posts: 378
Joined: Fri Oct 10, 2008 2:35 pm

Re: Pikku pelit

Post by MrMonday »

Kehitystä on taas tapahtunut, tosin erittäin vähän, mutta on kuitenkin, ja paranee koko ajan, päivittelen peliä aina sillon tällön, ja lisään ensimmäiseen postin.. (eli ekasta postista latailette aina uusimman, poistan aina vanhan alta pois..)

Nyt: Kolme titteliä avattavana: Vuoden Typerys, Vuoden Plösö ja Vuoden Tenuseiväs.
Paikkoja: Kauppa, Tehdas, Sali, Pikaruokala, Hautausmaa, Galleria (ite maalaat taulus..), Koulu, Jne..

Tulossa: Kaupan hedelmäpeli käytettävissä, lisää titteleitä, lisää paikkoja, päämäärä..

Ja toivoisin edelleen palautetta ja parannusehdotuksia..
ilmoittakaa myös bugeista, mitä peli on varmaan täynnä.. (Vaikka korjasinkin niitä jo paljon..)

Ps. Mukavan (Vit**maisen) haastava projekti aloittelialle, ja opettaa monia asioita kantapään kautta..
ensimmäinen peli joka ei jäätynyt heti alkuunsa :)
MaGetzUb
Guru
Posts: 1715
Joined: Sun Sep 09, 2007 12:35 pm
Location: Alavus

Re: Pikku pelit

Post by MaGetzUb »

Kasino vois olla hyvä lisä, paitsi joku blackjak voisi olla vaikea koodata, riippuen taidoistasi. :)
Solar Eclipse
Meneillä olevat Projektit:
We're in a simulation, and God is trying to debug us.
Jani
Devoted Member
Posts: 741
Joined: Fri Oct 31, 2008 4:53 pm

Re: Pikku pelit

Post by Jani »

Kokeilin tuota uudempaa versiota ja huomasinkin heti bugin...
Kokeilkaapa tallentaa miljoona pankkiin ja sitten nostaa se sieltä.
Saat millin vaikka oikeasti et ois ees voinu tallettaa.
Dead men tell no tales. Also, Python rocks!
Codegolf: 99 bottles of beer (oneliner) - Water map partition
MrMonday
Advanced Member
Posts: 378
Joined: Fri Oct 10, 2008 2:35 pm

Re: Pikku pelit

Post by MrMonday »

Casino kuulostaa kyllä hyvältä, mutta koodaustaitoni ovat syvältä.. (<< runoilija sielu)
juu, en siis välttämättä vielä saisi luonnistumaan sitä, vaan pistänpä korvan taakse,
jos vaikka joku päivä vielä saisin tehtyä, kiitos palautteestasi :)

Hmm, tuo on jo aika hirveää, ei siis varmaan vaikeaa korjata, mutta että ilmaista rahaa, niin ei käy laatuun,
tulen pitämään teitä nälässä, ja lasken työmiesten palkat puoleen, tuon laman laaksooni,
ja kyläkauppa menee konkkaan :twisted: hahaa, milläs sitten elätte? , sossun tuellako?
Mutta takaisin asiaan, pistän tuon asian kuntoon, ja laitan toimivaa pakettia tulemaan..

kiitos teille.
EDIT:

PankkiBugi korjattu, ja pelin voi lopettaa kämpiltä käsin.

rami123
Advanced Member
Posts: 354
Joined: Mon Jun 23, 2008 8:20 pm
Location: Kittilä

Re: Pikku pelit

Post by rami123 »

Oli tylsää joten tehin tälläsen lehmä pelin ;) tarkotus ei ollu tehdä huippu hyvää peliä vaan iha ajankuluksi tehin..

Code: Select all

'teemmä tylsä..helppo valikko
 Repeat

Text 30,30,"Valitse"
Text 50,50,"Aloita peli (1)"
Text 50,70,"Lopeta (2)"

If KeyDown (cbkey1) Then Goto alku
If KeyDown (cbkey2) Then End 

 DrawScreen
 Forever 

alku:  

  SCREEN 800,600
SetWindow "Lehmät putoaa.. by Rami123"

lehmä_master=LoadObject ("Media\cow.bmp",72):ShowObject lehmä_master,OFF 
poks_lehmä=LoadAnimObject ("Media\bang.bmp",32,32,0,8):ShowObject poks_lehmä,OFF 
tatti_master=LoadObject ("Media\tatti.bmp"):ShowObject tatti_master,OFF 
hiiri=LoadObject("Media\cursor.bmp")
sieni=LoadImage ("media\tatti.bmp")
sieni_obj=LoadObject ("media\tatti.bmp")


ResizeImage sieni,800,40
PaintObject sieni_obj,-sieni

PositionObject sieni_obj,0,-280

Type lehmät
 Field obj
EndType

Type tatit
 Field obj
EndType 


  Repeat 
  
 DrawImage sieni,0,560 
PositionObject hiiri,MouseWX(),MouseWY()
ShowMouse OFF

//tatit
 If luo_tatti>150
tatti.tatit=New(tatit)
tatti\obj=CloneObject(tatti_master)
PositionObject tatti\obj,Rand(-350,350),Rand (350,350)
 luo_tatti=0         
EndIf
 luo_tatti+1


 For tatti.tatit=Each tatit
MoveObject tatti\obj,0,1

If ObjectsOverlap (hiiri,tatti\obj) And MouseHit (1) Then 
 ShowObject poks_lehmä,ON 
 CloneObjectPosition poks_lehmä,tatti\obj
PlayObject poks_lehmä,0,8,0.25
 DeleteObject tatti\obj
 Delete tatti
 pisteet+350
 sienet+1
EndIf 
 Next tatti


//lehmät
 If luo_lehmä>25
lehmä.lehmät=New(lehmät)
lehmä\obj=CloneObject(lehmä_master)
PositionObject lehmä\obj,Rand(-350,350),Rand (350,350)
 luo_lehmä=0         
EndIf
 luo_lehmä+1
 


 For lehmä.lehmät=Each lehmät
RotateObject lehmä\obj,180
MoveObject lehmä\obj,0,-1

If ObjectsOverlap (lehmä\obj,sieni_obj) Then osuma=1
 
If ObjectsOverlap (hiiri,lehmä\obj) And MouseHit (1) Then 
 ShowObject poks_lehmä,ON 
 CloneObjectPosition poks_lehmä,lehmä\obj
PlayObject poks_lehmä,0,8,0.25
 DeleteObject lehmä\obj
 Delete lehmä 
 pisteet+25
 lehmiä+1
EndIf 
 Next lehmä
 

 
pisteet+1
 
Color cbpurple 
Text 20,20,"Pisteet:"+pisteet

 Color cbGreen  
Line 0,550,800,550

If osuma=1 Then Goto tulokset

  DrawScreen 
  Forever 
  
tulokset:
SCREEN 300,300

 Repeat 

Text 50,150,"Sinun pisteesi ovat:"+pisteet
Text 50,170,"sienet:"+sienet
Text 50,190,"lehmät:"+lehmiä
Text 80,220,"paina jotain "

WaitKey
End 

DrawScreen
Forever 
Ohjeet:
klikkaa lehmiä ennen kuin putoavat maahan
klikkaa sieniä niin saat lisäpisteitä
ja älä päästä lehmiä putoamaan isolle sienelle

opettelin oikeestaan samalla muutamia komentoja..
Sumppi
Active Member
Posts: 163
Joined: Wed Dec 03, 2008 8:07 pm

Re: Pikku pelit

Post by Sumppi »

Oli tylsää, joten tein tämmöisen pienen matopelin. Toteutus ei varmaankaan ole mitään huippulaatua. :?

Code: Select all

SCREEN 200,200
aika=Timer()
koko=4
Dim matox(koko)
Dim matoy(koko)
ClearArray OFF

matox(1)=50*2
matoy(1)=50*2
matox(2)=50*2-4
matoy(2)=50*2
matox(3)=50*2-8
matoy(3)=50*2
matox(4)=50*2-12
matoy(4)=50*2

suuntax=1
Gosub uusiruoka
Repeat
    Gosub liiku
    Gosub piirra
    Gosub syonti
    Gosub kuolema
    DrawScreen
Forever 

liiku:
    If KeyHit (cbkeyup)Then 
        suuntax=0
        suuntay=-1
    EndIf
    If KeyHit (cbkeydown) Then
        suuntax=0
        suuntay=1
    EndIf
    If KeyHit (cbkeyleft) Then
        suuntax=-1
        suuntay=0
    EndIf
    If KeyHit (cbkeyright) Then
        suuntax=1
        suuntay=0
    EndIf
    
    If Timer()-aika>100 Then
        aika=Timer()
        For i=koko To 2 Step -1
            matox(i)=matox(i-1)
            matoy(i)=matoy(i-1)
        Next i
        matox(1)=matox(1)+suuntax*4
        matoy(1)=matoy(1)+suuntay*4
    EndIf

Return    
    
piirra:
    For i=1 To koko
        Circle matox(i),matoy(i),4
    Next i
    Box ruokax,ruokay,4,4
    Text 0,0,pisteet
Return

uusiruoka:
    ruokax=Rand(1,50)*4
    ruokay=Rand(1,50)*4
Return
    
syonti:
    If matox(1)=ruokax Then
        If matoy(1)=ruokay Then
            pisteet+1
            koko+1
            ReDim matox(koko)
            ReDim matoy(koko)
            Gosub uusiruoka
        EndIf
    EndIf
Return
  
kuolema:
    For i=2 To koko
        If matox(1)=matox(i) Then 
            If matoy(1)=matoy(i) Then
                MakeError ("Sait "+pisteet+" pistettä!")
            EndIf
        EndIf
    Next i
    If matox(1)>200 Or matox(1)<0 Then MakeError ("Sait "+pisteet+" pistettä!") 
    If matoy(1)>200 Or matoy(1)<0 Then MakeError ("Sait "+pisteet+" pistettä!")
Return

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!
MaGetzUb
Guru
Posts: 1715
Joined: Sun Sep 09, 2007 12:35 pm
Location: Alavus

Re: Pikku pelit

Post by MaGetzUb »

Rami, saitko idean minulta? :)
Noh itse olisin toteuttanut tuon paaaljon helpommin kuvilla, tähän tyyliin:

Code: Select all

Type Lehmät
    Field Lehmä_Y As Float
    Field Lehmä_X As Float 
    Field Lehmä_Yplus As Float
EndType

Type BloodEffect
    Field Blood_X As Float 
    Field Blood_Y As Float 
    Field Blood_PlusX As Float 
    Field Blood_PlusY As Float 
    Field Blood_IsEmitter As Byte 
    Field Blood_Speed As Float 
    Field Blood_Alive As Float 
    Field Blood_Brightness As Float 
    Field Blood_New As Integer 
    Field Blood_NewCur As Integer
EndType 

Global BloodStainEffect 
BloodStainEffect = True 
Dim Words(1) As String
Words(0) = "OFF"
Words(1) = "ON"
SCREEN 800,600

Cow = LoadImage("Media\cow.BMP")

BG = MakeImage(800,600)
DrawToImage BG
    Color 128,128,128
    Ellipse 350,350,200,250
    Color 255,255,255
    Circle 410,325,80,40
    Color 0,128,50
    Ellipse -50,480,900,100
    
    Color CbYellow
    For i = 1 To 36
    R = Rand(75,150)
    Line 400+Cos(i*10)*50,150 - Sin(i*10) * 50, 400+Cos(i*10)*r, 150 - Sin(i*10) * r
    Next i
    Circle 400-22,150-22,44
DrawToScreen 

Font = LoadFont("Courier New",20,1)

Ammutut_lehmät = 0
Menetettyjä = 0

ClsColor cbLightBlue
ShowMouse False
Repeat
    SetFont Font
    
    DrawImage BG,0,0
    
    If KeyDown(cbkeyrcontrol) Or KeyDown(cbkeylcontrol) And KeyHit(cbkeyb) Then BloodStainEffect = Not BloodStainEffect
    
    If Timer() > Lehmä_Aika + Rand(500-Ammutut_lehmät,5000-Ammutut_lehmät)  Then 

        Lehmä.Lehmät = New (Lehmät)
        Lehmä\Lehmä_X = Rand(0,800-ImageWidth(Cow))
        Lehmä\Lehmä_Y = 0
        Lehmä_Yplus = Rand(1,5)
        Lehmä_Aika = Timer()
    EndIf 
    

    Gosub Sub_PäivitäLehmät
    
    Water_Angle = WrapAngle(Water_Angle+5)

    Color cbblue
    For i = 0 To 800
    Box i,520+Sin(Water_Angle + WrapAngle(i)) * 15 + Sin(WrapAngle(i*2))*10 + Cos(WrapAngle(i*2))*5, 1, 110
    Next i 
    Color cbred

    Text 0,0,"Ammuttuja lehmiä: "+Ammutut_lehmät
    Text 0,TextHeight("|"),"Menetettyjä lehmiä: "+Menetettyjä+"/10"
    Text 0,TextHeight("|")*2,"Bloodstain effect: "+Words(BloodStainEffect) + " Control + B"
    If Menetettyjä > 9 Then Exit 
    UpdateBlood()
    Line 0,MouseY(),800,MouseY()
    Line MouseX(),0,MouseX(),600
    
    Circle MouseX() - 100, MouseY() - 100, 200, 0
    

    
DrawScreen
Forever 

CenterText 400,150,"Hävisit! Menenetit 10 lehmää!"
CenterText 400,200,"Tapoit: "+Ammutut_lehmät
DrawScreen
WaitKey 



Sub_PäivitäLehmät:
    For Lehmä.Lehmät = Each Lehmät
    
        DrawImage Cow,Lehmä\Lehmä_X,Lehmä\Lehmä_Y
        Lehmä\Lehmä_Y = Lehmä\Lehmä_Y + 1.2
        
            If MouseX() > Lehmä\Lehmä_X And MouseX() < Lehmä\Lehmä_X + ImageWidth(Cow) And MouseY() > Lehmä\Lehmä_Y And MouseY() < Lehmä\Lehmä_Y + ImageHeight(Cow) Then 
                If MouseHit(1) Then 
                    Ammutut_lehmät = Ammutut_lehmät + 1
                    AddBlood(MouseX(),MouseY(),90,50,90,3,3,2,1)
                    Gosub Tuhoa_Lehmä
                EndIf 
            EndIf    
             
        If Lehmä\Lehmä_Y > 520 Then GoSub Tuhoa_Lehmä : Menetettyjä + 1
    Next Lehmä
Return 
Tuhoa_Lehmä:
Delete Lehmä
Return 



Function AddBlood(x,y,angle,alivetime,speread,speed#,amount,newbloodtime = 5,emitterfornewblood = 1)
    If BloodStainEffect Then 
    For i = 1 To amount
        Blood.BloodEffect = New (BloodEffect)
        Blood\Blood_X = x 
        Blood\Blood_Y = y 
        Angle = Angle + Rand(-speread,speread)
        Blood\Blood_PlusX = Cos(angle) * speed + Rand(-speed/2,speed/2)
        Blood\Blood_PlusY = -Sin(angle) * speed + Rand(-speed/2,speed/2)
        Blood\Blood_Brightness = Rand(Rand(150,180),Rand(200,255))
        Blood\Blood_Alive = alivetime
        Blood\Blood_IsEmitter = emitterfornewblood 
        Blood\Blood_New = newBloodtime + Rand(-5,5)
        Blood\Blood_NewCur = newBloodtime + Rand(-5,5)
    Next i
    EndIf 
EndFunction 

Function UpdateBlood()
    If BloodStainEffect Then 
        For Blood.BloodEffect = Each BloodEffect
            If Blood\Blood_IsEmitter = True And Blood\Blood_NewCur<0 Then AddBlood(Blood\Blood_x, Blood\Blood_y, 270 ,Blood\Blood_Alive*2,22,0.5,Rand(2,5),0,0) : Blood\Blood_NewCur = Blood\Blood_New + Rand(-5,5)
                
                Blood\Blood_x = Blood\Blood_x + Blood\Blood_PlusX
                Blood\Blood_y = Blood\Blood_y + Blood\Blood_Plusy
                Blood\Blood_Plusy = Blood\Blood_Plusy + Gravity
                
                Blood\Blood_NewCur = Blood\Blood_NewCur - 1
                
                
                
                If Blood\Blood_x > 0 And Blood\Blood_x < ScreenWidth() And Blood\Blood_y > 0 And Blood\Blood_y < ScreenHeight() Then 
                Color Blood\Blood_Brightness,0,0
                Circle Blood\Blood_x,Blood\Blood_Y,3
            EndIf 
        
        
            If Blood\Blood_Alive=>0 Then Blood\Blood_Alive = Blood\Blood_Alive -1 Else Delete Blood
        
        
        Next Blood
    Else 
    For Blood.BloodEffect = Each BloodEffect
    Delete Blood
    Next Blood
    EndIf     
EndFunction 

Last edited by MaGetzUb on Sun Aug 09, 2009 5:40 pm, edited 1 time in total.
Solar Eclipse
Meneillä olevat Projektit:
We're in a simulation, and God is trying to debug us.
rami123
Advanced Member
Posts: 354
Joined: Mon Jun 23, 2008 8:20 pm
Location: Kittilä

Re: Pikku pelit

Post by rami123 »

MaGetzUb wrote:Rami, saitko idean minulta? :)
Noh itse olisin toteuttanut tuon paaaljon helpommin kuvilla, tähän tyyliin:

Code: Select all

koodia
Kyllä :D ja Tuo sinun tekemäsi on kyllä paljon hienompi.

minun pitää todellaki alkaa opettelamaan sisentämistä..
User avatar
Ruuttu
Devoted Member
Posts: 688
Joined: Thu Aug 30, 2007 5:11 pm
Location: Finland, Sipoo

Avoid

Post by Ruuttu »

Kyseessä on eräänlainen monen pelaajan matopeli. Peli-idea on pöllitty aika suoraan pelistä jonka nimeä en muista, mutta idea on tämä: Jokainen pelaaja ohjaa omaa matoaan. Pelaaja, joka törmää seiniin tai toiseen matoon (tai itseensä) "kuolee". Kun näin käy, kaikki muut paitsi kuolleet pelaajat saavat pisteen. Kun enää yksi pelaaja on elossa, kierros alkaa alusta kaikkien pelaajien ollessa mukana. Se, joka ensimmäisenä saavuttaa tietyn pistemäärän (tai jolla on eniten pisteitä tietyn ajan kuluttua) on voittaja. Yksinkertaisesti siis varo törmäämistä muihin matoihin, mutta yritä saada muut madot törmäämään sinuun.

Jotta pelistä voisi nauttia, tarttet kaverin. Tai kaksi.

Single-player moodi ei toimi.
EDIT:

Pisteet tuntuu menevän tietyissä olosuhteissa sekaisin. WIP.

Attachments
Avoid.zip
V. 1.0
(593.3 KiB) Downloaded 285 times
MrMonday
Advanced Member
Posts: 378
Joined: Fri Oct 10, 2008 2:35 pm

Re: Pikku pelit

Post by MrMonday »

Pikku Raketti-Peli, jossa käyt kuussa ja tulet takaisin..
Tulevaisuudessa pistän parempaa versiota tulemaan,
jossa on kaikkea pikku kivaa..
Atollo - Kerran kuussa.zip
Palautetta vastaanotan mielelläni..
EDIT:

nuolinäppäimistä pelataan, kaasua täytyy antaa vähän aikaa, että raketti nousee..

ScreenShot.gif
EDIT:

ja kuva nykyisestä versiosta..

EDIT:

Nyt pitäisi toimia moitteetta..

Last edited by MrMonday on Mon Aug 24, 2009 5:08 pm, edited 4 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 »

Ensin pitäisi vain tietää miten peliä pelataan :|
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
Tuxi
Active Member
Posts: 190
Joined: Wed Jan 21, 2009 10:25 pm
Contact:

Re: Pikku pelit

Post by Tuxi »

Nousin tuossa 25000 metrin korkeuteen, mutta kun mitään ei tapahtunut, kyllästyin. Onko tuo laittamasi versio varmasti oikea?
Projektit:
Jotain pientä (Ehkä vähän suurempaakin)

-Tuxi- (myös Tuxi4321)
-MrMonday-

Re: Pikku pelit

Post by -MrMonday- »

hmm.. täytyypä tarkistaa, pistän päivitettyä pakettia jossain välin tulemaan, niin siinä pitäisi toimia jo moitteetta..
kiitos kun ilmotit..
DatsuniG
Advanced Member
Posts: 367
Joined: Fri Aug 15, 2008 9:57 pm

Re: Pikku pelit

Post by DatsuniG »

20 rivin ristinolla:

Code: Select all

SCREEN 300,300
Dim Ruudukko(2,2) As integer, Vuoro As Integer
Repeat
    For a = 0 To 2
        For i = 0 To 2
            Box i * ScreenWidth() / 3, a * ScreenHeight() / 3, ScreenWidth() / 3, ScreenHeight() / 3, 0
            If MouseX() > i * ScreenWidth() / 3 And MouseX() < (i + 1) * ScreenWidth() / 3 And MouseY() > a * ScreenHeight() / 3 And MouseY() < (a + 1) * ScreenHeight() / 3 And MouseHit(1) And Ruudukko(i,a) = 0 Then
                Ruudukko(i,a) = vuoro + 1
                vuoro = Not vuoro
            ElseIf ruudukko(i,a) = 1 Then
                Ellipse i * ScreenWidth() / 3, a * ScreenHeight() / 3, ScreenWidth() / 3, ScreenHeight() / 3,0
            ElseIf ruudukko(i,a) = 2 Then
                Line i * ScreenWidth() / 3, a * ScreenHeight() / 3, (i + 1) * ScreenWidth() / 3 , (a + 1) * ScreenHeight() / 3
                Line (i + 1) * ScreenWidth() / 3 , a * ScreenHeight() / 3 , i * ScreenWidth() / 3 , (a + 1) * ScreenHeight() / 3
            EndIf
            If (Ruudukko(a,0) = (Not vuoro) + 1 And Ruudukko(a,1) = (Not vuoro) + 1 And Ruudukko(a,2) = (Not vuoro) + 1) Or (Ruudukko(0,i) = (Not vuoro) + 1 And Ruudukko(1,i) = (Not vuoro) + 1 And Ruudukko(2,i) = (Not vuoro) + 1) Or (Ruudukko(0,0) = (Not vuoro) + 1 And Ruudukko(1,1) = (Not vuoro) + 1 And Ruudukko(2,2) = (Not vuoro) + 1) Or (Ruudukko(2,0) = (Not vuoro) + 1 And Ruudukko(1,1) = (Not vuoro) + 1 And Ruudukko(0,2) = (Not vuoro) + 1) Then MakeError Chr(79 + (Not vuoro) * 9) + " voitti!"
        Next i
    Next a   
    DrawScreen
Forever 
Hengität nyt manuaalisesti.
KilledWhale
Tech Developer
Tech Developer
Posts: 545
Joined: Sun Aug 26, 2007 2:43 pm
Location: Liminka

Re: Pikku pelit

Post by KilledWhale »

Tässä olisi oma melko tiiviksi pakattu viiden rivin ristinolla. Jos tekstikomennoilla tekisi piirtokomentojen sijaan menisi vielä kevyesti neljään riviin.

Code: Select all

For a = 0 To a + 1
	If (a Mod 23) < 22 Then Line (((a Mod 23) < 2) * ((a Mod 23) + 1) * ScreenWidth() / 3) + (((a Mod 23) < 4 And (a Mod 23) > 1) * 0) + (((a Mod 23) > 3 And ( ((a Mod 23) -4) / 9) = 1)*(((a Mod 23) - 4) Mod 3 * ScreenWidth() / 3)) + (((a Mod 23) > 3 And (((a Mod 23)-4) / 9) = 0)*(((a Mod 23) - 4) Mod 3 * ScreenWidth() / 3 + (ScreenWidth() / 3  * (Mid(s$ + "0000000000", Int(Max(((a Mod 23) Mod 23 - 4) Mod 9 + 1, 1)), 1) = "2") * ((a Mod 23) > 3)))), (((a Mod 23) < 2) * 0) + (((a Mod 23) < 4 And (a Mod 23) > 1) * ((a Mod 23) Mod 2 + 1) * ScreenHeight() / 3) + (((a Mod 23) > 3 And (((a Mod 23)-4) / 9) = 1)*(((a Mod 23) - 4) / 3 Mod 3 * ScreenHeight() / 3)) + (((a Mod 23) > 3 And (((a Mod 23)-4) / 9) = 0)*(((a Mod 23) - 4) / 3 Mod 3 * ScreenHeight() / 3)), (((a Mod 23) < 2) * ((a Mod 23) + 1) * ScreenWidth() / 3) + (((a Mod 23) < 4 And (a Mod 23) > 1) * ScreenWidth()) + (((a Mod 23) > 3 And (((a Mod 23)-4) / 9) = 1)*(((a Mod 23) - 4) Mod 3 * ScreenWidth() / 3 + (ScreenWidth() / 3 * (Mid(s$ + "0000000000", Int(Max(((a Mod 23) Mod 23 - 4) Mod 9 + 1, 1)), 1) = "2") * ((a Mod 23) > 3)))) + (((a Mod 23) > 3 And (((a Mod 23)-4) / 9) = 0)*(((a Mod 23) - 4) Mod 3 * ScreenWidth() / 3)), (((a Mod 23) < 2) * ScreenHeight()) + (((a Mod 23) < 4 And (a Mod 23) > 1) * ((a Mod 23) Mod 2 + 1) * ScreenHeight() / 3) + (((a Mod 23) > 3 And (((a Mod 23)-4) / 9) = 1)*(((a Mod 23) - 4) / 3 Mod 3 * ScreenHeight() / 3 + (ScreenHeight() / 3 * (Mid(s$ + "0000000000", Int(Max(((a Mod 23) Mod 23 - 4) Mod 9 + 1, 1)), 1) = "2") * ((a Mod 23) > 3)))) + (((a Mod 23) > 3 And ( ((a Mod 23) -4) / 9) = 0)*( ((a Mod 23)  - 4) / 3 Mod 3 * ScreenHeight() / 3 + (ScreenHeight() / 3  * (Mid(s$ + "0000000000", Int(Max( ((a Mod 23)  Mod 23 - 4) Mod 9 + 1, 1)), 1) = "2") *  ((a Mod 23)  > 3))))Else DrawScreen
	If (a Mod 23) < 22 And (a Mod 23) > 3 Then Ellipse (((a Mod 23) - 4) Mod 3) * ScreenWidth() / 3, (((a Mod 23) - 4) / 3 Mod 3) * ScreenHeight() / 3, ScreenWidth() / 3 * (Mid(s$ + "0000000000", ((a Mod 23) Mod 23 - 4) Mod 9 + 1, 1) = "1"), ScreenHeight() / 3, 0
	If (Mid(s$ + "0000000000", ((a Mod 10) / 3) * 3 + 1, 1) = Mid(s$ + "0000000000", ((a Mod 10) / 3) * 3 + 2, 1) And Mid(s$ + "0000000000", ((a Mod 10) / 3) * 3 + 2, 1) = Mid(s$ + "0000000000", ((a Mod 10) / 3) * 3 + 3, 1) And Mid(s$ + "0000000000", ((a Mod 10) / 3) * 3 + 3, 1) <> "0") Or (Mid(s$ + "0000000000", ((a Mod 10) Mod 3 + 1), 1) = Mid(s$ + "0000000000", ((a Mod 10) Mod 3 + 1) + 3, 1) And Mid(s$ + "0000000000", ((a Mod 10) Mod 3 + 1) + 3, 1) = Mid(s$ + "0000000000", ((a Mod 10) Mod 3 + 1) + 6, 1) And Mid(s$ + "0000000000", ((a Mod 10) Mod 3 + 1) + 6, 1) <> "0") Or (Mid(s$ + "0000000000", 1, 1) = Mid(s$ + "0000000000", 5, 1) And Mid(s$ + "0000000000", 1, 1) = Mid(s$ + "0000000000", 9, 1) And Mid(s$ + "0000000000", 1, 1) <> "0") or (Mid(s$ + "0000000000", 3, 1) = Mid(s$ + "0000000000", 5, 1) And Mid(s$ + "0000000000", 3, 1) = Mid(s$ + "0000000000", 7, 1) And Mid(s$ + "0000000000", 3, 1) <> "0")Then MakeError Chr(79 + (Mid(s$ + "0000000000", 10, 1) = "0") * 9) + " VOITTI!" Else s$ = Left(StrInsert(StrRemove(StrInsert(s$ + "0000000000", (a Mod 10) + 1, Chr(49 + (Mid(s$ + "0000000000", 10, 1) = "1"))), (a Mod 10) + 1 + ((MouseHit(1) And MouseX() > ((a Mod 10) Mod 3) * (ScreenWidth() / 3) And MouseX() < ((a Mod 10) Mod 3 + 1) * (ScreenWidth() / 3) And MouseY() > ((a Mod 10) / 3) * (ScreenHeight() / 3) And MouseY() < ((a Mod 10) / 3 + 1) * (ScreenHeight() / 3) And Mid(s$ + "0000000000", (a Mod 10) + 1, 1) = "0") = 0), 1), 9, Chr(((Mid(s$ + "0000000000", 10, 1) = "1") * (48 + ((MouseHit(1) And MouseX() > ((a Mod 10) Mod 3) * (ScreenWidth() / 3) And MouseX() < ((a Mod 10) Mod 3 + 1) * (ScreenWidth() / 3) And MouseY() > ((a Mod 10) / 3) * (ScreenHeight() / 3) And MouseY() < ((a Mod 10) / 3 + 1) * (ScreenHeight() / 3) And Mid(s$ + "0000000000", (a Mod 10) + 1, 1) = "0") = 0))) + (Mid(s$ + "0000000000", 10, 1) = "0") * (49 - ((MouseHit(1) And MouseX() > ((a Mod 10) Mod 3) * (ScreenWidth() / 3) And MouseX() < ((a Mod 10) Mod 3 + 1) * (ScreenWidth() / 3) And MouseY() > ((a Mod 10) / 3) * (ScreenHeight() / 3) And MouseY() < ((a Mod 10) / 3 + 1) * (ScreenHeight() / 3) And Mid(s$ + "0000000000", (a Mod 10) + 1, 1) = "0") = 0)))) + "0000000000", 10)
Next a
CoolBasic henkilökuntaa
Kehittäjä

cbFUN Kello
cbSDL
Whale.dy.fi

<@cce> miltäs tuntuu olla suomen paras
MaGetzUb
Guru
Posts: 1715
Joined: Sun Sep 09, 2007 12:35 pm
Location: Alavus

Re: Pikku pelit

Post by MaGetzUb »

Itseasiassa tämä nyt ei ole peli, vaan tällä lyhykäisellä koodin pätkällä selvität onko joku k*sessa/pihkassa sinuun, eli siis yksinkertainen rakkausmittari, parempi kuin joku maksullinen palvelu! :D

Code: Select all

SCREEN 800,15
SetWindow "Rakkausmittari"


paikka = 1
Repeat 

    Select paikka
        Case 1
            Color 255,255,255
            nimi1$ = Input("Kuka: ")
            If KeyHit(28) Then paikka = 2 :CloseInput
        Case 2
            nimi2$ = Input("Kenestä: ")
            If KeyHit(28) Then paikka = 3 : CloseInput
        Case 3
            määrä# = Lovemeter(nimi1$,nimi2$)
            Color 255 - ((255 / 100) * määrä#), ((255 / 100) * määrä#), 0 
            Text 0,0,"Henkilö: "+nimi1$+" Tykkää henkilöstä nimeltään: "+nimi2+"::"+määrä+" Prosenttia!"

            If KeyHit(28) Then paikka = 1
    EndSelect 

DrawScreen
Forever 




Function Lovemeter(nimi$,nimi2$)
    //Riisutaan tekstit alkumerkeistä ja pistetään ne samaan kijain kokoon:
    nimi$ = Trim(Lower(nimi$)) 
    nimi2$ = Trim(Lower(nimi2$))
    //Lasketaan merkeistä ASCII arvot yhteen:
    For i = 1 To Len(nimi$)
        count1 = count1 + Asc(Mid(nimi$,i,1))
    Next i
    //Sama asia toiselle nimelle
    For i = 1 To Len(nimi2$)
        count2 = count2 + Asc(Mid(nimi2$,i,1))
    Next i
    //Lasketaan count1 muuttujan ja count2 muuttujan keskiarvot:
    keskiarvo1# = (count1 / Len(nimi$))
    keskiarvo2# = (count2 / Len(nimi2$))
    
    //Vertaillaan kumpi on suurempi:
    suurempi# = Max(keskiarvo1,keskiarvo2)
    pienempi# = Min(keskiarvo1,keskiarvo2)
    
    //Lasketaan ylempien muuttujien perusteella prosentti:
    rakkausprosentti# = Max(0,((pienempi# / suurempi#) * 100) - ((suurempi# - pienempi#) * 5))
    
    //Palautetaan rakkausprosentti:
    Return rakkausprosentti# 
EndFunction 

Solar Eclipse
Meneillä olevat Projektit:
We're in a simulation, and God is trying to debug us.
Awaclus
Forum Veteran
Posts: 2939
Joined: Tue Aug 28, 2007 2:50 pm

Re: Pikku pelit

Post by Awaclus »

MaGetzUb wrote:Itseasiassa tämä nyt ei ole peli, vaan tällä lyhykäisellä koodin pätkällä selvität onko joku k*sessa/pihkassa sinuun, eli siis yksinkertainen rakkausmittari, parempi kuin joku maksullinen palvelu! :D
"Henkilö: Pietari Virtanen Tykkää henkilöstä nimeltään: Pietari Virtanen : : 100.0 Prosenttia!"

Oho, olen aika itserakas.
Post Reply