-
Postów
196 -
Dołączył
-
Ostatnia wizyta
Typ zawartości
Profile
Forum
Wydarzenia
Odpowiedzi opublikowane przez Choosen
-
-
To jeszcze zalezy jak dlugie drogi chcesz wyliczac i jak duzo czasu i energii na to poswiecic... czasem nie warto kupowac kury zeby zjesc jajko :thumbsup:
-
Wykonujac kolejno kroki :
1) zaznaczyc miejsce ( kratkę ) docelową jako nr 1 ( długosc drogi w grafie )
2) oznaczyc wszystkie przylegle z nią i obdazone flagą "puste pole" pola flagą ostatni numer + 1 ( dlugosc drogi w grafie rosnie o jeden )
3) krok drugi powtarzac dla wszystkich kratek z dlugoscią drogi n-1 az do momentu znalezienia kratki z ktorej obiekt ma sie poruszac
4) przesuwac obiekt do przyleglego pola w najmniejszym numerze ( dlugosc drogi )
jasne ? czy dac rysunek ? ;)
uzyskanych w ten sposob drog bedzie kilka ale kazda bedzie najkrutsza. Co wiecej skrypt mozna bardzo latwo przerobic dodajac do kolejnych pol zmienną powiedzmy... " wspolczynnik trudnosci przemierzenia pola" i w ten sposob uzyskamy skrypt ktory znajdzie najkrutsza droge np w trudnym terenie
-
Moim zdaniem troche zle podchodzicie do tematu... Mapa w herosach to jedna wielka tablica 2-wymiarowa. A przeciez mając tablice nie trzeba juz tak skomplikowanych algorytmow motion planning jak A*. Wystarczą zwykle operacje na tablicach , jedna flaga ( pole wolne / zajete ) i strzalka w 8 kierunkach. No ale jesli sie upieracie... ;)
-
...W delphi masz takie ułatwienie, że masz wszystko objektowo, a w C++ nie (chyba że skorzystasz z C++ Buildera)...
Male sprostowanie Marmot. To co masz na mysli mowiac o obiektach w Delphi to sa w istocie komponenty. Obiekty to zgoła inne pojecie. Koncepcja komponentow posiadajacych stany i wlasnosci zostala zaimplementowana w serii kompilatorow z dopiskiem "Builder" i ma to miejsce zarowno w językach C++ jak i object pascal ( odpowiednio C++ builder i Delphi builder ) Natomiast obiekty jako takie wystepują w obydwu jezykach.
...Chociaż jak w Delphi chcesz robić na czystym DirectX lub OpenGL to i tak trzeba korzystać z WinAPI, więc tu nie ma różnicy....Z tym niestety tez sie nie moge zgodzić. Tworzenie aplikacji OpenGL nie wymaga uzycia interfejsow WinApi ktore jednak znacznie ulatwiają sprawe i są czesto wykorzystywane :thumbsup:
-
Bacz na słowa chłopcze... a pretesje o to ze Cie nie zrozumiano mozesz miec tylko do siebie. Naucz sie zadawać pytania to otrzymasz konkretne odpowiedzi :angry:
-
A ja myslalem ze zasady są siatkowkowe :lol: Tak czy inaczej jesli chodzi o fizyke pilki... no to kaplica :D Zajalbym sie tym w pierwszej chwili, te 3 odbicia po jednej stronie to tez wazna kwestia
1) zwieksza realizm bo wiekszosc tego oczekuje
2) zapobiega sytuacji w ktorej komputer bedzie sobie odbijal w nieskonczonosc
-
on chce ze sprite'a obiekt zrobic :P Tak sie nie da... no chyba ze narysujesz kilkadziesiat spritów obok siebie... ale gdzie tu sens ? :huh: ;)
-
Przepraszam ale nie moglem sie powstrzymac i dorzucilem jeszcze swoje 2 grosze.
Ludzie, przeczytalem caly temat i musze przyznac ze poziom rozrywki jaka was fascynuje jest zanujący <_< Zagadka ? Zagadka to pytanie na ktore jest JEDNA prawidłowa odpowiedz. Ukryta wiadomosc he.. kazdej udzielonej na to pytanie odpowiedzi mozna zarzucic kłam więc nie widzę sensu w tworzeniu takich bzdur. Najsensowniejszym postem poruszającym kwestię zagadek byla opowiastka gnyska, jednak wyjasnianie równania 10/0.5=20 było juz mocno przesadzone ( naprawde myslales ze ktos nie zrozumial ? ;) )
-
... kiedy przyciskasz strzałkę w górę player powinnien iść przed siebie, nie do góry na planszy...
Ze niby kto tak twierdzi ?
-
No coz by Ci tu powiedziec... zagralem i natrzaskalem 8k punktow :) Co do jakosci to chyba nie musze sie wypowiadac.. Grafika na odpieprz sie.. no bo jakas byc musi. Dzwiek midi i to jeszcze dobrze wszystkim znany motyw ze star wars. Grywalnosc co prawda jest... ale kiepska . Tak wiec... duzo jeszcze pracy zanim to bedzie gra. Get to work soldier ! :thumbsup:
-
Jest taki program w windowsie...
Start-> wyszukaj -> pliki lub foldery ... :P
-
1) No wiec tak... jesli chodzi o litere T to musisz sprawic zeby np program sie zatrzymal i poprosil o wcisniecie jakiegos klawisza ( komunikat albo menu z literkami )
procedure AAA; // procedura musi byc wprowadzona zanim zostanie wywolana
begin
writeln('Wykonuję procedurę AAA');
end;
// kilka linijek pozniej :P gdzies w glownej funkcji programu
writeln('wybierz opcje:');
writeln('t - wywolanie procedury');
writeln('x - zakonczenie programu');
getchar(znak); // nie wiem czy nazwa funkcji jest prawidlowa ale to mozesz sprawdzic w spisie funkcji. Chodzi o funkcje pobierającą znak z klawiatury.
if (znak='T') then AAA else exit(0);
2) Mozliwosci jest kilka. Mozesz trzymac hasla w osobnym pliku lub np tabeli i w petli sprawdzac wprowadzone haslo z kazdym w pliku lub tabeli ( ew liscie lub inneh dowolnej strukturze danych )
przykladu nie podam.. z prostej przyczyny. Zrobilbym wiecej bledow niz Ty wyciagnalbys z tego korzysci :-) Zbyt dlugo nie uzywalem pascala.
Btw co Cie napadlo zeby sie bawic w pascala :P to juz przezytek
-
Przed wykonaniem przesuniecia sprawdzasz czy jest cos przed nabojem... 2 , 4 , 6 , 8 i 10 pixeli w kierunku ruchu obiektu. Dopiero wowczas przesuwasz obiekt.
-
inicjowanie inaczej deklarowanie w create ??
inicjowac = nadawac wartosc początkową
Dekladowanie to okreslenie nazwy i typu zmiennej ( w GM ogranicza sie to tylko do nazwy ) np:
int liczba;
inicjowanie to :
liczba = 10;
-
Jesli jestes niedoswiadczonym programistą... nie powinienes uzywac tej opcji.. w ogole nie powinno sie uzywac tej opcji ze wzgledu na mozliwosc powstawania licznych, trudnych do wykrycia bledow logicznych. Gra sie odpali ale nie bedzie dzialac jak powinna bo przeoczysz moment w ktorym zmienna przyjela wartosc 0. Rozwiazaniem tego problemu jest inicjowanie zmiennych.
-
A ja bym zmienil przydzial ekwipunku.... marine z uzi ? :huh: sniper z karabinem maszynowym ?! ;) przemysl to :-)
-
Zacznijmy od poczatku... poruszania obiektami nie robi sie w step ! No chyba ze poruszają sie niezaleznie od naszej woli w sposób plynny...
Zeby zabezpieczyc obiekt przed przesunieciem za obszar monitora piszesz w działach odpowiedzialnych za wciskanie strzalek odpowiednie formulki
left arrow:
if ( bohater.x>=5) {bohater.x-=5;} else Pbohater.x=0;};
// czyli przesun bohatera o 5 pixeli w lewo JESLI znajduje się w odleglosci conajmniej 5 pixeli od lewej krawedzi ekranu. W przeciwnym wypadku dosun go do lewej krawedzi ekranu.
I analogicznie...
right arrow:
if (bohater.x<=(room_width-5)) {bohater.x+=5;} else {bohater.x=room_width;};
up arrow:
if (bohater.y>=5) {bohater.y-=5;} else {bohater.y=0;};
down arrow:
(if bohater.y<=(room_height-5)) {bohater.y+=5;} else {bohater.y=room_height};
Na koniec dodam jeszcze ze te wartosci beda poprawne dla punku czyli obiektu o rozmiarze 0 pixeli. W kodzie nalezy uwzglednic jeszcze rozmiar samego bohatera...
-
Mi np fruity loop nie chcial dzialac kiedy mialem wlączonego winampa. Sprawdz czy nie masz w tle innych programow ktore zarządzają dzwiekiem. To moze powodowac zgrzyty.
-
Czemu mi sie zadne zdjecie nie otworzylo ?? Chcialem je zobaczyc !! :(
-
Panoooowie panooowie ! Poziom prac zawiódl nawet mnie :crying: Nie przyłożyliście się w ogole. Nie obejmuje to oczywiście zwycięzcy ( i tu chcialbym pogratulowac :thumbsup: ). Ranma_man... o tobie chcialbym powiedzieć więcej. Menu faktycznie zrobiło na mnie wielkie wrażenie... ale tylko za pierwszym razem bo pozniej gra juz sie w ogole nie odpalała ( uzalezniles gre od dzwieku czy jak ? :-) ) Pomijając ten drobny fakt... to menu bylo naprade dobre i dopracowane. W przeciwienstwie do samej gry :] Nie wiem na czym Ty to tworzyles... ale u mnie gra chodziła tak przeraźliwie szybko ze nie zdązyłem zobaczyc z czym walcze :-)
Kiedy następny konkurs ? Moze zrobimy z tego regularne zawody ? :-)
-
x=view_xview[0]+'liczba_pixeli';
y=view_yview[0]+'liczba_pixeli';
Ta.. a podmieniles zwrot liczba_pixeli na jakas cyfre ? Uzywasz view[0] ? W ogole jakiegos view ?
-
Powielony posta w celu pokazania postepu ( nie moja wina ze się nie chcecie wypowiadac ;) )
Nowa wersja i nowe zmiany. Plik podmieniony i powoli zblizam sie do konca pisania ponga. Nowe zmiany :
1) m - wlacza i wylacza muzyke
2) dodana punktacja
3) pierwsza wersja menu ( proszę narazie wciskac enter aby zacząc gre - wersja testowa )
No i to narazie tyle... coz. Nie mam zbyt wiele wolnego czasu.
Zapraszam do sciągania
-
most23 :
Kazda zmienna ma swoj tz zasięg czyli "obszar" w ktorym bedzie znana. Jesli tworzysz dany obiekt i w dziale create dajesz zmienną ruch=5; to tyczy się to tylko tego obiektu. Tobie chodzi zapewne o zmienne globalne ( czyli takie zmienne do ktorych mozna się odwolac z kazdego obiektu ( kazdego miejsca mowiąc potocznie )) Zmienne takie tworzysz z dopiskiem global np:
global.ruch=5;
Taką zmienną mozesz spokojnie dac jako argument skryptu i napewno zadziala ( chyba ze wartosc zmiennej nie jest znana w momencie wykonywania skryptu )
Innym sposobem jest "zwrocenie się do obiektu , ktory jest w posiadaniu zmiennej " o podanie jej wartosci, a robi się to tak jak podal Sly bez uprzedniego wyjasnienia o co w tym chodzi ;) czyli :
wykonaj_skrypt(nazwa_obiektu_w_ktorym_stworzyles_zmienną.nazwa_zmiennej);
-
Informuję wszem i wobec ze wyszla kolejna wersja ponga3D. Plik zostal podmieniony i znajduje się pod tym samym adresem. Z nowych rzeczy :
- widok zza paletki
- dzwięk
- dokladniejsza detekcja kolizji
- mozliwosc wplynięcia na tor lotu pilki
- poprawione AI przeciwnika
Zapraszam do sciągania...
Saper
w Gotowe gry i programy
Opublikowano
Fajna gierka, niezle wykonanie, kradzione zasoby :]
Gry nie da sie zamknąć a przy 100% zaminowania nie da sie jej nawet ukonczyc... ewentualnie pole nie jest zaminowane w 100 procentach. Dodatkowo jesli moge cos zasugerowac zrobilbym wieksze kratki bo klikanie w te malenstwa jest uciazliwe :)