Tyhmät kysymykset (I/2011)
Re: Tyhmät kysymykset (I/2011)
Mahtavaa, kiitoksia paljon!
Toinen ongelma liittyisi vihujen törmäykseen. Kun vihollinen törmää seinään ja toinen puskee tämän perään, vihu työntyy seinän läpi. Voiko tätä estää mitenkään?
Toinen ongelma liittyisi vihujen törmäykseen. Kun vihollinen törmää seinään ja toinen puskee tämän perään, vihu työntyy seinän läpi. Voiko tätä estää mitenkään?
Re: Tyhmät kysymykset (I/2011)
Se riippuu koodistasi. Olet luultavasti tehnyt niin, että vihujen törmäys on liukuva. Muuta törmäys pysähtyväksi.Noun wrote:Mahtavaa, kiitoksia paljon!
Toinen ongelma liittyisi vihujen törmäykseen. Kun vihollinen törmää seinään ja toinen puskee tämän perään, vihu työntyy seinän läpi. Voiko tätä estää mitenkään?
Laita koodia näkymään niin voin auttaa paremmin.
Hahaa!!! Tuhlasit elinaikaasi tyhmän viestini lukemiseen...
Projektit:
Projektit:
Re: Tyhmät kysymykset (I/2011)
Cb:n omalla törmäystarkistuksella ei tätä tietääkseeni pysty estämään, jos siis käytät liukuvaa törmäystä. Yksi ratkaisu on tarkastaa GetMapilla objektin ja hit-tilen päällekäisyys, ja siirtää objekti pois seinästä.Noun wrote:Toinen ongelma liittyisi vihujen törmäykseen. Kun vihollinen törmää seinään ja toinen puskee tämän perään, vihu työntyy seinän läpi. Voiko tätä estää mitenkään?
Eli jotenkin näin:
- Tarkastat törmäyksen kartan ja objektin kesken (GetMap(), GetCollision()). Jos törmätään, suoritetaan seuraavat askeleet:
- Katsot törmäyskulman (CollisionAngle())
- Siirrät objektin ensin törmäystilen keskustaan, ja sitten törmäyskulman vastaisesti (eli pois seinästä) tilen puolikkaan + objektin puolikkaan verran. Kannattaa tehdä siirtomatematiikka kerralla (vektorimatskua) ennen itse siirtoa, eli ei kahta erillistä siirtoa.
Re: Tyhmät kysymykset (I/2011)
Okei, tattista. Eiköhän tämä jotenkin onnistu.
Vielä yksi ehkä oikein tyhmä kysymys... miten saan selville missä tilekartan tilekoordinaateissa objekti on?
EDIT: Nm, SDK:ssa taitaa olla funktio.
EDIT2: Se ongelma ratkesi, mutta nyt EditMap heittää mavia. EditMapin esimerkistä muokattu koodi tässä:
Se voi ajaessa kaatua heti jos pelaaja spawnaa ruutuun, jota olisi tarkoitus muokata. Kartan nimi on oikein, objektin nimi on oikein...mutta mavaa.
Vielä yksi ehkä oikein tyhmä kysymys... miten saan selville missä tilekartan tilekoordinaateissa objekti on?
EDIT: Nm, SDK:ssa taitaa olla funktio.
EDIT2: Se ongelma ratkesi, mutta nyt EditMap heittää mavia. EditMapin esimerkistä muokattu koodi tässä:
Code: Select all
FrameLimit 40
'Create a map from Blank
map=MakeMap(32,32,32,32)
u=LoadObject("Media\guy.bmp",72)
'Apply some graphics on it
tileset=LoadImage("Media\tileset.bmp")
PaintObject map,tileset
'Randomly fill the map
For y=1 To MapHeight()
For x=1 To MapWidth()
If Rand(1,5)=5 Then
EditMap map,0,x,y,2 'drawing
EditMap map,2,x,y,1 'collision
Else
EditMap map,0,x,y,145
EndIf
Next x
Next y
'The game loop-itself
Repeat
If UpKey() Then MoveObject u,2
If DownKey() Then MoveObject u, -2
If LeftKey() Then TurnObject u,5
If RightKey() Then TurnObject u, -5
'Glue camera to object position
CloneCameraPosition u
If GetMap(0,ObjectX(u),ObjectY(u))=2 Then
EditMap map,0,GetTileX(ObjectX(u))/32,GetTileY(ObjectY(u))/32,145
EditMap map,2,GetTileX(ObjectX(u))/32,GetTileY(ObjectY(u))/32,0
EditMap map,3,GetTileX(ObjectX(u))/32,GetTileY(ObjectY(u))/32,0
EndIf
DrawScreen
Forever
//================================================================================
// Selvitetään maailmankoordinaattien mukainen tilen x-paikka.
// Parametrit:
// _x - X-koordinatti pikseleinä.
//================================================================================
Function GetTileX(_x)
mapX# = (ObjectSizeX(gCurrentMap) / 2.0) - ObjectX(gCurrentMap)
Return RoundUp((_x + mapX) / gTileWidth)
EndFunction
//================================================================================
// Selvitetään maailmankoordinaattien mukainen tilen y-paikka
// Parametrit:
// _y - Y-koordinatti pikseleinä.
//================================================================================
Function GetTileY(_y)
mapY# = ObjectY(gCurrentMap) + (ObjectSizeY(gCurrentMap) / 2.0)
Return RoundUp((mapY - _y) / gTileHeight)
EndFunction
Re: Tyhmät kysymykset (I/2011)
Tässä se ongelma onkin. SDK:n funktio käyttää globaaleja muuttujia kartalle ja kartan korkeudelle/leveydelle. Spottaatko alla olevista funktioista muuttujat gCurrentMap, gTileWidth ja gTileHeight? Laita niiden tilalle karttasi tilejen leveys ja korkeus vastaavasti sekä globaalissa muuttujassa oleva karttasi. Kts. avainsanan Global ohje.Noun wrote:Nm, SDK:ssa taitaa olla funktio.
Noun wrote:Code: Select all
//================================================================================ // Selvitetään maailmankoordinaattien mukainen tilen x-paikka. // Parametrit: // _x - X-koordinatti pikseleinä. //================================================================================ Function GetTileX(_x) mapX# = (ObjectSizeX(gCurrentMap) / 2.0) - ObjectX(gCurrentMap) Return RoundUp((_x + mapX) / gTileWidth) EndFunction //================================================================================ // Selvitetään maailmankoordinaattien mukainen tilen y-paikka // Parametrit: // _y - Y-koordinatti pikseleinä. //================================================================================ Function GetTileY(_y) mapY# = ObjectY(gCurrentMap) + (ObjectSizeY(gCurrentMap) / 2.0) Return RoundUp((mapY - _y) / gTileHeight) EndFunction
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)
KOne sanoo edelleen: can`t load map:Rata.til
Jotain tollasta sanoo en tajua missä vika nimessäEI pitäisi olla vikaa.
Jotain tollasta sanoo en tajua missä vika nimessäEI pitäisi olla vikaa.
Aloittelija koodari joka
KOTISIVU
Re: Tyhmät kysymykset (I/2011)
En oikein tiedä kuuluuko tämä kysymys tähän ketjuun vai johonkin muuhun.
Pystyyko CoolBasicilla tehdä tekstikenttiä eli pelaaja voi kirjoitella pelin aikana
Pystyyko CoolBasicilla tehdä tekstikenttiä eli pelaaja voi kirjoitella pelin aikana
Aloittelija koodari joka
KOTISIVU
Re: Tyhmät kysymykset (I/2011)
$in=Input("teksti ennen kirjoituskohtaa")
pitää aina muistaa sulkea closeinputilla
pitää aina muistaa sulkea closeinputilla
Re: Tyhmät kysymykset (I/2011)
CB:ssä ei tietääkseni voi määritellä muuttujaa joka alkaisi dollarimerkillä. Eli laita komento:
in$ = Input( ": " )
Ja jos et saa ladattua karttaa, näytä koodi, kerro minne olet tallentanut kartan ja tilesetin, ja millä editorilla loit sen.
in$ = Input( ": " )
Ja jos et saa ladattua karttaa, näytä koodi, kerro minne olet tallentanut kartan ja tilesetin, ja millä editorilla loit sen.
Re: Tyhmät kysymykset (I/2011)
Tyhmät kysymykset, eli toisin sanoen "lyhyet kysymykset, joihin on lyhyt vastaus". Tähän kuuluu, samoin kuin kaikki muutkin saman tyyppiset kysymykset. Kysyminen sen sijaan ei ole koskaan tyhmää.Laurenzo wrote:En oikein tiedä kuuluuko tämä kysymys tähän ketjuun vai johonkin muuhun.
Pystyyko CoolBasicilla tehdä tekstikenttiä eli pelaaja voi kirjoitella pelin aikana
Re: Tyhmät kysymykset (I/2011)
Koodi:
kartta:C Program Files/latejunasimu/Rata.Til
Tilekartta:Tilester sijainti:C program files/Tilester/Tilester.exe
Toivottavasti tuo riittää.
Code: Select all
map = LoadMap("Rata.til","Default.bmp")
Tilekartta:Tilester sijainti:C program files/Tilester/Tilester.exe
Toivottavasti tuo riittää.
Aloittelija koodari joka
KOTISIVU
Re: Tyhmät kysymykset (I/2011)
Mikä on tilekartan (edit: Tarkoitin tilesettiä >_<) sijainti? Ja unohdit tärkeimmän, exen tai koodin sijainti jonka ajat. (Pitäisi olla C:/Program Files/latejunasimu kansiossa, sekä tilekartta samassa kuin rata myöskin)Laurenzo wrote:Koodi:kartta: C:/Program Files/latejunasimu/Rata.TilCode: Select all
map = LoadMap("Rata.til","Default.bmp")
Tilekartta: Tilester sijainti: C:/program files/Tilester/Tilester.exe
Toivottavasti tuo riittää.
Last edited by Viltzu on Sat May 28, 2011 11:55 am, edited 1 time in total.
Re: Tyhmät kysymykset (I/2011)
hei kaikki koodarit!
tämmönen "haasteen" keksisin. kun on semmosia mainoksia on missä pitää esim. ampua kolme iphonea niin voi saada semmosen ,niin pystyisikö joku tekee semmosen tarkkuus ammunta pelin missä kuva ruudun edestä kulkisi maalitauluja ja niihin pitäisi osua. siinä olisi vaikka 50 patia jos kaikilla osuu tauluun niin pääsee toiselle tasolle. ja toisel tasolle kun on päässy niin ne taulut menis vaikka nopeemmin.
tämmönen "haasteen" keksisin. kun on semmosia mainoksia on missä pitää esim. ampua kolme iphonea niin voi saada semmosen ,niin pystyisikö joku tekee semmosen tarkkuus ammunta pelin missä kuva ruudun edestä kulkisi maalitauluja ja niihin pitäisi osua. siinä olisi vaikka 50 patia jos kaikilla osuu tauluun niin pääsee toiselle tasolle. ja toisel tasolle kun on päässy niin ne taulut menis vaikka nopeemmin.
Re: Tyhmät kysymykset (I/2011)
Kannattaa siis opetella.sebsu123 wrote:en itse osaa...
Katso manuaalista MouseX, MouseY, MouseHit, LoadImage ja DrawImage. Riippuen toteutustavastasi saattaa kannattaa tutustua myös tyyppien käyttöön, jolloin kannattaa lukea Type-tutoriaali tämän foorumin Esimerkit ja tutoriaalit -alueelta.
Re: Tyhmät kysymykset (I/2011)
Viltzu wrote:Mikä on tilekartan sijainti? Ja unohdit tärkeimmän, exen tai koodin sijainti jonka ajat. (Pitäisi olla C:/Program Files/latejunasimu kansiossa, sekä tilekartta samassa kuin rata myöskin)Laurenzo wrote:Koodi:kartta: C:/Program Files/latejunasimu/Rata.TilCode: Select all
map = LoadMap("Rata.til","Default.bmp")
Tilekartta: Tilester sijainti: C:/program files/Tilester/Tilester.exe
Toivottavasti tuo riittää.
Kartta ja koodi on samassa kansiossa.
Aloittelija koodari joka
KOTISIVU
Re: Tyhmät kysymykset (I/2011)
Entäs tuo tileset kuva?Laurenzo wrote: Kartta ja koodi on samassa kansiossa.
Re: Tyhmät kysymykset (I/2011)
SEKIN on samassa kansiossa.Latexi95 wrote:Entäs tuo tileset kuva?Laurenzo wrote: Kartta ja koodi on samassa kansiossa.
Aloittelija koodari joka
KOTISIVU
Re: Tyhmät kysymykset (I/2011)
Ja ajat sen pelisi suoraan koodista kyseisen kansion sisältä? Sanoisinpa että siinä vaiheessa kannattaa siirtää tavarat pois Program Files -kansion sisältä, koska siihen liittyy kaikenlaisia suojauksia Windowsin puolelta. Koita siirtää koko projektisi kansio vaikkapa omiin tiedostoihin, niin homma voisi pelittää. Jos ei, niin sitten kyllä alkaa auttamismahdollisuudet loppua.Laurenzo wrote:SEKIN on samassa kansiossa.Latexi95 wrote:Entäs tuo tileset kuva?Laurenzo wrote: Kartta ja koodi on samassa kansiossa.
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)
Ja ajat sen pelisi suoraan koodista kyseisen kansion sisältä? Sanoisinpa että siinä vaiheessa kannattaa siirtää tavarat pois Program Files -kansion sisältä, koska siihen liittyy kaikenlaisia suojauksia Windowsin puolelta. Koita siirtää koko projektisi kansio vaikkapa omiin tiedostoihin, niin homma voisi pelittää. Jos ei, niin sitten kyllä alkaa auttamismahdollisuudet loppua.
Ei toimi
Ps.koneessa missä koodieditori on EI ole internet-yhteyttä.
Aloittelija koodari joka
KOTISIVU
Re: Tyhmät kysymykset (I/2011)
Miten voisin muuttaa maailman koordinaatit näytön koordinaateiksi?