[Allegro] Scrollowanie mapy
Ostatnio zmodyfikowano 2011-09-20 12:13
walus1305 Temat założony przez niniejszego użytkownika |
[Allegro] Scrollowanie mapy » 2011-09-19 18:59:32 napisałby mi ktoś kod na scrollowanie mapy mam jakiś sie scrolluje ale jak dam np npc w punktach 200 200 to on się scrolluje razem z mapą a nie pozostaje w miejscu moim zdaniem trzeba napisać jeszcze raz scrollowanie |
|
Gronek8624 |
» 2011-09-19 19:06:36 hmm Dobre stare czasy XD Jak zgaduje to postać umieściłeś na płaszczyźnie którą poruszasz . Najlepiej daj postać do tablicy 2 wymiarowej (X,Y - mapa świata szybki i zazwyczaj mało pamięci bierze . Wszystko zależy od algorytmu :)) lub zrób strukturę :) |
|
walus1305 Temat założony przez niniejszego użytkownika |
» 2011-09-19 19:24:49 no dobra mam tablice 30 30 wyświetlam ją to umiem ale mam problem z tym scrollowaniem nie wiem jak zacząć mam tam jakiś kod ale on niby scrolluje ale nie dobrze wiec proszę o napisanie mi jak ją mogę scrollować |
|
Gronek8624 |
» 2011-09-19 19:33:04 http://www.easykoder.vot.pl/arty/wyswietlanie_mapyJak dobrze pamiętam to od tego uczyłem się wyświetlania mapy (rok temu :) ) Skąd nie gadać to stamtąd pochodzą tutki allegro :) Ps.hmm nie sądzę by komuś chciało się pisać tego dlaczego : - Mają swoje sprawy - To twój program (gra) - Masz się czegoś nauczyć (skąd nie gadać najwięcej nauczyłem się studiując czyjś kod :)) taka ironia losu |
|
walus1305 Temat założony przez niniejszego użytkownika |
» 2011-09-19 19:38:09 stamtąd brałem i właśnie nie chce działać nie wiedzieć dlaczego |
|
Gronek8624 |
» 2011-09-19 19:40:19 Dawno nie pisałem w Allegro ale co tam . Wrzuci kod to zobaczymy co jest nie tak :) |
|
SeaMonster131 |
» 2011-09-19 20:49:27 Wrzuć kod a nie... ;p Ogólnie to tworzysz zmienne CameraX i CameraY, tego npc rysujesz na pozycji 200 + CameraX 200 + CameraY Przesuwając mapę dodajesz/odejmujesz tylko zmienną CameraX/CameraY. I wsio ;p |
|
walus1305 Temat założony przez niniejszego użytkownika |
» 2011-09-19 21:02:13 a więc tu jest wyświetlanie tablicy void wyswietl() { for( int licz_y = 0; licz_y < 30; licz_y++ ) for( int licz_x = 0; licz_x < 40; licz_x++ ) { masked_blit( teren, bufor, ( map[ licz_y ][ licz_x ] % 4 ) * 40, ( map[ licz_y ][ licz_x ] / 4 ) * 40, ( licz_x * 40 ) - x,( licz_y * 40 ) - y, 40, 40 ); } }; a na scrollowanie if(( key[ KEY_RIGHT ] ) &&( x < 800 ) ) { x = x + 1; } if(( key[ KEY_LEFT ] ) &&( x > 0 ) ) { x = x - 1; } if(( key[ KEY_DOWN ] ) &&( y < 600 ) ) { y = y + 1; } if(( key[ KEY_UP ] ) &&( y > 0 ) ) { y = y - 1; } if(( key[ KEY_RIGHT ] ) &&( x >= 800 ) &&( ludek_x <= 720 ) ) { ludek_x++; } if(( key[ KEY_LEFT ] ) &&( x <= 0 ) &&( ludek_x > 40 ) ) { ludek_x--; } if(( key[ KEY_DOWN ] ) &&( y >= 600 ) &&( ludek_y <= 400 ) ) { ludek_y++; } if(( key[ KEY_UP ] ) &&( y <= 0 ) &&( ludek_y > 40 ) ) { ludek_y--; }
wiem że jest coś nie tak z tym scrollem ponieważ gdy chce wyświetlić postać w punkcie np 100 100 to podczas scrollowania mapy ta postać zamiast zostać w tym punkcie porusza się razem z nią. Wiec nie wiem co jest nie tak |
|
« 1 » 2 |