Skocz do zawartości

Kolejny poziom w grze.


Rekomendowane odpowiedzi

Witam,

postanowiłem stworzyć grę nie znając do końca żadnego z języków oprogramowania. Próbowałem pokombinować trochę przy C++ ale mój młody, 13-letni umysł nic nie "zakumał".

Wybrałem znany nam wszystkim "GRORÓB" GameMaker 8.1. Po chwili dumania nad pomysłami związanymi z moją pierwszą grą wziąłem się do roboty i stworzyłem pierwszy poziom.

Zasady gry są wytłumaczone (niezbyt jasno) w Info która włącza się po uruchomieniu gry. Grę w wersji .gm81 pobierzesz tu.

Gra jest ukryta pod nazwą "Pierwsza_gra_.gm81". Gdy uporam się z problemem dorobię jeszcze 9 poziomów i dodatki typu Sounds.

 

Problem:

 

Po zatrzymaniu wszystkich "Buziek" powinien uruchomić się kolejny poziom, czyż nie? Jednak brak mi umiejętności do tego. :( Proszę o wytłumaczenie jak to zrobić i opcjonalne przerobienie plików.

Z góry dziękuję.

 

P.S. Uważajcie na niewidzialny przycisk otwierający Info. :)

Później go usunę.

Odnośnik do komentarza
Udostępnij na innych stronach

jaki masz kod na zatrzymanie "buźki",bo nie mam gm81?

 

e:albo klocki :P

 

ok, mam :D

 

w bohaterze do uratowanie, w evencie left pressed, po klocku od ruszania daj z 4 zakladki execute code i wpisz tam:

global.buzki+=1

if global.buzki=instance_number(Bohater do uratowania.){

room_goto_next()

}

 

e2: i zmien nazwe obiektow, bo nie moze byc spacji(kropek i polskich znakow tez) :D

e3:wejdz jeszcze w event other->room start i daj execute code i: global.buzki=0

Odnośnik do komentarza
Udostępnij na innych stronach

Dzięki za szybką odp. co zapewne jest częste na tym forum. :)

Ale w Execute Code linijkę

global.buzki+=1

mam zamienić na

global.Bohaterdouratowania+=1

Pozmieniałem nazwy obiektów. "Buźki" to nie żaden obiekt. Nazwałem to tak w Info żeby gracz wiedział o co chodzi.

Nazwy obiektów zmieniłem z:

Bohater do uratowania. ; Przegroda. ; Niszczy bohatera. ; Kości. ; Object 5. ; Object 4.

na:

Bohaterdouratowania ; Przegroda ; Niszczybohatera ; Kosci ; Object 5 ; Object 4

 

Jakby komuś byłoby potrzebne.

 

Tu raport po wklejeniu Kodu wysłanego od karolo320

ERROR in
action number 2
of Mouse Event for Left Button
for object Bohaterdouratowania:

Error in code at line 1:
   global.buzki+=1
  ^
at position 1: Unknown variable buzki

 

Ten problem pojawia się po kliknięciu na obiekt "Bohaterdouratowania"

Odnośnik do komentarza
Udostępnij na innych stronach

Gra nie powala, ale nie jest zła. Zmieniłem sobie ten przycisk info, a poza tym to łatwiej ci bedzie uzywac nazw angielskich dla obiektow i nie uzywac spacji np. ja robię tak Obj_Hero, Obj_Bullet itp. to jest na prawdę przydatne i przy okazji +1 do anglika :P.

Odnośnik do komentarza
Udostępnij na innych stronach

Wgrałem kolejną wersję gry pod nazwą Do celu - Wersja 0.2

Jednak bug uniemożliwia przejście 1 poziomu.

 

@EDIT

 

Wkleiłem ponownie to co podałeś. Problem ten sam. Wklejam raport który pokazuję się po kliknięciu na obiekt "Bohaterdouratowania"

 

ERROR in
action number 2
of Mouse Event for Left Button
for object Bohaterdouratowania:

Error in code at line 1:
   global.buzki+=1
  ^
at position 1: Unknown variable buzki

 

Może dam Execute Code pod np. PPM?

Odnośnik do komentarza
Udostępnij na innych stronach

Małe pytanko, w jakim języku oprogramowania wpisywany jest kod do Execute Code?

 

W gml - game maker language - język game maker'a(nie spolszczam nazwy programu, bo tego się nie robi). Skoro game maker został napisany w c++ to widać w nim jego śladowe ilości i składnię bardzo do niego zbliżoną.

Odnośnik do komentarza
Udostępnij na innych stronach

Oto, co masz do poprawienia:

-Zmień event w obiekcie Bohaterdouratowania z Left Button na Left Pressed (oto różnica: Left Pressed zadziała tylko w momencie kliknięcia, a Left Button - dopóki będzie wciśnięty LPM)

-Zmień kod w powyższym evencie w klocku "Execute a piece of code" na poniższy:

GML
global.test+=1

if global.test=instance_number(Bohaterdouratowania){

room_goto_next()

} //w poprzednim kodzie był warunek, który nie mógł zostać spełniony - dlaczego?</span>

-Zmień kod w "Creation code" roomu buzki1 na:

GML
global.test = 0 //trzeba pamiętać, jak nazywa się zmienna sterująca</span>
Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...