[ARHIIV] mängumeistrid
Pole sisse logitud. [Logi sisse ]
Mine lehekülje algusesse
Prinditav versioon | Telli teema e-mailile | Lisa lemmikutesse  
Kuidas panna kala liikuma?
Peeter1000
Bännitud


Liitunud: 27.10.2008
Postitusi: 30
[EEMAL]




postitati 27.4.2007 16:25 Tsiteeri
Kuidas panna kala liikuma?



E

Mängu põhimõte on see, et alguses oled väike kala ja siis sööd endast väiksemaid ja kasvad suuremaks. Kõik muu on vist valmis, ainult selline asi, et ma ei oska teha nii, et need teised kalad liiguks nii, et vahepeal liiguvad yles, vahepeal alla, vasakule ja paremale. Kas keegi oskab aidata?
:duh:

Tore küll et mäng on, kuid see ei vasta sinu teema sisule! Vaata reegleid! Kui vaja abi siis pealkirjastame vastavalt.

Crypton




[Muudetud: 27-4-2007 Crypton]


[Muudetud: 24-9-2007 Peeter1000]

Vaata kasutaja profiili Otsi kasutaja postitusi Saada privaatsõnum
Crypton

Avatar

Liitunud: 18.12.2005
Postitusi: 1604
[EEMAL]




postitati 27.4.2007 16:54 Tsiteeri


Nuh nüüd hakkame loovalt mõtlema :)

Et kala liiguks erinevates kohtades tuleb kalale anda punkt kuhu ta liigub. Muidu ju ei tea kala kuhu liikuda ja ta eksib ära. Kõige mugavam oleks kasutada punktina muutujaid, mis märgivad sihtkoha koordinaati.
Loome muutujad

xx=0
yy=0
change=true //see muutuja kontrollib, et koordinaate sätitakse ainult yhe korra, senikaua kuni kala jõuab sihtkohani.

Nüüd tuleks mõtlema hakata, kuidas asukoha koordinaati muutujatele määrata. Nagu aru saan toimub kalade liikumine teatud alal. Hea oleks kui programm suudab selle ise teha ja selle loomiseks on näiteks random() funktsioon.
Nii üritame nüüd midagi teha. Nii et luua sihtkoht on vaja seda otsida suvaliselt teatud alas:

kala objekti Step Event-i

//eeldame et kala ujumis ala on terve ekraani ulatuses!

if change=true{
xx=round(random(1+room_width)) //otsib x koordinaati suvaliselt üle ruumi (room_width) ja ümardab (round()) koordinaati, et ei tekiks koma arvu (pixlit ei saa ju poolitada :)) see pole muidugi väga tähtis.
yy=round(random(1+room_height)) //sama mis x-ga ainult nyyd y koordinaadiga
change=false //ei saa enam sihtkoha koordinaati määrata
}

change muutuja tegin sellepärast, et kui igas stepis muudetakse sihtkohta siis see muutuja kontrollib, et muutus toimuks ainult yhe korra, muutudes kohe peale koordinaatide sättimist false-ks.

Nii meil on olemas nyyd asukoha leidmine, kuid kala peab ka ju sinna liikuma. On funktsioon, millega saab panna objekti liikuma teatud punkti suunas. Aga et programm lolli ei lööks on vaja kontrollida kala lähedust punktile. Kui kala on sihtkoha lähedal muudetakse uuesti sihtkoha koordinaate.

Sama Step event edasi

if distance_to_point(xx,yy)<5{ //kui kala on punktile vähem kui 5 pixli kaugusel
change=true //saab jälle koordinaate muuta (Kävitatakse see kood, mille esimesena tegime
}else{ //muul juhul , kui kala on kaugemal kui 5 pixlit
move_towards_point(xx,yy,5) //liigutakse sihtkoha lähedale kiirusega 5
}

Nuh see on põhimõte, nii saab asja teha.
Crytpon

Maze I: CryptonRalli III: Crypton<br>
Vaata kasutaja profiili Külasta kasutaja kodulehte Otsi kasutaja postitusi Saada privaatsõnum
Peeter1000
Bännitud


Liitunud: 27.10.2008
Postitusi: 30
[EEMAL]




postitati 27.4.2007 17:14 Tsiteeri


Katsetasin seda väikeste kalade peal:
[Pilt]
Kalad ujusid sinna nurka ja jäid sinna..:(

[Muudetud: 27-4-2007 Peeter1000]


Vaata kasutaja profiili Otsi kasutaja postitusi Saada privaatsõnum
joke33
Level 11
Avatar

Liitunud: 5.11.2005
Postitusi: 874
[EEMAL]




postitati 4.5.2007 05:52 Tsiteeri


Tsitaat:
Tsitaat: Peeter1000
Katsetasin seda väikeste kalade peal:
[Pilt]
Kalad ujusid sinna nurka ja jäid sinna..:(

[Muudetud: 27-4-2007 Peeter1000]

parandasin lingi-parem vaadata :)

http://i126.photobucket.com/albums/p117/joke33/omgwtfbbq1.gif

Vaata kasutaja profiili Otsi kasutaja postitusi Saada privaatsõnum
Dzmaster
Level 2


Liitunud: 25.4.2006
Postitusi: 17
[EEMAL]




postitati 16.5.2007 20:04 Tsiteeri


Ma olen ise sellist mängu teinud. valmis sai, aga ei avaldanud kuna see ju maha rotitud:D

Vaata kasutaja profiili Külasta kasutaja kodulehte Otsi kasutaja postitusi Saada privaatsõnum

Hetkel loevad seda teemat:
Mitte ühtegi - 1 külaline

Mine lehekülje lõppu





Foorumi algbaas põhineb XMB mootoril, modifitseeritud Valter Pundi poolt
Kodulehekülg on tehtud Valter Pundi poolt vpundi ät gmail punkt komm