Skocz do zawartości

DarkLiquidus

Użytkownicy
  • Postów

    51
  • Dołączył

  • Ostatnia wizyta

Treść opublikowana przez DarkLiquidus

  1. Witam! Stworzyłem grę typu Tyrian. Chcę żeby kiedy objekt controller_wrogs3 zostanie stworzony(tutaj ma być stworzony kiedy zmienna "o" będzie równać się 30), stworzył on samolot. Więc w jakimś innym obiekcie piszę: GML If (o=30) then instance_create(random(room_width),random(room_height),controller_wrogs3); I w tym stworzonym obiekcie piszę skrypt w evencie create: GML instance_create(random(room_width),random(-200),samolot3); // Samolot3 to samolot, który miał być stworzony</span> Niby wszystko powinno pójść zgodnie z planem, ale kiedy zmienna o równa się 30, to tworzą się dosłownie tysiące objektów "samolot3" zamiast jednego! Proszę o pomoc!!!
  2. Dobra, zrobiłem sposobem wikku9 i działa!!!! Dzięki!!!
  3. Ale dlaczego w tym drugim skrypcie masz po with(samolot2), instance_destroy()?
  4. Witam! Tworzę grę typu Tyrian(chyba wiecie o co chodzi) i zrobiłem już cały jeden typ samolotów i cały ich system, więc wziąłem się za robienie drugiego typu samolotów. Ustaliłem w skryptach, że kiedy gracz będzie miał 120 punktów to pojawi się pierwszy samolot drugiego typu, a jak będzie miał 160, to pojawi się drugi samolot tego typu, a do tego zniszczą się wszystkie samoloty pierwszego typu. Chciałem aby się zniszczyły, bo nie chciałem, żeby tych samolotów latało zbyt dużo w roomie. Po zrobieniu tego wszystkiego, wziąłem się za robienie systemu pojawiania się samolotów typu drugiego. Stworzyłem taki skrypt w obiekcie controller_wrogs2, w którym pojawi się samolot typu drugiego po upływie 10 sekund jeśli ilość jego instance'ów jest większa/równa 1. GML with(samolot2) if (instance_count>1) or (instance_count=1) then alarm[1]= 10*room_speed; // Nie wiem do jakiego eventa to wrzucić. Wrzuciłem do eventa "ctrl" bo jest to klawisz strzału, więc komputer co chwila będzie sprawdzał, czy ilość instance'ów jest większa/równa 1. Wiem, że to dość głupie, więc poradźcie do jakiego eventa to mogę wrzucić.</span> A w evencie Alarm 1: GML instance_create(random(570),random(-200),samolot2) alarm[1]=10*room_speed; Myślałem, że wszystko spokojnie zadziała, ale choćbym czekał 2 godziny na pojawienie się tego samolotu to nic nie działa... Proszę o pomoc!!! PS: Jakby co to object controller_wrogs2 jest w roomie.
  5. Jaki jest odpowiednik klocka change instance w gmlu? Bo mógłbym zrobić tak, żeby zamiast znikania wybuchały.
  6. Dokładnie to chcę żeby po prostu się zniszczyły kiedy gracz będzie miał 200-210 punktów.
  7. Możesz mi to rozpisać?(jestem początkującym)
  8. A jeśli objectów samolot1 jest np. 20 na mapie to wystarczy zrobić jedno instance_destroy()?
  9. Chciałem tego skrypta nieco urozmaicić i napisałem coś takiego; if (score>200) and (score<210) then with(samolot1) begin instance_destroy() instance_destroy() instance_destroy() instance_destroy() instance_destroy() instance_destroy(); end; Ale nie wiem dlaczego nic się nie dzieje...
  10. Witam! Chcę stworzyć skrypt, który wpiszę w obojętnie jakiego eventa, który zniszczy dany obiekt w momencie kiedy gracz uzyska 200 punktów. Piszę więc: if (score=200) then ..... i tutaj mam problem, ponieważ nie mogę znaleźć wyrażenia które spowodowałoby zniszczenie innego instance'a. Istnieje wyrażenie instance_destroy() ale ono powoduje zniszczenie instance'a obiektu, w którym zamontowałem danego eventa, a chcę zniszczyć instance'a obiektu innego. Proszę o pomoc!!!
  11. Zrobiłem to zamiast gmlem to klockiem create instance i po prostu wcisnąłem relative i działa.
  12. Ale teraz jest błąd: unknown variable xx.
  13. Ej, napisałem bardzo podobnego skrypta, który miał spowodować, że wybuchu mojego statku pojawi się on na nowo po jakimś czasie w tym samym miejscu: instance_create(gracz.x,gracz.y,gracz); ale wyskakuje mi błąd unknown variable x. Przecież pisałem w poście powyżej podobnego skrypta i taki błąd mi nie wyskoczył.
  14. Napisałem po swojemu i prawie zadziałało(tutaj gracz to mój samolot): effect_create_above(ef_explosion,gracz.x,gracz.y,1,c_orange)
  15. To dziwne, ale zawsze wybuch jest z lewej strony ekranu zawsze idealnie w tym samym miejscu, kiedy kieruję się waszymi instrukcjami.
  16. Ale ja nie mam sprita wybuchu tylko piszę w execute a piece of code: effect_create_above(ef_explosion,x,y,1,c_orange); Jak ja mam tutaj ustawić center?
  17. Próbowałem wszystkiego, o czym mi mówiliście, ale i tak wybuch jest zupełnie obok. Żadnych originów nie zmieniałem wszędzie są ustawione na zero jakby co.
  18. Tylko że ja ustawiłem żeby mój samolot niszczył się w momencie, gdy straci całe życie, a nie w momencie zderzenia ze statkiem. W momencie zderzenia ze statkiem mojemu samolotowi odejmuje się 25 życia. A chyba tych skryptów nie mogę wpisać w evencie no more health...
  19. Witam! Stworzyłem grę, w której trzeba lecieć samolotem i niszczyć samoloty przeciwnika. Na samolot patrzymy z góry. Jest to jednym słowem bardzo znany gatunek gry. W tej grze zrobiłem już dość dużo, ale zapomniałem o tym, żeby podczas zderzenia z kilkoma samolotami przeciwnika mój samolot wybuchał. Od razu się za to zabrałem. Stworzyłem sprita, a potem obj z eksplozją. Zaprogramowałem tak, żeby po straceniu całego życia mojego samolotu - wybuchał. Niestety wybuch pojawia się zupełnie obok miejsca, gdzie mój samolot został zniszczony(link do zdjęcia poniżej). http://img227.imageshack.us/img227/434/haha1.png Proszę o pomoc!!!
  20. Nie działa mi dosłownie nic z całej funkcji draw. Nie działa mi ani draw sprite, ani draw backgound, ani draw text. Mam game makera 8.0 Pro, więc nie powinno być takich problemów.
  21. Napisałem teraz: player1s=0; player2s=0; i działa. Ale teraz odpisz mi może przy temacie o problemie przy funkcji draw text, bo po zrobieniu tego co mi tutaj powiedzieliście, chciałbym jakoś napisać te punkty, ale nie mogę. Odpisz przy tamtym temacie. Z góry dziękuję.
  22. Zrobiłem to co powiedziałeś, lecz tak czy siak nic się nie pojawia...
  23. Witam! Jeszcze nie zauważyłem, żeby ktoś na tym forum zgłosił taki problem. Mam duży problem z funkcją draw w game makerze. Po prostu mi ona ni działa. W obojętnie jakiej grze otwieram okno jakiegoś obiektu, tworzę eventa press Space i do niego piszę np. takiego skrypta: draw_text(60,60,'Punkty gracza 2'); Niby po wciśnięciu spacji na współrzędnych x=60 oraz y=60 powinien pojawić się napis: Punkty gracza 2. Niestety, ale nic się nie pojawia. Próbowałem to robić także na klockach. Zrobiłem eventa press Space, a następnie wstawiłem klocka draw text. Napisałem w nim jakiś tekst, lecz i tak w grze po wciśnięciu spacji nic się nie pojawiło. Ustawiałem nawet depth obiektu na -10000, żeby był na samym wierzchu, ale to i tak nic nie dało. Proszę o pomoc!!!
  24. Wielkie dzięki, ale mam jeszcze jedno pytanie. Bo zrobiłem wszystko tak jak mi powiedzieliście, ale po zrobieniu tego wszystkiego wpadłem na pomysł, żeby przy każdym kontakcie obiektu z danym obiektem do punktów gracza pierwszego, bądź drugiego dodawany był 1 punkt. Więc piszę w create player1.score=0; player2.score=0; A potem w pierwszym collision piszę player1.score+=1; A w collision z drugim obiektem piszę player2.score+=1 Ale po zrobieniu tego wszystkiego podczas kontaktu obiektu z danym obiektem wyskakuje mi błąd: unknown variable player1. Proszę jeszcze raz o pomoc!!!
×
×
  • Dodaj nową pozycję...