cbEnchanted - uudelleenkirjoitettu runtime
Re: cbEnchanted - uudelleenkirjoitettu runtime
Kaipa cbEnchantediin voisi tehdä erikoisfunktion, jolla laitettaisiin kaikki ei-fataalit virheet vain toimimaan samalla tavalla kuin olisi painettu "Continue"-nappia. Ohjelmoija voisi sitten itse tarkistaa eri funktioiden palautusarvot ja hoitaa mahdolliset virhetilanteet haluamallaan tavalla. Sitten jos ei olisi ongelmia korjattu niin ohjelma vain kaatuisi ilman minkäänlaista raporttia.
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: cbEnchanted - uudelleenkirjoitettu runtime
Itse asiassa tämänhän kaiketi voisi tehdä Errors-komennolla antamalla parametriksi 2 tai -1 tai joku eri kuin 0 tai 1 (jolle voisi sitten olla vaikka vakio).VesQ wrote:Kaipa cbEnchantediin voisi tehdä erikoisfunktion, jolla laitettaisiin kaikki ei-fataalit virheet vain toimimaan samalla tavalla kuin olisi painettu "Continue"-nappia. Ohjelmoija voisi sitten itse tarkistaa eri funktioiden palautusarvot ja hoitaa mahdolliset virhetilanteet haluamallaan tavalla. Sitten jos ei olisi ongelmia korjattu niin ohjelma vain kaatuisi ilman minkäänlaista raporttia.
- Konstaduck
- Advanced Member
- Posts: 267
- Joined: Sat Dec 17, 2011 3:09 pm
- Location: Nurmijärvi, Finland
- Contact:
Re: cbEnchanted - uudelleenkirjoitettu runtime
Code: Select all
Repeat
Centertext 20,20,"hmm...",2
text 10,100, mousex()
text 10,120, mousey()
drawscreen
forever
Re: cbEnchanted - uudelleenkirjoitettu runtime
Juu. Bugihan se siinä.Konstaduck wrote: Eikö tuon pitäisi keskittää täydellisesti? Ei siltä näytä, tutkatkaapa vaikka asia hiiren avulla.
Korjattu
Re: cbEnchanted - uudelleenkirjoitettu runtime
Mietin samaa mutta totesin että uusi erikoisfunktio olisi selvempi tapa. Vanhoihin komentoihin piilotettavat ominaisuudet kun ovat hieman vaikeammin dokumentoitavissa. En itse ole ihan 100% varma, pidänkö kameran pyörittelyyn ja zoomailuun käytetystä ratkaisusta - ehkä siihenkin sopisi paremmin erikoisfunktio.axu wrote:Itse asiassa tämänhän kaiketi voisi tehdä Errors-komennolla antamalla parametriksi 2 tai -1 tai joku eri kuin 0 tai 1 (jolle voisi sitten olla vaikka vakio).VesQ wrote:Kaipa cbEnchantediin voisi tehdä erikoisfunktion, jolla laitettaisiin kaikki ei-fataalit virheet vain toimimaan samalla tavalla kuin olisi painettu "Continue"-nappia. Ohjelmoija voisi sitten itse tarkistaa eri funktioiden palautusarvot ja hoitaa mahdolliset virhetilanteet haluamallaan tavalla. Sitten jos ei olisi ongelmia korjattu niin ohjelma vain kaatuisi ilman minkäänlaista raporttia.
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: cbEnchanted - uudelleenkirjoitettu runtime
Niin no ainakin toistaiseksi käytän customfunctions.cb:tä referenssinä jos ei muista kaikkea - sieltähän ei näitä lisättyjä ominaisuuksia vanhoihin komentoihin löydy. Eli kyllä ihan järkevä pointti. Mutta toisaalta tämä kustomfunktio olisi päällekkäinen Errors-komennon kanssa (mitä tapahtuu jos molempia kutsutaan?).VesQ wrote:Mietin samaa mutta totesin että uusi erikoisfunktio olisi selvempi tapa. Vanhoihin komentoihin piilotettavat ominaisuudet kun ovat hieman vaikeammin dokumentoitavissa. En itse ole ihan 100% varma, pidänkö kameran pyörittelyyn ja zoomailuun käytetystä ratkaisusta - ehkä siihenkin sopisi paremmin erikoisfunktio.
Ehkä kaveriksi voisi olla jokin funktio, jolla saisi tietoa viimeisimmästä virheestä. Tai sitten peräti "On Error Goto..." tyyppinen systeemi. Tällöin tietenkin ongelmaksi taas syntyisi miten se virheenkäsittelyaliohjelma/funktio ilmoitetaan cbe:lle
Re: cbEnchanted - uudelleenkirjoitettu runtime
Tuo olisi mahdollista toteuttaa, mikäli KW toteuttaa ne funktio-osoittimet niin kuin on jo vähän uhkaillutaxu wrote: Ehkä kaveriksi voisi olla jokin funktio, jolla saisi tietoa viimeisimmästä virheestä. Tai sitten peräti "On Error Goto..." tyyppinen systeemi. Tällöin tietenkin ongelmaksi taas syntyisi miten se virheenkäsittelyaliohjelma/funktio ilmoitetaan cbe:lle
Re: cbEnchanted - uudelleenkirjoitettu runtime
Argh. Tuo tuli ihan vahingossa kun olen säätänyt toisen branchin kanssa, jossa olin enemmänkin muutellut erikoisfunktioita. Kopioin sitten sieltä vain ne edelliset dokumentaatiot ja satuin sitten näköjään vahingossa muuttamaan tuon funktion nimen myöskin. Olisiko se hyvä idea, että seuraavassa paketissa funktion nimi olisi taas cbeDrawTintedScaledRotatedImageBox?axu wrote:Miksi cbeDrawTintedScaledRotatedImageBoxin nimi vaihdettiin cbeDrawTintedScaledRotatedImageRegioniksi? Yhtenäistämistä Allegron komennon kanssa? Olisi nyt edes hieman yksinkertaisemmaksi muutettu, tuota en ole kertaakaan käsin jaksanut kirjoittaa saatika sitten muistaa koko komennon nimeä Mielestäni jopa cbeDrawImage olisi riittävä. Tai sitten pitäisi saada intellisense cb-editoriin.
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
- Konstaduck
- Advanced Member
- Posts: 267
- Joined: Sat Dec 17, 2011 3:09 pm
- Location: Nurmijärvi, Finland
- Contact:
Re: cbEnchanted - uudelleenkirjoitettu runtime
Merkkijonotaulukkojahan ei voi venyttää poistamatta niiden sisältöä.
Eikö tämän voisi CbE:hen korjata, sillä lukeehan manuaalissa, että "merkkijonotaulukkoja ei voi toistaiseksi venyttää poistamatta niiden sisältöä"? Saisin tekstinkäsittelyohjelmani valmiiksi
Eikö tämän voisi CbE:hen korjata, sillä lukeehan manuaalissa, että "merkkijonotaulukkoja ei voi toistaiseksi venyttää poistamatta niiden sisältöä"? Saisin tekstinkäsittelyohjelmani valmiiksi
Re: cbEnchanted - uudelleenkirjoitettu runtime
KW vaikutti lähinnä ärsyyntyneeltä tuosta Luan ehdottamisesta, nytkö on haaste otettu vastaan? Vai tulisiko funktiopointterit muuten vaan cbe:n ominaisuudeksi? Näkisin funktiopointtereissa yhtenä ongelmana parametrien välittämisen, ellei niitä toteuteta sitten muistipalalla...Latexi95 wrote:Tuo olisi mahdollista toteuttaa, mikäli KW toteuttaa ne funktio-osoittimet niin kuin on jo vähän uhkaillut
Mielestäni olisi vieläkin hyvä idea vaihtaa se nimi johonkin yksinkertaisempaan, tämä on ainakin minulla eniten käytetty cbe-komento (yhdessä cbeColorin kanssa), ja en jaksa kopioida tuota rimpsua joka paikkaan. Toisaalta en minä suoraan tuota käytäkkään, vaan minulla on yksinkertaistettu funktio, josta on jätetty pois rajausmahdollisuus (joka on sitten nimeltään cbeDrawImage ).VesQ wrote:Argh. Tuo tuli ihan vahingossa kun olen säätänyt toisen branchin kanssa, jossa olin enemmänkin muutellut erikoisfunktioita. Kopioin sitten sieltä vain ne edelliset dokumentaatiot ja satuin sitten näköjään vahingossa muuttamaan tuon funktion nimen myöskin. Olisiko se hyvä idea, että seuraavassa paketissa funktion nimi olisi taas cbeDrawTintedScaledRotatedImageBox?
Tämä ongelma on helppo kiertää tallentamalla ne merkkijonot väliaikaisesti toiseen taulukkoon. Toisaalta tällainen parannus voisi olla ihan kiva.Konstaduck wrote:Merkkijonotaulukkojahan ei voi venyttää poistamatta niiden sisältöä.
-
- Tech Developer
- Posts: 545
- Joined: Sun Aug 26, 2007 2:43 pm
- Location: Liminka
Re: cbEnchanted - uudelleenkirjoitettu runtime
En minä siitä ärsyyntynyt, mutta veikkaan että ketään kehittäjistä ei kiinnosta pultata luaa toimintaan. Jonkinlaiset funktio-osoittimet saatan koodata lähipäivinä.axu wrote:KW vaikutti lähinnä ärsyyntyneeltä tuosta Luan ehdottamisesta, nytkö on haaste otettu vastaan? Vai tulisiko funktiopointterit muuten vaan cbe:n ominaisuudeksi? Näkisin funktiopointtereissa yhtenä ongelmana parametrien välittämisen, ellei niitä toteuteta sitten muistipalalla...Latexi95 wrote:Tuo olisi mahdollista toteuttaa, mikäli KW toteuttaa ne funktio-osoittimet niin kuin on jo vähän uhkaillut
Parametrien välittämiseen ajattelin toteuttaa jonkinlaiset push- ja pop-funktiot, joilla pääsisi käsiksi CBE:n sisäiseen pinoon. Tai sitten jotain runtimessa tapahtuvaa esiparsintaa, joka hoitaisi homman elegantisti.
CoolBasic henkilökuntaa
Kehittäjä
cbFUN Kello
cbSDL
Whale.dy.fi
<@cce> miltäs tuntuu olla suomen paras
Kehittäjä
cbFUN Kello
cbSDL
Whale.dy.fi
<@cce> miltäs tuntuu olla suomen paras
Re: cbEnchanted - uudelleenkirjoitettu runtime
Hmm, funktion nimi tosiaan voisi olla cbeDrawTintedImage() vaikkapa. Monille parametreista voisi antaa jotkut oletusarvot, jolloin kuvaa ei skaalattaisi/leikeltäisi. Parametrien järjestystä pitäisi silloin kyllä muuttaa. Miltäs tällainen ehdotus näyttäisi?axu wrote:Mielestäni olisi vieläkin hyvä idea vaihtaa se nimi johonkin yksinkertaisempaan, tämä on ainakin minulla eniten käytetty cbe-komento (yhdessä cbeColorin kanssa), ja en jaksa kopioida tuota rimpsua joka paikkaan. Toisaalta en minä suoraan tuota käytäkkään, vaan minulla on yksinkertaistettu funktio, josta on jätetty pois rajausmahdollisuus (joka on sitten nimeltään cbeDrawImage ).VesQ wrote:Argh. Tuo tuli ihan vahingossa kun olen säätänyt toisen branchin kanssa, jossa olin enemmänkin muutellut erikoisfunktioita. Kopioin sitten sieltä vain ne edelliset dokumentaatiot ja satuin sitten näköjään vahingossa muuttamaan tuon funktion nimen myöskin. Olisiko se hyvä idea, että seuraavassa paketissa funktion nimi olisi taas cbeDrawTintedScaledRotatedImageBox?
Code: Select all
// ----------------------------------------------------------------------------
// cbeDrawTintedImage()
// ---
// Draws a part of an image, tinted with the current color, rotated and scaled.
// Parameters:
// * img ................. Image to draw
// * centerX, centerY .... Coordinates to draw to. Image region is scaled and
// rotated around this point.
// * angle ............... Rotation angle in degrees
// * scaleX, scaleY ...... How much is the image region scaled when drawn.
// 1 means no scaling.
// * sX, sY .............. Top left coordinates of the image region to draw
// * sW, sH .............. Width and height of the image region to draw.
// NOTE: If these are both 0, no cropping will be done
// and the whole image will be drawn.
// ----------------------------------------------------------------------------
Function cbeDrawTintedImage(img, centerX#, centerY#, angle# = 0.0, scaleX# = 1.0, scaleY# = 1.0, sX# = 0.0, sY# = 0.0, sW# = 0.0, sH# = 0.0)
Latexi95 vissiin tätä säätää jossain välissä. Ominaisuus on siis kyllä jossain vaiheessa tulossa . Kts. issue #125axu wrote:Tämä ongelma on helppo kiertää tallentamalla ne merkkijonot väliaikaisesti toiseen taulukkoon. Toisaalta tällainen parannus voisi olla ihan kiva.Konstaduck wrote:Merkkijonotaulukkojahan ei voi venyttää poistamatta niiden sisältöä.
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: cbEnchanted - uudelleenkirjoitettu runtime
Ihan hyvä idea, itsekin mietin samaa ongelmaa, siis sitä pitäisikö se Tinted olla nimessä vai ei. Kahdella erillisellä funktiolla tuo nimeäminen käy pätevämmin (pelkkä cbeDrawTintedImage kuulostaa kuin sillä ei olisi mitään ekstraominaisuuksia DrawImageen verrattuna kuin värjääminen. cbeDrawImage taas kertoo suoraan, että tämä lisää jotain tavalliseen DrawImageen ja cbeDrawTintedImage olisi cbeDrawImagen laajennos).VesQ wrote:Hmm, funktion nimi tosiaan voisi olla cbeDrawTintedImage() vaikkapa. Monille parametreista voisi antaa jotkut oletusarvot, jolloin kuvaa ei skaalattaisi/leikeltäisi. Parametrien järjestystä pitäisi silloin kyllä muuttaa. Miltäs tällainen ehdotus näyttäisi?Vastaavasti toteutettaisiin toinen funktio, cbeDrawImage(), joka ei värjäisi kuvaa nykyisellä piirtovärillä. Mielestäni sen värjäyksen pitäisi näkyä jo funktion nimessä, koska sen antaminen boolean-arvona funktiolle olisi jotenkin epäkäytännöllistä ja ilman sitä "Tinted" kertomista, voisi ohjelmoijille tulla yllättäviä tilanteita eteen.Code: Select all
// cbeDrawTintedImage()
Noista oletusparametreista sen verran, että jos Y-skaalausta ei ilmoiteta (tai 0), niin sen voisi asettaa X:n mukaiseksi, eli mittasuhteet säilyttäväksi.
Re: cbEnchanted - uudelleenkirjoitettu runtime
Mutta sitten ei saisi tehtyä sellaista hauskaa efektiä että kuva skaalautuisi minimiin ja häviäisi näkyvistä y-suunnassa. Mielestäni on parempi että molemmat arvot pitää antaa jos meinaa skaalata.axu wrote:Noista oletusparametreista sen verran, että jos Y-skaalausta ei ilmoiteta (tai 0), niin sen voisi asettaa X:n mukaiseksi, eli mittasuhteet säilyttäväksi.
Mitä tarkoitat? Onko se hyvä idea vai eikö?axu wrote:Ihan hyvä idea, itsekin mietin samaa ongelmaa, siis sitä pitäisikö se Tinted olla nimessä vai ei. Kahdella erillisellä funktiolla tuo nimeäminen käy pätevämmin (pelkkä cbeDrawTintedImage kuulostaa kuin sillä ei olisi mitään ekstraominaisuuksia DrawImageen verrattuna kuin värjääminen. cbeDrawImage taas kertoo suoraan, että tämä lisää jotain tavalliseen DrawImageen ja cbeDrawTintedImage olisi cbeDrawImagen laajennos).
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: cbEnchanted - uudelleenkirjoitettu runtime
Ah ihan hyvä huomio tuon y-skaalauksen suhteen.VesQ wrote:Mutta sitten ei saisi tehtyä sellaista hauskaa efektiä että kuva skaalautuisi minimiin ja häviäisi näkyvistä y-suunnassa. Mielestäni on parempi että molemmat arvot pitää antaa jos meinaa skaalata.axu wrote:Noista oletusparametreista sen verran, että jos Y-skaalausta ei ilmoiteta (tai 0), niin sen voisi asettaa X:n mukaiseksi, eli mittasuhteet säilyttäväksi.
Mitä tarkoitat? Onko se hyvä idea vai eikö?axu wrote:Ihan hyvä idea, itsekin mietin samaa ongelmaa, siis sitä pitäisikö se Tinted olla nimessä vai ei. Kahdella erillisellä funktiolla tuo nimeäminen käy pätevämmin (pelkkä cbeDrawTintedImage kuulostaa kuin sillä ei olisi mitään ekstraominaisuuksia DrawImageen verrattuna kuin värjääminen. cbeDrawImage taas kertoo suoraan, että tämä lisää jotain tavalliseen DrawImageen ja cbeDrawTintedImage olisi cbeDrawImagen laajennos).
Joo olisi pitänyt tuohon sekavaan selitykseen laittaa vain lyhyesti: hyvä idea (minun pitää aina selittää ajatuksiani sulkujen sisällä )
- Konstaduck
- Advanced Member
- Posts: 267
- Joined: Sat Dec 17, 2011 3:09 pm
- Location: Nurmijärvi, Finland
- Contact:
Re: cbEnchanted - uudelleenkirjoitettu runtime
Tällä koodilla sain kyseisen VC:n errorin:
Code: Select all
Dim Taulukko1 (1) As String
Dim Taulukko2 (1) As String
Kuinkamontasolua = 1
Taulukko1(kuinkamontasolua) = "Esimerkkiteksti1"
Repeat
If KeyHit(2)
Taulukko2(kuinkamontasolua) = Taulukko1(kuinkamontasolua)
ReDim Taulukko1(kuinkamontasolua + 1)
Taulukko1(kuinkamontasolua) = Taulukko2(kuinkamontasolua)
ReDim Taulukko2(kuinkamontasolua + 1)
Kuinkamontasolua + 1
EndIf
Text 0,0, "Soluja yhteensä "+kuinkamontasolua
DrawScreen
Forever
Re: cbEnchanted - uudelleenkirjoitettu runtime
Tämä taisi korjaantua eilisen Redimin säädön yhteydessä. Ainakaan minulla ei kaadu enää tällä korjatulla versiolla.Konstaduck wrote:Tällä koodilla sain kyseisen VC:n errorin:
Code: Select all
Dim Taulukko1 (1) As String Dim Taulukko2 (1) As String Kuinkamontasolua = 1 Taulukko1(kuinkamontasolua) = "Esimerkkiteksti1" Repeat If KeyHit(2) Taulukko2(kuinkamontasolua) = Taulukko1(kuinkamontasolua) ReDim Taulukko1(kuinkamontasolua + 1) Taulukko1(kuinkamontasolua) = Taulukko2(kuinkamontasolua) ReDim Taulukko2(kuinkamontasolua + 1) Kuinkamontasolua + 1 EndIf Text 0,0, "Soluja yhteensä "+kuinkamontasolua DrawScreen Forever
- Konstaduck
- Advanced Member
- Posts: 267
- Joined: Sat Dec 17, 2011 3:09 pm
- Location: Nurmijärvi, Finland
- Contact:
Re: cbEnchanted - uudelleenkirjoitettu runtime
Hyvä hyvä. Milloin olisi tarkoitus seuraava versio julkaista?
Re: cbEnchanted - uudelleenkirjoitettu runtime
Menee ainakin ensi launtaihin asti, luultavasti myöhemmäksi. Olen lomalla Ranskassa tällä hetkellä. Julkaisu tulee siis aikanaan kylläKonstaduck wrote:Hyvä hyvä. Milloin olisi tarkoitus seuraava versio julkaista?
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
-
- Tech Developer
- Posts: 545
- Joined: Sun Aug 26, 2007 2:43 pm
- Location: Liminka
Re: cbEnchanted - uudelleenkirjoitettu runtime
Seuraava julkaisu tuleekin sisältämään yllättävän juoni käänteen.
CoolBasic henkilökuntaa
Kehittäjä
cbFUN Kello
cbSDL
Whale.dy.fi
<@cce> miltäs tuntuu olla suomen paras
Kehittäjä
cbFUN Kello
cbSDL
Whale.dy.fi
<@cce> miltäs tuntuu olla suomen paras