Tallennat muuttujaan mihin suuntaan ukko on menossa, ja muutat sitä aina kun painetaan nuolinäppäintä (esim. Suunta=1 on ylös, Suunta=2 vasemmalle). Silloin kun pitää toistaa lyömisanimaatio, tarkistat mihin suuntaan katsotaan ja toistat oikean animaation sen mukaan.Ihminen wrote:Minun "pelissäni" hahmo voi liikkua neljään eri suuntaan, ja olen nyt tehnyt neljä erilaista animaatiota, jossa hahmo lyö. Ja nyt olisi tarkoituksena että kun painaa nappia A se näyttäisi hahmon "lyöntianimaation", mutta kuinka saisin sen tekemään niin että, kun hahmo on esim. kääntyneenä vasemmalle se näyttää animaation jossa hahmo lyö vasemmalle ja jos hahmo on kääntyneenä oikealle näyttää että hahmo lyö oikealle, jne.
(Mitään koodia tästä hahmon "lyömisestä" en ole vielä kirjoittanut)
Toivottavasti tästä sai mitään selvää
Tyhmät kysymykset (I/2011)
Re: Tyhmät kysymykset (I/2011)
Re: Tyhmät kysymykset (I/2011)
CB ei osanne optimoida laskutoimituksia joten muuta mielellään r/2:t yms muuttujiksi, saattaisi nopeuttaa.Sly_Jack0 wrote:Viimeinen parametri on viivan paksuus.Code: Select all
Function Line2(x,y,x2,y2,r=2) d = ((x2-x)^2 + (y2-y)^2)^0.5 For i = 1 To d Circle x - r / 2 + (x2 - x) * i / d, y - r / 2 - r/d / 2 + (y2 - y)*i/d,r,1 Next i EndFunction
Re: Tyhmät kysymykset (I/2011)
Millä saisin tehtyä aseiden äänet peliini? Tarkoitan siis että onko vaikka joku ohjelma millä saisin ne tehtyä?
...Kun haluaisin tehdä pelin kokonaan itse, enkä haluaisi latailla mitään "valmiitä ääniä".
...Kun haluaisin tehdä pelin kokonaan itse, enkä haluaisi latailla mitään "valmiitä ääniä".
Re: Tyhmät kysymykset (I/2011)
Audacity, mikrofoni (esimerkiksi webkamera riittää ihan hyvin, jos tietokoneessa ei ole integroituna mikkiä) ja paljon erilaisia plugineita (mm. CamelCrusheria suositellaan, se on hyvä käytännössä kaikkiin tarkoituksiin). Jos et satu omistamaan asetta, äänitä vaikka käsien yhteen lyönti ja muuttele sitä kunnes se kuulostaa hyvältä.Ihminen wrote:Millä saisin tehtyä aseiden äänet peliini? Tarkoitan siis että onko vaikka joku ohjelma millä saisin ne tehtyä?
...Kun haluaisin tehdä pelin kokonaan itse, enkä haluaisi latailla mitään "valmiitä ääniä".
EDIT: Tuli vaihteeksi itsellenikin ongelma lisätessäni näkymättömiä vihollisia Ultimate Stickfigure Gameen:
Code: Select all
For irl.rl = Each rl
For istick.sticks = Each sticks
If ObjectsOverlap (istick\obj, irl\obj) Then SetWindow "toimii" :nextlvl = 0: Goto alusta_kenttä 'alustetaan kenttä ilman että siirrytään seuraavaan leveliin
If irl\invisibility = 1 Then
If Distance2 (istick\obj, irl\obj) > 48 Then PaintObject irl\obj, -invighost_master Else PaintObject irl\obj, rl_master
EndIf
Next istick
TranslateObject irl\obj, irl\suunta, 0
If GetMap (2, ObjectX (irl\obj)+16, ObjectY(irl\obj)) Then irl\suunta = -1.8
If GetMap (2, ObjectX (irl\obj)-16, ObjectY(irl\obj)) Then irl\suunta = 1.8
Next irl
Ongelmana on se, että kun tikku-ukolla osuu näkymättömään kummitukseen, tulee mav. Koska silloin, kun ei ole kosketuksessa näkymättömän kummituksen kanssa, ei tule mavia, ja koska mavin tullessa ikkunan otsikko ei ole "toimii", mavin syy täytyy siis minun käsitykseni mukaan olla ObjectsOverlap, joka palauttaa Truen. Jostain syystä mavia ei tule pelkästä ObjectsOverlapin tarkastuksesta, eikä se tule myöskään Distance2:n tarkistuksesta tai siitä, että Distance2 palauttaa truen. Mav ei tule myöskään silloin, jos ObjectsOverlap palauttaa truen, kun osutaan kummitukseen, joka ei ole näkymätön.
Mistäköhän tämä voisi johtua, ja miten sen voi korjata?
Re: Tyhmät kysymykset (I/2011)
Miten saisin tehtyä jääkiekkopeliin kiekon kimpoamisen laidasta? Kiitos jo etukäteen
Re: Tyhmät kysymykset (I/2011)
Riippuu paljon siitä miten olet toteuttanut kiekon liikuttamisen. Helpointa on käyttää kahta vektoria kiekon nopeuksille (x ja y) ja kun kiekko osuu laitaan muutat vaan oikean vektorin vastaluvuksi, esim. jos kiekko osuu oikeaan tai vasempaan reunaan, muutetaan X-vektoria. Pyöristetyt kentän kulmat jos sellaiset välttämättä haluaa voi ollakin vähän monimutkaisempi enkä nyt jaksa keksiä mitään siihen.
Re: Tyhmät kysymykset (I/2011)
Kun minun pelissäni hahmo liikkuu, sen ei kuulu "kääntyä", eli siis minulla on neljä erilaista animaatiota hahmon liikkumisesta ja hahmo liikkuu siis neljään eri suuntaan.
Kun ammutaan aseella, kuinka saisin toteutettua sen niin että luoti liikkuu ylöspäin, jos näytetään esim. kuva 1, ja jos kuva 2 niin luoti liikkuu oikealle?
Kun ammutaan aseella, kuinka saisin toteutettua sen niin että luoti liikkuu ylöspäin, jos näytetään esim. kuva 1, ja jos kuva 2 niin luoti liikkuu oikealle?
Re: Tyhmät kysymykset (I/2011)
Suosittelen, että kuitenkin käytät vain yhtä objektia, jonka pyörityslaatu on 4, ja käännät sitä aina 90 astetta. Yksinkertaisempaa ja muutenkin.Ihminen wrote:Kun minun pelissäni hahmo liikkuu, sen ei kuulu "kääntyä", eli siis minulla on neljä erilaista animaatiota hahmon liikkumisesta ja hahmo liikkuu siis neljään eri suuntaan.
Kun ammutaan aseella, kuinka saisin toteutettua sen niin että luoti liikkuu ylöspäin, jos näytetään esim. kuva 1, ja jos kuva 2 niin luoti liikkuu oikealle?
Joko:
Code: Select all
ukko = LoadObject ("Media\cow.bmp",4)
Repeat
If KeyHit(cbkeyright) Then TurnObject ukko, -90
If KeyHit(cbkeyleft) Then TurnObject ukko, 90'en muista menikö nyt oikein perin koska en ole käyttänyt TurnObjectia pitkiin aikoihin
MoveObject ukko, Int(KeyDown(cbkeyup)*2)-Int(KeyDown(cbkeydown)*2)
DrawScreen
Forever
Code: Select all
ukko = LoadObject ("Media\cow.bmp",4)
Repeat
If KeyDown (cbkeyright) Then RotateObject ukko, 0: MoveObject ukko, 2
If KeyDown (cbkeyleft) Then RotateObject ukko, 180: MoveObject ukko, 2
If KeyDown (cbkeyup) Then RotateObject ukko, 90: MoveObject ukko, 2
If KeyDown (cbkeydown) Then RotateObject ukko, 270: MoveObject ukko, 2
DrawScreen
Forever
Re: Tyhmät kysymykset (I/2011)
Aika ironista, että juuri tässä omasta esimerkistäsi näkyy miksi ei. Jos perspektiivi ei olekaan tasan ylhäältäpäin kuvattu (näin ainakin itse ymmärsin), näyttää aika absurdilta, että ukko kääntyy ylösalaisin kun kävelee ylöspäin. Niin no, eihän Ihminen oikeastaan kertonut miten asia on, joten sen voi kyllä ymmärtää näinkin.Chaosworm wrote:Suosittelen, että kuitenkin käytät vain yhtä objektia, jonka pyörityslaatu on 4, ja käännät sitä aina 90 astetta. Yksinkertaisempaa ja muutenkin.Ihminen wrote:Kun minun pelissäni hahmo liikkuu, sen ei kuulu "kääntyä", eli siis minulla on neljä erilaista animaatiota hahmon liikkumisesta ja hahmo liikkuu siis neljään eri suuntaan.
Kun ammutaan aseella, kuinka saisin toteutettua sen niin että luoti liikkuu ylöspäin, jos näytetään esim. kuva 1, ja jos kuva 2 niin luoti liikkuu oikealle?
Re: Tyhmät kysymykset (I/2011)
Miten saisin tehtyä rallipeliin maalin ja miten saisin tehtyä sen että kun menee radalta/tieltä pois niin auton vauhti hidastuu.
Re: Tyhmät kysymykset (I/2011)
Maali: tee näkymätön objekti ja sitten tarkistat ObjectsOverlapilla ollaanko maalin kohdalla.
Hidastus radan ulkopuolella: käytä erillistä mustavalkoista kuvaa radan lisäksi (olettaen että olet toteuttanut radat käyttäen kuvia) jossa valkoinen on rata ja musta on kaikki muu alue. Tarkista sitten onko pelaajan auto mustalla alueella (PickImageColor/PickImageColor2 funktiolla saat värin) ja jos niin, hidasta auton vauhtia.
Hidastus radan ulkopuolella: käytä erillistä mustavalkoista kuvaa radan lisäksi (olettaen että olet toteuttanut radat käyttäen kuvia) jossa valkoinen on rata ja musta on kaikki muu alue. Tarkista sitten onko pelaajan auto mustalla alueella (PickImageColor/PickImageColor2 funktiolla saat värin) ja jos niin, hidasta auton vauhtia.
Last edited by temu92 on Sun Jul 24, 2011 1:32 pm, edited 1 time in total.
Re: Tyhmät kysymykset (I/2011)
axu wrote:Aika ironista, että juuri tässä omasta esimerkistäsi näkyy miksi ei. Jos perspektiivi ei olekaan tasan ylhäältäpäin kuvattu (näin ainakin itse ymmärsin), näyttää aika absurdilta, että ukko kääntyy ylösalaisin kun kävelee ylöspäin. Niin no, eihän Ihminen oikeastaan kertonut miten asia on, joten sen voi kyllä ymmärtää näinkin.Chaosworm wrote:Suosittelen, että kuitenkin käytät vain yhtä objektia, jonka pyörityslaatu on 4, ja käännät sitä aina 90 astetta. Yksinkertaisempaa ja muutenkin.Ihminen wrote:Kun minun pelissäni hahmo liikkuu, sen ei kuulu "kääntyä", eli siis minulla on neljä erilaista animaatiota hahmon liikkumisesta ja hahmo liikkuu siis neljään eri suuntaan.
Kun ammutaan aseella, kuinka saisin toteutettua sen niin että luoti liikkuu ylöspäin, jos näytetään esim. kuva 1, ja jos kuva 2 niin luoti liikkuu oikealle?
Siis tarkoitin sen niin että, minun pelissäni on siis tehty animaatiot, joissa hahmo liikkuu oikealle, vasemmalle, eteen (alas) ja taakse (ylös).
Googlatkaa BoxHead niin siinä näätte miten tuon liikkumisen peliini tarkoitin...
Re: Tyhmät kysymykset (I/2011)
Jos kuvakulma on sama kuin BoxHeadissa (eli yläviistosta kuvattu), niin sitten voit tehdä erillisen muuttujan, joka kertoo, mihin suuntaan hahmo liikkuu ja kääntää ammusta sen mukaan.Ihminen wrote:Siis tarkoitin sen niin että, minun pelissäni on siis tehty animaatiot, joissa hahmo liikkuu oikealle, vasemmalle, eteen (alas) ja taakse (ylös).
Googlatkaa BoxHead niin siinä näätte miten tuon liikkumisen peliini tarkoitin...
Jos taas kuvakulma on suoraan ylhäältä päin kuvattu, niin kannattaa silti tehdä ennemmin yhdellä animaatiolla, jota pyöritetään neljään eri suuntaan.
Ja edelleen toivoisin vastausta tähän ongelmaani. Minun mielestäni siinä pitäisi olla kerrottu kaikki asiat, jotka mahdollisesti voivat siihen vaikuttaa, mutta voin kyllä laittaa koko koodinkin jakoon jos kenellekään ei tuon perusteella selviä ongelman syy.
Re: Tyhmät kysymykset (I/2011)
Mikä on nopein tapa sammmuttaa (Win7-)tietokone ohjelmallisesti (välitön virta-pois)?
Re: Tyhmät kysymykset (I/2011)
Enpä niin tiedä, mutta shutdown -f toiminee. Ei ole kyllä niinkään "välitön virta-pois", mutta pakottaa ohjelmat sammumaan ilman varoitusta. Eipä ole ollut tarvetta saada windows sammumaan nopeasti. Sehän on Windowsin lakeja vastaan, että se käynnistyisi tai sammuisi nopeasti.DJ-Filbe wrote:Mikä on nopein tapa sammmuttaa (Win7-)tietokone ohjelmallisesti (välitön virta-pois)?
Ja eikös tämä ole CB-ongelmille? mm..
Re: Tyhmät kysymykset (I/2011)
Teet ohjelman joka aiheuttaa BSOD:n. No ei se virtaa laita pois, mutta ainoa nopea tapa sammuttaa windows Tai sitten värkkäät jonkinlaisen fyysisen piirin, jonka kautta virta kulkee koneelle. Tämä piiri yhdistetään USB tai vaikka sarjaporttiin, ja sitä käskyttäessä katkaistaan virta pariksi sekunniksi.DJ-Filbe wrote:Mikä on nopein tapa sammmuttaa (Win7-)tietokone ohjelmallisesti (välitön virta-pois)?
Re: Tyhmät kysymykset (I/2011)
Pikaisella googletuksella löyty joku tommonen http://www.avinashtech.com/microsoft/ho ... windows-7/ En hirveen tarkkaan jäänyt selaileen, mut vissiin se mitä haet.. ja jos tapahtuu jotain odottamatonta, niin minä en sitten neuvonut mitäänDJ-Filbe wrote:Mikä on nopein tapa sammmuttaa (Win7-)tietokone ohjelmallisesti (välitön virta-pois)?
Re: Tyhmät kysymykset (I/2011)
Jos ongelma johtuu juuri tuosta ObjectsOverlapista ja siitä että sitä käytetään, kun objekti on näkymätön, niin korjaa tuo jännä MAV sillä että ennen noita ObjecstOverlap tarkistuksia teet tarkistuksen, onko objekti näkymätön vai ei.Chaosworm wrote:Tuli vaihteeksi itsellenikin ongelma lisätessäni näkymättömiä vihollisia Ultimate Stickfigure Gameen:rl on kokoelma oikealle ja vasemmalle liikkuvia kummituksia, ja sticks on kokoelma tikku-ukkoja. Kummassakin on kenttä obj, joka sisältää objektimuuttujan. invighost_master on 19*25 kokoinen kuva, joka on tyhjä, ja rl_master on 19*25 kokoinen objekti, jossa on grafiikkaa. Kokoelmassa rl on kenttä invisibility, joka tarkistaa, onko nimenomainen kummitus näkymätön vai ei. Näkymättömät kummitukset näkyvät niin pitkään kuin on tarpeeksi lähellä niitä.Code: Select all
...koodi...
Ongelmana on se, että kun tikku-ukolla osuu näkymättömään kummitukseen, tulee mav. Koska silloin, kun ei ole kosketuksessa näkymättömän kummituksen kanssa, ei tule mavia, ja koska mavin tullessa ikkunan otsikko ei ole "toimii", mavin syy täytyy siis minun käsitykseni mukaan olla ObjectsOverlap, joka palauttaa Truen. Jostain syystä mavia ei tule pelkästä ObjectsOverlapin tarkastuksesta, eikä se tule myöskään Distance2:n tarkistuksesta tai siitä, että Distance2 palauttaa truen. Mav ei tule myöskään silloin, jos ObjectsOverlap palauttaa truen, kun osutaan kummitukseen, joka ei ole näkymätön.
Mistäköhän tämä voisi johtua, ja miten sen voi korjata?
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 (I/2011)
"Näkymättömät kummitukset" tarkoittavat siis kummituksia, jotka ovat näkymättömiä niin kauan kun yksikään tikku-ukko ei ole lähellä niitä. Kun etäisyys tikku-ukon ja näkymättömän kummituksen välillä on tarpeeksi pieni, näkymättömän kummituksen kaikki ominaisuudet ovat täysin samanlaiset kuin tavallisenkin kummituksen (toisin sanoen se näkyy ja on saman kokoinen), paitsi että lisäksi tyypin jäsenen toisessa kentässä on nollan sijaan ykkönen.VesQ wrote:Jos ongelma johtuu juuri tuosta ObjectsOverlapista ja siitä että sitä käytetään, kun objekti on näkymätön, niin korjaa tuo jännä MAV sillä että ennen noita ObjecstOverlap tarkistuksia teet tarkistuksen, onko objekti näkymätön vai ei.Chaosworm wrote: Mistäköhän tämä voisi johtua, ja miten sen voi korjata?
Kun kerran tuo Distance2 toimii ihan hyvin rivillä " If Distance2 (istick\obj, irl\obj) > 48 Then PaintObject irl\obj, -invighost_master Else PaintObject irl\obj, rl_master", ajattelin kokeilla korvata ObjectsOverlapin Distance2:lla. Sekään ei toiminut tuossa kohdassa, missä ObjectsOverlapkaan ei toimi.
Re: Tyhmät kysymykset (I/2011)
Oletko koittanut siirtää tuon "If irl\invisibility = 1 Then" ehtolauseen ennen ObjectsOverlappia? Ja oletko tarkistanut SetWindowilla että ennen tuota For-looppia ei peli kaadu? Tuo MAV alkaa vaikuttamaan vähitellen melko mysteeriseltä minulle... eikä asiaa auta yhtään se että käytät Goto-komentoa ja kaksoispistettä, jotenkin sekoittaa koodia mielestäni. Enkä edes ole varma siitä ettei tuo Goto sekoita jollain tavalla CB:n For...Each-looppia.Chaosworm wrote:"Näkymättömät kummitukset" tarkoittavat siis kummituksia, jotka ovat näkymättömiä niin kauan kun yksikään tikku-ukko ei ole lähellä niitä. Kun etäisyys tikku-ukon ja näkymättömän kummituksen välillä on tarpeeksi pieni, näkymättömän kummituksen kaikki ominaisuudet ovat täysin samanlaiset kuin tavallisenkin kummituksen (toisin sanoen se näkyy ja on saman kokoinen), paitsi että lisäksi tyypin jäsenen toisessa kentässä on nollan sijaan ykkönen.VesQ wrote:Jos ongelma johtuu juuri tuosta ObjectsOverlapista ja siitä että sitä käytetään, kun objekti on näkymätön, niin korjaa tuo jännä MAV sillä että ennen noita ObjecstOverlap tarkistuksia teet tarkistuksen, onko objekti näkymätön vai ei.Chaosworm wrote: Mistäköhän tämä voisi johtua, ja miten sen voi korjata?
Kun kerran tuo Distance2 toimii ihan hyvin rivillä " If Distance2 (istick\obj, irl\obj) > 48 Then PaintObject irl\obj, -invighost_master Else PaintObject irl\obj, rl_master", ajattelin kokeilla korvata ObjectsOverlapin Distance2:lla. Sekään ei toiminut tuossa kohdassa, missä ObjectsOverlapkaan ei toimi.
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