potrex utworzono 3 maja 2010 utworzono 3 maja 2010 Nie wiecie może jak można zrobić mapkę? Chciałbym zrobić grę taktyczną ale nie wiem jak zrobić typowe podzielenie mapy na kwadraciki jak w grach taktycznych. Jaki język ma możliwość "składania mapek" z kwadracików? [img]http://iv.pl/images/96692081288295595233.png[/img] Ta gra jest podzielona na kwadraty jak widać ^^ po co mi to? No muszę zrobić kolizje a jeżeli przeciwnik jest w zasięgu atakującego ma następować atak Więc muszę wiedzieć gdzie są drzewa i inne cuda żeby gracz nie mógł na to wleźć itd. Jeżeli znacie jakiś inny sposób wykrywania kolizji/przeciwnika/ilości mozliwych pól do przejścia to mówcie ^^ Za odpowiedź 100x dzięki
rafalluz komentarz 3 maja 2010 komentarz 3 maja 2010 Robisz coś na kształt tanków z pegasusa? Możesz zrobić planszę jako tablicę dwuwymiarową. W każdej komórce jest albo mur, albo flaga, albo inny obiekt. Rysowanie będzie z górki, bo każda komórka odpowiada małemu kwadracikowi o pewnym rozmiarze (np. 40x40) na ekranie. Po prostu czołg nie może wjechać na pole, w którym np. mur już jest, albo inne przeszkody - zgodnie z założeniem. Kolizje też zrobisz, porównując pozycje odpowiednich obiektów z określonym obszarem, np. jak czołg to prostokąt, to sprawdzasz, czy pocisk jest w określonym prostokącie. Jak tak, masz kolizję.
potrex komentarz 4 maja 2010 Autor komentarz 4 maja 2010 (edytowane) [quote name='rafalluz' date='03 maj 2010 - 22:27' timestamp='1272922198' post='1019425'] Robisz coś na kształt tanków z pegasusa? Możesz zrobić planszę jako tablicę dwuwymiarową. W każdej komórce jest albo mur, albo flaga, albo inny obiekt. Rysowanie będzie z górki, bo każda komórka odpowiada małemu kwadracikowi o pewnym rozmiarze (np. 40x40) na ekranie. Po prostu czołg nie może wjechać na pole, w którym np. mur już jest, albo inne przeszkody - zgodnie z założeniem. Kolizje też zrobisz, porównując pozycje odpowiednich obiektów z określonym obszarem, np. jak czołg to prostokąt, to sprawdzasz, czy pocisk jest w określonym prostokącie. Jak tak, masz kolizję. [/quote] sorry ale czy chodziło ci o to?: mam zmienne a,b,c,d. Każda ma do siebie przypisany obrazek np: a to drzewo, b to trawa no wartość tablicy: [code] aaaaaaaaaaaaaaaaaaaaaaaa abbbbbbbbbbbbbbbbbbbbbba abbbbbabbbbbbbbbbabbbbba abbbbbabbbbbbbbbbabbbbba aaaaaaaaaaaaaaaaaaaaaaaa [/code] no i teraz licze długość/szerokość obrazków oraz odczytuję pozycję gracza i wiem gdzie stoi ? Mam z tym problem: znacie jakieś sensowne obliczenie dzięki któremu dowiem się gdzie gracz stoi (chodzi o obrazek: czy na drzewie (a) czy na trawie (b)?)? jeszcze jedno: czy na komputery istnieje taka biblioteka do C++ coś a la Oslib? [url="http://www.sakya.it/OSLib_MOD/doc/html/"]dokumentacja[/url] [url="http://oslib.playeradvance.org./"]praktyka[/url] W oslibie można przenosić/obracać/nawet zmieniać przezroczystość obrazków. Ten jest na konsole. Czy jest coś podobnego do kompów? To bardzo by mi pomogło w tworzeniu gierek gdyż mogę używać i funkcji normalnego C++ i bardzo prostego sterowania obrazkami i tekstem. EDIT: "czołgi" dałem dla przykładu. Robię inną grę tylko re kolizje...
rafalluz komentarz 4 maja 2010 komentarz 4 maja 2010 Mniej więcej o to mi chodziło. Teraz każdej komórce tablicy odpowiada kratka na ekranie. Np tab[0][0] to kratka w lewym górnym rogu, tab[0][1] to kratka obok niej z prawej, etc. Gracza nie umieszczałbym w tej tablicy, bo nie zrobisz płynnego ruchu. Po prostu np. pozycję czołgu zapisz sobie osobno (np. w odpowiedniej klasie) i porównuj, czy tam, gdzie gracz chce się ruszyć, czegoś już nie ma. Taką grę możesz napisać np. w C++ w SDLu. Albo praktyczniej - biblioteką [b]allegro[/b].
potrex komentarz 7 maja 2010 Autor komentarz 7 maja 2010 [quote]Taką grę możesz napisać np. w C++ w SDLu. Albo praktyczniej - biblioteką allegro.[/quote] Co bardziej polecasz? Czym to się różni? ^^ I jaki program (darmowy ^^) polecasz do tworzenia takich gier? Proszę o szybką odpowiedź
Wciąż szukasz rozwiązania problemu? Napisz teraz na forum!
Możesz zadać pytanie bez konieczności rejestracji - wystarczy, że wypełnisz formularz.