Skocz do zawartości

Szukam silnika


Rekomendowane odpowiedzi

Hmmm...

 

Engine'u raczej nie znajdziesz - sam musisz sobie napisać.

Nie chce mi się tego analizować, ale wydaje się proste...

 

A co dokładnie za teren ma być malowany? Mają być tworzone całe serie platform? Czy po prostu co jakiś czas przeciwnicy?

 

W sumie to chyba by wystarczyło dać każdemu obiektowi "aktywnemu" (przeciwnikom, bohaterowi, innym przeszkodom...) w Step

GML
x -= 1;

if(x+sprite_width < 0)

{

instance_destroy();

}

, a ruch platformowy pozostaje normalny, ten sam.

I tylko jakiś obj_controller, który by co jakiś czad tworzył przeciwników - im dłużej gracz gra, tym bardziej skomplikowanych :)

 

Edit: Lub trochę inaczej, nie dawaj tego kodu z przesuwaniem do playera :P

Odnośnik do komentarza
Udostępnij na innych stronach

Jaki klocek z kostką znowu :P ?

Powiedz konkretnie, co chcesz zrobić.

 

Nudzi mi się, to masz jeszcze bajer do powstawania platform :P (przyjmuję, że jeden bloczek ma rozmiar 16*16)

create_platform()

GML
// create_platform(x, y, size)

// Tworzy platforme o podanym rozmiarze (szerokosci (mierzone w ilosci bloczkow))

i = 0;

max_i = argument2;

while(i < max_i)

{

instance_create(argument0+(i*16), argument1, obj_wall);

 

i += 1;

}

obj_controller -> Alarm 0

GML
create_platform(room_width, random(room_height-16), round(random(8)));

 

alarm[0] = round(random(150));

 

Nie testowałem, ale powinno działać.

Skrypt powinien dodawać w losowych odstępach czasu w losowych miejscach platformy o losowej szerokości :P

Co do poprawienia...? Na pewne trzeba sprawdzać czy miejsce, na którym chcem robić platformę jest zajęte czy nie. Bo teraz mogą powstawać platformy na platformach :P

 

PS: A, w Stepie obj_controller ustaw Alarm 0 na 0 :D

Odnośnik do komentarza
Udostępnij na innych stronach

Ale jak nie działa :P ?

Pisałem z głowy, także możliwe, że coś nie działa.

 

Sprawdzać mi sę nie chce, ale jak patrzę, to po prostu musi działać.

A jak i tak nie działa, to dodaj do pętli (pod instance_create()) "show_message("Niby dodaje...");" - zobaczymy, czy w ogóle ten kod się wykonuje

Odnośnik do komentarza
Udostępnij na innych stronach

Że jak na określonych pozycjach?

 

Że wszystkie platformy ma na jednej wysokości robić Oo ?

 

Czy może co takiego:

GML
create_platform(room_width, choose(64, 128, 144, 176, 192, 304, 336, 448), round(random(8)));
Oczywiście zamiast tych wartości dawaj własne. Lub, dla zaokrąglenia do 16-tek:
GML
create_platform(room_width, round(random(480/16))*16, round(random(8)));

 

A tak poza tym to napisałem dobrze, tylko kazałem ci ustawić Alarm na 0, a powinno się ustawić na 1.

Ciekawe, bo dla GM'a jak zmienna alarm[x] jest równa 0, to się wykonuje, a -1, to alarm "oczekuje". Ale najwidoczniej najpierw odjęło od tego zera 1, a dopiero później wykonywał się event alarmu (sprawdzając, czy jest równy 0) :P

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ę...