Tak ale jak dałem :
d3d_draw_block(x+0,y+0,z+0,x+sprite_width,y+sprite_height,z+10,-1,1,1);
To przy sprawdzaniu kolizji obiekt wykrywał za wcześnie (lub za puźno) kolizje tego z tym w którym był rysowany blok.
Jest napisane :
A jednak można coś bardzo bliskiego temu zrobić (patrz pogrubiona część) :)
http://www.bronx.gaa.pl/3d_fps.exe (v0.1.1)
(Wiem mogłem spakować ^_^)
Ruch
W, A, S, D - Poruszanie
Space - Skok
LPM - Strzał
W wersji (v0.2)
- Pierwszy bot
- Poprawiona kolizja ze ścianami (Gotowe)
- Pierwsza sęsowna mapa ^_^
- 3 typy broni do wyboru (Gotowe)
- Poprawione strzelanie (Gotowe)
To tyle. Oceniajcie twór mego umysłu :P Ewentualne bugi proszę zgłaszać :)
Poprawki (v0.2)
- Grawitacja (Już taka jak trza)
- Dokładność strzelania
- Dodany celownik
- Skakanie (Czasami nie można było wyskoczyć)
- Kucanie (Klawisz R)
- Szybkość poruszania postaci
- Można wchodzić na niskie (h<=5) przeszkody bez konieczności skakania
- Usunięte skakanie w powietrzu
- Poprawiona kolizja z obiektami
- 3 typy broni
Poprawki (v0.1.1)
- Odwrucona mysz
- Grawitacja (troche większa)
- Limit 30FPS
Użyj instance_change ;)
bartoszwitek się mylisz. Gnysek nie zrobił błędu. Kod działa jak trzeba jeśli umie się go zastosować ;) Zresztą twój kod jest wadliwy.
Pamiętaj !
-><-
A żeby stworzyć kilka obiektów :
repeat(10)
instance_create(random(room_width),random(room_height),obiekt);
Ten kod tworzy ci 10 obiektów w losowej pozycji na planszy.
1. Po kiego zakładać setki tematów "arkanoid" jak można ciągnąć rozmowę w jednym.
2. Kurde starajcie się kożystać z opcji "szukaj". Może taki temat już istnieje. Apeluje tutaj do tych nowych użytkowników.
3. Możecie też z GG skorzystać. Przecież po to są profile.
Ranma możesz wrzucić ten regulamin ?
Heh, takie gadanie mnie denerwuje. Gra będzie praktycznie nie do przejścia jeśli się wykorzysta twój kod a zresztą można dobrze napisać w taki sposób :
x=pilka.x
Efekt jest ten sam :]
EDIT
Pamiętaj że liczy się też efekt a nie tylko długość kodu ;)
2QL4SQL twój skrypt będzie działał tylko poprawnie jeśli będzie w roomie tylko paletka, piłeczka i klocki. Jeśli coś innego się pojawi to nie będzie działać :] Proponuje tak :
W create, w klocku :
global.ilosc_klockow+=1;
W destroy, w klocku :
global.ilosc_klockow-=1;
W step w jakimś obiekcie :
if global.ilosc_klockow<=0
{
room_goto_previous();
}
Oczywiście musisz stworzyć zmienną global.ilosc_klockow :P
EDIT
Albo łatwiej :
ilosc=0;
for(a=0;a<instance_count;a+=1;)
{
var obiekt_id;
obiekt_id=instance_id[a];
if instance_exists(obiekt_id)
{
if obiekt_id.object_index=obj //Tutaj słowo "obj" zmień na nazwe obiektu klocka
{
ilosc+=1;
}
}
if ilosc<=0
{
room_goto_previous;
}
}
Ze screenów widać że nieźle się zapowiada. Ty poszczególnie sektory podzieliłeś na roomy?
Miałeś być nieaktywny do 5.08. :D
Patrysław
Napisałem od 22 lipca :P
Tymon