Page 1 of 1

Datakerroksesta tilen numero

Posted: Fri Feb 01, 2008 6:42 pm
by iTKEVAnAKKI
Eli jos pelissäni joutuu 3-datakerroksen kohalle, pitäisi tämän TILEN kohdalle tulla törmäyskerros. Eli miten saan tämän tilen selville että voin muokata sitä editmapilla?

EDIT: Tiedän kyllä yhden keinon mutta se on epävarma(koska pyöristetään)

Re: Datakerroksesta tilen numero

Posted: Fri Feb 01, 2008 6:56 pm
by tuhoojabotti
SDK:ssa on hyvät tilemappi funktiot joilla voi asettaa tilen objektin kohdalle

Re: Datakerroksesta tilen numero

Posted: Fri Feb 01, 2008 7:02 pm
by Jonez
Tällaisella sain itse toimimaan... En sitten tiedä jos mapin kokoa muuttaa... En muista asiasta paljoa mitään. Tää ei kuitenkaan toimi jos jostain syystä siirrät mapin pelimaailman 0-pisteiden miinuspuolelle.

Code: Select all

SCREEN 800, 600
map = MakeMap( 10, 10, 32, 32 )
set = LoadImage( "media\tileset.bmp" )
PaintObject map, set

For x = 1 To 10
    For y = 1 To 10
        If x = 5 And y = 5 Then
            EditMap map, 0, x, y, 5
            EditMap map, 3, x, y, 3
        Else
            EditMap map, 0, x, y, 4
        EndIf
    Next y
Next x

Repeat
    TranslateCamera ( RightKey() - LeftKey() ) * 5, ( UpKey() - DownKey() ) * 5
    
    tileX = ( ObjectSizeX( map ) / 2 + MouseWX() ) / 32 + 1
    tileY = ( ObjectSizeY( map ) / 2 - MouseWY() ) / 32 + 1 

    If GetMap2( 3, tileX, tileY ) = 3 Then Text 20, 60, "TÖRMÄYS!"
    
    Text 20, 20, tileX + " | " + tileY
    DrawScreen
Forever
Edit. Ja mavia saattaa heittää jos yrität lukea mapin ulkopuolelta. Itsellä ei kuitenkaan sanonut mitään asiasta.

Re: Datakerroksesta tilen numero

Posted: Fri Feb 01, 2008 9:30 pm
by iTKEVAnAKKI
Kiitos jonez! Toimi pienellä viilaamisella :D En tiiä mikä tossa SDKn jutussa oli vikana mutta ei todellakaan toiminut...