Tiedän että näistä jutuista on juteltu joku 1000 kertaa mutta lueskelin niitä enkä saanut ihan kaikkea selville mitä tarvitsen joten tässä kysyn hieman kaikkea pelin tekoon liittyvää:
olen siis kehittelemässä tässä jonkinlaista roolipeliä (ei millään directX:llä tai millään), olen suunnitellut jo juonta ja hahmoja ja muuta vastaavaa. Pelistä tulee melko yksinkertainen osittain näin alkuun. En ole liikaa näitä juttuja tollekaan tehnyt joten kaikki vinkit ovat tervetulleita. ... joo, elikkä asiaan:
1. Peleissä on siis yleensäkkin taustamusiikkeja ja ääniefektejä, niin millä ohjelmalla niitä olisi hyvä tehdä? (vaikka midi muotoisia koska ne eivät vie hirveästi tilaa)
2. Ja peleissähän kannattaa ja yleensä pitääkin tallentaa asioita tiedostoihoin niin kannattaako ne tallentaa erillisiin tiedostoihin vai sisällyttää projektiin? ja olisiko se hyvä tallentaa johonkin omakeksimä tiedostoihin (esim. ukko.hah tai jotain vastaavaa) .. ja millä komennolla niitä sai tehtyä (päässyt unohtumaan):
3. Ja pelin kartat, kannattaako ne piirtää kokonaisuudessaan jo valmiiksi vai tehdä niitä maastopaloja ja sijoittaa ne formille jonkin aliohjelman avulla? (ja jos kannattaa tehdä paloista niin miten olisi järkevintä tallentaa ne tiedostoon josta aliohjelman on helppo lukea ja sijoittaa oikeat palikat oikeaan paikkaan?)
4. Ja siis kun esim. pelaajan hahmo kohtaa jonkun muun hahmon ja alkaa keskustelu, niin aijon tehdä samanlaisen systeemin kuten alkupään final fantasyissä ja muissakin on, eli esim. kuvan alareunaan ilmestyy keskustelupalkki johon tulee puhujan kasvoprofiili ja viereen teksti. .. niin olisiko hyvä tehdä se niin että piirtää vb:llä täytetyn laatiokon alareunaan ja siihen teksti ja muut sälät päälle?
5. ja eikö nämä kaikki tapahtumat kuten maaston piirto, puhesysteemi jms. kannata kirjoittaa moduuliin?
6. ja kun ajattelin että pelini alkaa niin että aluksi on musta kuva, sitten se muuttuu pikkuhiljaa pois siitä ja tilalle tulisi pikkuhiljaa uusi kuva (kartta) ,... niin miten sen saisi toteutettua? :(
7.
Sub PiirraKuva(tunnus As Integer, x As Integer, y As Integer)
.... niin mitä nuo määtittelyt tuossa sulkeissa takroittavat? .. siis miksi ne on määritelty juuri tuossa ja mitä hyötyä siitä on?
8. https://www.ohjelmointiputka.net/oppaat/opas.php?tunnus=vbp_2 <- tuossa kun on tuo kohta:
'Mid-funktio palauttaa merkkijonon yksittäisen merkin; 'merkin paikka merkit-muuttujassa, joka taas saadaan 'selville Instr-funktiolla, kertoo suoraan palikan 'sijainnin kuvatiedostossa ja näin ollen sen tunnuksen Taso(j, i) = InStr(merkit, Mid(rivi, j + 1, 1)) - 1
niin tuossa kun on tuo: sijainnin kuvatiedostossa ja näin ollen sen tunnuksen .... mitä se niinkus meinaa? ja tässäkin tapahtumassa:
Sub PiirraTaso() 'silmukoiden käyttämät muuttujat Dim i As Integer, j As Integer 'piirretään pelitason reunoilla olevat kiinteät seinäpalikat For i = 0 To 11 'yläseinä PiirraKuva SEINA, i, 0 'alaseinä PiirraKuva SEINA, i, 11 'vasen seinä PiirraKuva SEINA, 0, i 'oikea seinä PiirraKuva SEINA, 11, i Next 'piirretään muut palikat For i = 0 To 9 For j = 0 To 9 'seinien vuoksi piirtokohtaan lisätään 1 PiirraKuva Taso(i, j), i + 1, j + 1 Next Next End Sub
niin miten se sitten ton "piirretään muut palikat" jälkeen osaa piirtää just oikean palikan oikeaan paikkaan? (ei tyhmä pää voi ymmärtää:)
... joo, tässä nyt vähäks aikaa ^^ ... oisin TOSi kiitollinen jos joku osaisi vastata noihoin! (vaikka osa kysymyksistä saattaa kuullostaa oudoilta tms)
.. ja niinkuin sanottu, kaikki muutkin vinkit ovat tervetulleita! :)
CoDeR kirjoitti:
ja olisiko se hyvä tallentaa johonkin omakeksimä tiedostoihin
Sillä ei nyt ole mitään merkitystä, mihin ne tallennat. Tallenna johonkin, josta ne on helppo ladata.
CoDeR kirjoitti:
3. Ja pelin kartat, kannattaako ne piirtää kokonaisuudessaan jo valmiiksi vai tehdä niitä maastopaloja ja sijoittaa ne formille jonkin aliohjelman avulla?
No ilman muuta palikoina.
CoDeR kirjoitti:
(ja jos kannattaa tehdä paloista niin miten olisi järkevintä tallentaa ne tiedostoon josta aliohjelman on helppo lukea ja sijoittaa oikeat palikat oikeaan paikkaan?)
No silläkään ei ole merkitystä, tallenna siten, kun tunnet, että ne on sieltä helppo lukea.
CoDeR kirjoitti:
niin olisiko hyvä tehdä se niin että piirtää vb:llä täytetyn laatiokon alareunaan ja siihen teksti ja muut sälät päälle?
No miten muuten sen voi tehä?
CoDeR kirjoitti:
5. ja eikö nämä kaikki tapahtumat kuten maaston piirto, puhesysteemi jms. kannata kirjoittaa moduuliin?
No sillä nyt ei ole niin merkitystä. Sen verran voin antaa kokemuksesta vinkkiä, että älä ihan kaikkea kirjota samaan tiedostoon, vaan jaa tavara loogisen yhteyden mukaan useampaan tiedostoon. Useampaa pienempää tiedostoa on mukavampi käsitellä, ku yhtä jumalatonta.
CoDeR kirjoitti:
6. ja kun ajattelin että pelini alkaa niin että aluksi on musta kuva, sitten se muuttuu pikkuhiljaa pois siitä ja tilalle tulisi pikkuhiljaa uusi kuva (kartta) ,... niin miten sen saisi toteutettua? :(
Ottamalla selville kuvan jokaisen pikselin väriarvo, tummentamalla sitä sopivasti ja piirtämällä se formille.
CoDeR kirjoitti:
7.
Sub PiirraKuva(tunnus As Integer, x As Integer, y As Integer).... niin mitä nuo määtittelyt tuossa sulkeissa takroittavat? .. siis miksi ne on määritelty juuri tuossa ja mitä hyötyä siitä on?
Aliohjelman parametrit. Kun kutsut vaikka MsgBoxia annat sille parametriksi sen tekstin, jota laatikkoon haluat, samalla tavalla annat tuolle PiirraKuvalle paramatriksi minkä kuvan haluat piirtää ja sen koordinaatit.
CoDeR kirjoitti:
niin miten se sitten ton "piirretään muut palikat" jälkeen osaa piirtää just oikean palikan oikeaan paikkaan?
Koska se piirto on silmukan sisällä, nuo i ja j muuttuu joka pyörähdyskerralla ja kuva tulee eri kohtaan.
1. Ohjelmia on vaikka kuinka paljon. Minä olen tehnyt midejä Noteworthy Composerilla, johon olen ollut tyytyväinen. Musiikin tallennusmuodoksi sopii midi ja ääniefekteihin wav.
2. Erillisten tiedostojen kanssa on helpompaa, mutta lopputulos on sama kummallakin tavalla. Omia tiedostomuotoja voi käyttää, jos mieli tekee. Peliin liittyviä tiedostoja voi kirjoitella käsin tai tehdä apuohjelman, jolla voi luoda niitä.
3. Pienemmistä paloista kokoaminen on hyvä idea - muistia säästyy ja tulos on muutenkin yleensä hyvä. Helpoin tapa tallentaa on ilmoittaa järjestyksessä kunkin ruudun maastopalan tunnusnumero.
4. No noinhan se varmaan onnistuu. Tai voit myös tehdä PictureBoxin, joka tulee näkyviin keskustelutilanteessa.
5. Joo, varsinkin silloin, jos niitä käytetään useammasta formista tai moduulista.
6. Kerro vähän tarkemmin haluamastasi efektistä. WinAPI lienee tarpeen.
7. Määrittelyt tarkoittavat aliohjelmalle annettavia parametreja, joita voi käyttää muuttujien tavoin. Siis parametreista riippuu, mitä aliohjelma tekee. Muutenhan aliohjelma ei tietäisi, mikä kuva pitää piirtää ja minne.
8. Eli merkit-merkkijonossa on tiedostossa käytettävät merkit samassa järjestyksessä kuin palikat ovat kuvassa. Kun esim. tiedostosta luetun rivin kolmantena merkkinä on "j", Mid(rivi, 3, 1) on "j" ja InStr(merkit, "j") on 4. Näin saadaan selville palikan tunnusnumero. Kuvassa samainen palikka on silloin neljäntenä vasemmalta lukien.
9. Taso-taulukossa on kunkin palikan tunnusnumero. Kun kirjoitetaan Taso(x, y), saadaan selville palikka kohdassa (x, y).
Blaze kirjoitti:
Ottamalla selville kuvan jokaisen pikselin väriarvo, tummentamalla sitä sopivasti ja piirtämällä se formille.
... kuullostaa aika vaikeelta... vai ymmärsinkö jotenkin väärin mebbe? ^^
Antti Laaksonen kirjoitti:
4. No noinhan se varmaan onnistuu. Tai voit myös tehdä PictureBoxin, joka tulee näkyviin keskustelutilanteessa.
tuo oli minullakin mielessä :D
Antti Laaksonen kirjoitti:
6. Kerro vähän tarkemmin haluamastasi efektistä. WinAPI lienee tarpeen.
Siis.... no, kun esim videon muokkauksessa kun aluksi tapahtuu jotain, sitten halutaan siirtyä kenties toiseen aiheeseen ja väliin laitetaan siis sellainen tummennus, jolla siirrytään edellisestä kuvasta seuraavaan tummennuksen jälkeen.. tjs .... vähän vaikea selittää :(
Antti Laaksonen kirjoitti:
Helpoin tapa tallentaa on ilmoittaa järjestyksessä kunkin ruudun maastopalan tunnusnumero.
miten ne maastopalojen tunnusnumerot saadaan selville? .. tarkoitatko tuota kohdassa 7. tapahtuvaa juttua... vaiko tuossa taulukossa taso..?
p.s. tuhannet kiitokset tähän asti tulleista vastauksista! :)
edit: toi musaohjelma vaikuttaa tosi hyvältä! :) .. enää pitäs vaan keksii jotai järkevän kuulosta XD
edit2: damn.... toihan pitää ostaa toi kokoveriso :(:( ...
jos joku ymmärsi selityksen tosta kohdasta 6. ja osais vastata siihen ni ois kiwa ^^ ...toi blazen vastaus ei oikeen menny mulle perille :(
Antti Laaksonen kirjoitti:
6. Kerro vähän tarkemmin haluamastasi efektistä. WinAPI lienee tarpeen.
Tuo efekti on varmaan samantapainen kuin Allegrossa:
fade_out(1);
ja
fade_in(palette, 1);
Tosin tästäkään ei ollut mitään hyötyä jos kukaan ei käytä Allegroa...
Osaisin siis tehdä tempun Visual Basicilla jos osaisin ohjelmoida sillä.
Eli tummennus.. no tuohonkin on monta tapaa miten voisi edetä. En nyt keksi minkään hyvän apin nimeä tuohon tilanteeseen (ellei sitten bitblt:ssä ole sitten jotain hyödyllistä ominaisuutta josta en ole tietoinen).. Yksi HIDAS tapa on tälläinen:
for i = 1 to 400 'kuvanleveys for j = 1 to 400 'kuvan korkeus väri = picture1.point(i,j) 'haetaan yksi piste 'selvitetään väri arvot R = Väri Mod 256 G = (Väri \ 256) Mod 256 B = Väri \ 65536 'tummennus if r < 245 and b < 245 and c < 245 then r = r + 10 g = g + 10 b = b + 10 end if picture1.pset(i,j),rgb(r,g,b) 'pikseli nyt paikalleen next next
koodia ei ole testattu, heitin äkkiseltään hatusta :)
edit: hups, nyt se vaalentaisi kuvaa, mutta vaihtamalla nuo r,g,b:n plussaukset miinustamiseksi sekä laittamalla tarkistukset etteivät arvot mene alle 0:n sama toimii myös siihen suuntaa. Testasin myös tuota (jaksoimpa avata vb:n IDEn :)), niin 400 x 400 kuvalle menee aikaa pari sekuntia.
Tuommoisen efektin toteuttaminen PSetillä ja Pointilla on tuhoon tuomittu yritys. Sitä vastoin WinAPIn funktiot GetDIBits ja SetDIBits saattaisivat tulla kysymykseen. Tai jos kuvassa on paletti, vastaavat funktiot ovat GetDIBColorTable ja SetDIBColorTable. Aivan helppoa tällaisen efektin tekeminen ei kuitenkaan ole. Jos sattuu joskus olemaan aikaa, voin tehdä esimerkkiohjelman.
Noniin, olihan siellä jotkut apit :)
joo, no taidan laittaa siihen erään helpomman ratkaisun tilalle. Mutta ... lueskelin tuota jalokivijahtia ja sen systeemiä piirtää se kartta... mutta en oikein tajunnut sitä kunnolla / saanut kaikkea irti :(:( .. tyhmä kun olen XD ... jos joku voisi antaa ohjeita tästä niin olisin erittäin otettu ^^ (ja kannattaako ne kartat piirtää tuolla tavalla sinne txt filuun ja sen avulla piirtää se jne.)
Visual Basic ei ole aivan paras ohjelma pelien tekoon. Tämäntyyppiseen peliin voisit kokeilla CoolBasic:ia.
mikeful kirjoitti:
Visual Basic ei ole aivan paras ohjelma pelien tekoon. Tämäntyyppiseen peliin voisit kokeilla CoolBasic:ia.
Perustele!
CoDeR: Jos haluat kehittyä ohjelmoinnissa, eikä pelin teko tunnu mahdottomalta VB:llä, en suosittele, että siirryt CoolBasiciin. CoolBasic on tarkoitettu aloittelijoille, jotka haluavat ensimmäiseksi ohjelmakseen koodata näyttävän pelin. Olen jonkin verran tutustunut CoolBasiciin ja todennut, että se ei ole läheskään yhtä johdonmukainen, kuin muut kohtaamani kielet.
VB:llä saa aikaan näyttäviäkin 2D pelejä, ja jos ei muuten niin sitten DirectX kehiin.
mikeful kirjoitti:
Visual Basic ei ole aivan paras ohjelma pelien tekoon. Tämäntyyppiseen peliin voisit kokeilla CoolBasic:ia.
Kyllä Vb kevyihin projekteihin sopii melko mainiosti.
Jotain coolbasic-pelejä joskus olen kokeillut, mutta vaikutti melko hitaalta tuo moottori kyseisessä kielessä. en sitten tiedä ovatko tekijät saaneet siitä nopeamman(nytten), mutta se vaikutti silloin CB:n kompastuskiveltä.
Voi olla, että kehitystä on tapahtunut. Mikä olisi erittäin positiivista.
Pystyykös Cb:llä tekemään muutes exe-tiedostoja?
nomic kirjoitti:
Pystyykös Cb:llä tekemään muutes exe-tiedostoja?
Pystyy.
Gaxx: VB on suunnitelu alunperin eventtipohjaiset hyötyohjelmien tekoon, joten se ei sovi pelien tekoon ennenkuin siihen on tutustunut kunnolla. CBssa taas on jo sisäänrakennettuna tilekarttamoottori, yms. CB sijoituu milestäni hyvin "tavalliset" pelinteko-ohjelmien ja perineteisen ohjelmointikielin välimaastoon tarjoten riittävän helpon ja tehokkaan systeemin. Sitä paitsi CB on ilmainen, kun taas VBiin pitää periaatteessa hankkia lisenssi, jos haluaa myydä tekemiään pelejä.
Mielenkiintoista muuten, että viittaat aloittelijoihin ja DirectXn samassa viestissä. :) CB on rakennettu DirectX:n päälle, mutta sinun ei tarvi huolehtia sen säätämisestä.
nomic: Olet tainnut kokeilla Beta 5:sta. Uusin versio on noin 10 kertaa vanhaa nopeampi, koska se on kirjoitettu kokonaan uusiksi. Samalla on mukaan tullut läjäpäin uusia, mukavia ominaisuuksia.
Yleisesti ei ole mitään väliä millä ohjelmoi, mutta itse en jaksa opetella C:tä, VB ei sovi pelientekoon ja pelienteko-ohjelmat eivät tarjoa riittävästi sääntövaraa. Siksi käytän pääasiassa CoolBasic:ia. Miksi opetella joku kieli hyvin, kun kuitenkin joutuisi tehdä kaikki moottorit itse, jotka ovat jo valmiina?
mikeful: Jos VB:llä aikoo tehdä pelin, se ei kaipaa sen suurempia tutustumisia sen käyttöön. VB:llä voi tehdä pelin melkeimpä QB:n osaamisella, ainoastaan DirectX täytyy harjoitella. Itse en ole koskaan tutustunut mihinkään BitBlt tai muuhun vastaavaan tekniikkaan, koska DirectX on ollut niin yksinkertainen. Ei sitä tarvitse opetella niin, että osaa kirjoittaa kaikki alustukset ja sun muut ulkomuistista, vaan tekee dokkien kanssa kerran kunnon funktiot ja käyttää niitä sitten myöhemminkin. Sitäpaitsi putkassa on edelleenkin mainio DirectX opas!
En nyt halua ruveta kovin kiisteleen, vain sanoa oman mielipiteeni ja kuulla perustelusi :)
Aivan. Jos DirectX:ää käyttää, on aivan sama millä kielellä pelin tekee. VB ilman DirectX:ää olisi aika kalju esitys vakavien pelien tekoon.
mikeful kirjoitti:
CB on rakennettu DirectX:n päälle, mutta sinun ei tarvi huolehtia sen säätämisestä.
Ja kun tulee uusi hieno directx versio niin sen ominaisuuksia ei voikaan käyttää ennekuin cb:n tekijät tekevät uuden version jos tekevät.
mikeful kirjoitti:
Miksi opetella joku kieli hyvin, kun kuitenkin joutuisi tehdä kaikki moottorit itse, jotka ovat jo valmiina?
Koska näin oppii hyviä teknikoita joita voi hyödyntää muissa projekteissa. Jos opettelee jonkun yleisen kielen (esim c/c++) niin ohjelma myös porttautuu helpommin muille järjestelmille (esim. Linux). Jos ei halua itse tehdä kaikkia moottoreita itse löytyy netistä valmiita moottoreita eri tarkoituksiin.
mikeful kirjoitti:
Miksi opetella joku kieli hyvin, kun kuitenkin joutuisi tehdä kaikki moottorit itse, jotka ovat jo valmiina?
Miksi isot pelitalot eivät käytä pelinteko-ohjelmia vaan C++:aa? Ja onko siinä, että ei satu olemaan ammattilainen, jokin syy tehdä toisin? Minusta tässä olisi syytä luottaa ammattilaisten tietoon siitä, millä saa oikeasti hyvää jälkeä ja juuri sellaista kuin haluaa. Useimmissa pelinteko-ohjelmissa ja valmiissa moottoreissa on jotakin rajoittuneisuutta, kun taas oma moottori taipuu juuri siihen, mihin sen laittaa taipumaan. Ja miten mahtaa onnistua CB:llä muun kuin tilepohjaisen pelin teko? Sitä paitsi tilemoottori on ainakin omassa projektissani ollut tähän mennessä helpoin toteutettava asia, joten eipä tuolla CB:n ominaisuudella voi ainakaan minusta mitenkään kehua.
...miksei vb muka sovi pelin tekoon..? juu, en mä mitään cb:tä oo alkamassa opettelemaa. Koska mun mielestä vb on hyvä kieli :) .. ja tottakai mä käyttäisin DirectX:ää, mut ku luin tota putkan opasta ni se ois ollu ku ois lukenu hepreaa (suurin osa) XDXD ..ni ajattelin tehdä vähän yksinkertasemman aluks.
Tosin jos siinä kartanpiirtomoottorissa joku osaisi neuvoa niin olisi tosi hyvä! Olen tässä sitä peliä hahmotellut, ja olen keksinyt hyviä tapoja suorittaa taistelut ja muut, mutta se kartta homma ei vaan jotenkin mene jakeluun :(:(
Jokseenkin hölmöä kinastella siitä kannattaako millä ja miksi koodata ja mitä. Aivan sama kuin kinastelisi siitä onko kaupassa parempi käydä urheilu autolla vai limusiinilla kun molemmilla sinne kauppaan pääsee. Tyyli vain hieman eri =)
CoolBasiccia tuli kanssa kokeiltua. Ei toimi mun tapauksessa kun teksti graffan teko suht hankalaa.
Siitä onko CB sen enempää ohjelmointikieli kuin esim. VB, saakin sitten väitellä maailman loppuun saakka. Itse olen sitä mieltä että kun edes jotain kieltä vääntää niin hyvä on. Siitä sitten innostus laajenaa jos on laajetakseen. Jos ei, niin tiedä sitä vaikka se coolbasiccaaja saisikin jonkin upean tekeleen aikaan.
joo on tosiaan tyhmää kinastella tollasesta ^^ ... ilmaisin vaan mielipiteeni enkä halua kinastella :D ... haluaisin vain noit aneuvoja mitä tuossa mainitsin ^^
Kaiken fanatismin keskellä kannattaa muistaa, että loppujen lopuksihan tässä on kyse tarkoitukseen sopivan työkalun valinnasta, joka on osa ohjelmoijan ammattitaitoa.
Miksei sillä ruuvimeisselilläki saa naulan seinään, mutta helpompaa ja kätevämpää se on vasaralla.
yks kysymys tuli viel:
miten saan printattua tekstiä formin tiettyyn kohtaan?
CurrentX = 100
CurrentY = 100
print "moi"
entä miten sen kokoa ja väriä saa muutettua? ^^ (sen printattavan tekstin)
CoDeR kirjoitti:
Tosin jos siinä kartanpiirtomoottorissa joku osaisi neuvoa niin olisi tosi hyvä!
Säilöt kentän tilet taulukkoon ja piirrät tietyltä alueelta ne sitten kahdella for loopilla näytölle.
Dim kentta(19, 19) As Integer 'Tehdään 20x20-tilen kenttä 'Sitten vaan sijoitat arvot taulukkoon. Jokaisella tilellä on oma indexinsä(=arvonsa tjsp.). Dim Tile(100) As Picture 'Säilöt kuvat johonkin taulukkoon(ei tollasta Picture hommaa käsittääkseni oo...). Dim RX 'kuinka monta tileä jää ruudun vasemmalle puolelle piiloon Dim RY 'kuinka monta tileä jää ruudun yläpuolelle piiloon Dim TX 'näytöllä olevien tilejen lukumäärä x-suunnassa Dim TY 'näytöllä olevien tilejen lukumäärä y-suunnassa 'Sitten vain piirretään jokainen tile näytölle For c = RX to RX + TX For d = RY to RY + TY PiirräTile(Tile(Kentta(c,d))), c * 20, d * 20 'olettaen, että tilet ovat 20-pikselin kokoisia next d next c
PiirräTile:n esittely:
Private Sub PiirräTile(Tile as Picture, x as integer, y as integer) 'Elikkä piirrä tile a kohtaan (x,y).
Siis, jos kenttä olisikin 3x3, piirtäminen toimisi näin:
#00 #00 #00 ##0 ##0 ##0 ### ### ### 000 -> #00 #00 -> #00 -> ##0 -> ##0 -> ##0 -> ### -> ### 000 000 #00 #00 #00 ##0 ##0 ##0 ###
# on siis piirretty tile ja 0 on tyhjä kohta.
Edit:
CoDeR kirjoitti:
entä miten sen kokoa ja väriä saa muutettua? ^^ (sen printattavan tekstin)
kirjota Me. ja valitte siitä valikosta. Siis esim. me.font.
joo, koitan saada ton toimimaan. ^^
mutta.. kun piirsin tällä laatikon:
väri = RGB(127, 127, 127) a1 = 8 b1 = 414 a2 = 700 b2 = 529 Line (a1, b1)-(a2, b2), väri, BF
... niin miten saan sen pois?
Vaikka näin?
väri = me.backcolor a1 = 8 b1 = 414 a2 = 700 b2 = 529 Line (a1, b1)-(a2, b2), väri, BF
Ja jos tää kyseinen loota on jo merkattu taulukkoon, niin sen voi poistaa sieltä (koska eihän lootaakaan enään ole (ellei toisin haluta)).
kyl toi muuten toimis, paitsi sit jos formissa on (esim) taustakuva missä on paljon eri värejä ni ...
koitan keksii jotai
Aihe on jo aika vanha, joten et voi enää vastata siihen.