Skocz do zawartości

[engine][Menu,submenu,highscore]


Rekomendowane odpowiedzi

Cze :)

Tak jak w temacie engine : Menu,submenu,highscore. Mam nadzieje że się spodoba. Nie wiem co by tu napisać, poza tym że engine jest już raczej, dla bardziej zaawansowanych użytkowników gm, choć mam nadzieje że, będzie na tyle prosty, że i nieco słabsi użytkownicy będą mieli z niego pożytek.

Co prawda brak komentarzy, ale to dlatego że to nie przykład, a engin (tym się usprawiedliwiam :P)

no i myślę, że ma to wszystko czego taka zwykła gra potrzebuje, a co często jest pomijane w gmowskich produkcjach.

 

no nic wystarczy gadanie macie. :)

 

Download

 

Edit : Jeśli znajdziecie jakiegoś buga dajcie znać.

Odnośnik do komentarza
Udostępnij na innych stronach

Szczerze, nie użyłbym takiego systemu menu :)

@: Chociażby to, że za dużo obiektów :P

 

3 obiekty to dużo ?

 

Reszta to tylko dodatki .

 

przecież manu zewnętrzne jako takie może zostać bez problemu zmienić, zrobiłem takie bo jest proste i w mare ładne, ale całe pierwsze menu można bez problemu, zrobić w jednym obiekcie co w ostateczności dało by 4 obiekty, obj_main_menu , obj_sub_menu ,obj_hs_controler,obj_show_hs bo tak naprawdę te 3 ostatnie obiekty w tym enginie się liczą, nie powiedział bym ze to dużo.

Odnośnik do komentarza
Udostępnij na innych stronach

użył bym parentów i bardziej ogólnych funkcji :P

 

A ja nie widzę poco i czy ten twój sposób naprawdę byłby bardziej optymalny

 

ponieważ całe sub menu jest w jednym obiekcie fakt nie jest może mały to kod ale przed hwilą zarzucono mi że obiektów jest za dużo a tak zamiast rozbijać go na części i robić jakieś patenty niewiadoma poco wszystko mam w jednym obiekcie :)

 

I nie rozumiem co masz na myśli przez ogólne funkcje pierwszy raz spotykam się z takim terminem O_o?

 

Przecież nie korzystam z własnych funkcji tam

Odnośnik do komentarza
Udostępnij na innych stronach

dodając jednego parenta nie musiał byś po x razy przekopiowywać eventy i ich kody :P

 

czy mi się wydawało czy te sub menu nie było wyśrodkowane? xP

Nie było wyśrodkowane, a kodu nie kopiowałem x razy, nie używam dwóch takich samych kodów, 

więc wciąż nie wiem na jakiej podstawie Wysnułeś taki wniosek.

Odnośnik do komentarza
Udostępnij na innych stronach

a eventy create, mouse leave i mouse enter w tych buttonach menu? ;>

je wszystkie mógł byś wstawić do obj parent i pozostałym wystarczyło by zaznaczyć tego parenta :P

Ale patrzysz na część którą z gruntu założyłem że każdy sobie zmieni na własne potrzeby, więc nie będę zapiszczał że akurat do tego się nie przyłożyłem, bo i poco przecież główne menu jest najpuściej zmienić z całego engina.

 

 

i przede wszystkim pętlę repeat zastąpić pętlą for

I tu się nie zgodzę bo te dwie pętle nie działają tak samo, i akurat tu bardziej przydaje się pętla repeat.

Odnośnik do komentarza
Udostępnij na innych stronach

I tu się nie zgodzę bo te dwie pętle nie działają tak samo, i akurat tu bardziej przydaje się pętla repeat.
to dziwne, że w takim razie używasz pętli repeat zupełnie jak for

 

nie powiesz mi, że Twojego kodu z repeat:

GML
repeat(10)

{

i+=1

draw_text(20,((i-1)*40),string(i)+'.'+string(highscore_name(i)))

a=string_length(string(highscore_value(i)))

draw_text(630-(a*15),((i-1)*40),string(highscore_value(i)))

}

i=0

nie zastąpie moim z pętlą for:

GML
for ( i = 0; i < 10; i += 1 )

{

draw_text( 20 , (i-1)*40 , string( i ) + '.' + string( highscore_name( i )))

a = string_length( string( highscore_value( i )))

draw_text( 630 - ( a * 15 ) , ( i-1 )*40 , string( highscore_value( i )))

}

hm? ;)

 

PS. Wszystkie pętle działają podobnie.

Odnośnik do komentarza
Udostępnij na innych stronach

to dziwne, że w takim razie używasz pętli repeat zupełnie jak for

 

nie powiesz mi, że Twojego kodu z repeat:GMLrepeat(10)

{

i+=1

draw_text(20,((i-1)*40),string(i)+'.'+string(highscore_name(i)))

a=string_length(string(highscore_value(i)))

draw_text(630-(a*15),((i-1)*40),string(highscore_value(i)))

}

i=0

nie zastąpie moim z pętlą for:GMLfor ( i = 0; i < 10; i += 1 )

{

    draw_text( 20 , (i-1)*40 , string( i ) + '.' + string( highscore_name( i )))

    a = string_length( string( highscore_value( i )))

    draw_text( 630 - ( a * 15 ) , ( i-1 )*40 , string( highscore_value( i )))

}

hm? ;)

 

PS. Wszystkie pętle działają podobnie.

 

Możeco co do tego masz racje nie wiem nie sprawdzałem tego, wiem ze kiedyś miałem problem z funkcja for, jeśli chodzi o rysowanie w draw, ale to dalej nie przekonuje mnie, że pętla repeat jest gorsza od for, bo niby czemu miała by być, z czego to niby wnioskujesz ? bo jest używana w delphi (borlandzie) a nie w c++ ? przecież to gm a nie tamte języki programowania.

 

A i dużej różnicy nie widzę pomiędzy moim kodem a tym co poprawiłeś, jedynie zmienna 'I' zmieniła miejsce, i tyle ot niesamowita optymalizacja co i tak na prędkości gry, nie ma żadnego wpływu.

 

 

Jeśli chcesz mnie przekonać, to daj lepiej jakieś techniczne potwierdzenie twoich słów.

a do tego czasu jednak będę korzystać z repeat, co oczywiście nie znaczy że nie korzystam z for, to zależy od tego do czego potrzebuje danej funkcji. :)

Odnośnik do komentarza
Udostępnij na innych stronach

ale to dalej nie przekonuje mnie, że pętla repeat jest gorsza od for
nie mówię, ze repeat jest gorsza, tylko moim zdaniem pętla for znajduje tutaj lepsze zastosowanie..

 

A i dużej różnicy nie widzę pomiędzy moim kodem a tym co poprawiłeś, jedynie zmienna 'I' zmieniła miejsce, i tyle ot niesamowita optymalizacja co i tak na prędkości gry, nie ma żadnego wpływu.

nie ma wpływu, ale po to jest for aby używać for a nie cudować i samemu zwiększać tą zmienną :P

nic Ci nie narzucam, tylko potraktuj to jako ułatwienie ;)

Odnośnik do komentarza
Udostępnij na innych stronach

nie ma wpływu, ale po to jest for aby używać for a nie cudować i samemu zwiększać tą zmienną :P

nic Ci nie narzucam, tylko potraktuj to jako ułatwienie ;)

 

Burdzej bym to nazwał alternatywą niż uproszczeniem

no ale dzięki za info na ten temat :)

Odnośnik do komentarza
Udostępnij na innych stronach

Człowieku, jakie ty masz problemy. Sam zrobiłeś błąd i do nas masz pretensje... Pętla for jest w tym wypadku lepsza, zresztą, nie ma nawet co dyskutować. Nie po to jest iterator, by narzekać i używać repeat... A jeśli twoje "programowanie" będzie się zawsze ograniczało do GMa - gratuluję. Poza tym - pętla for najwięcej oferuje ze wszystkich.

for( start; warunek; iteracja (step) )

Jeśli niepotrzebny warunek - to go wywal. Niepotrzebny start - wywal. Niepotrzebny warunek, start i iteracja - nie używaj pętli for.

 

Nic nadzwyczajnego, dodatkowo, ograniczyłbym się do około.. hmm... 30? linijek kodu, by uzyskać identyczny efekt i mamy prawo narzekać, a ty nie masz prawa mieć do nas pretensji.

Odnośnik do komentarza
Udostępnij na innych stronach

Człowieku, jakie ty masz problemy. Sam zrobiłeś błąd i do nas masz pretensje... P

Zabawy jesteś kto mówi ze mam pretensje ? wy macie swój styl programowania, ja mam swój, i tyle ja wole repeat zabronisz mi ? masz za duże mniemanie o sobie.

A jeśli twoje "programowanie" będzie się zawsze ograniczało do GMa - gratuluję

Przykro mi cię rozczarować ale znam tez inny języki programowania.

 

Poza tym - pętla for najwięcej oferuje ze wszystkich.

for( start; warunek; iteracja (step) )

Jeśli niepotrzebny warunek - to go wywal. Niepotrzebny start - wywal. Niepotrzebny warunek, start i iteracja

No i nie była mi potrzebna, wystarczyła mi prostsza repeat.

 

nie używaj pętli for.

Nie pozwiedzałem ze jej nie używam, ale nie ograniczam się do jednej pętli (nie tak jak ty),

Po to są inne pętle by je też używać co nie ?

Nic nadzwyczajnego, dodatkowo, ograniczyłbym się do około.. hmm... 30? linijek kodu, by uzyskać identyczny efekt i mamy prawo narzekać, a ty nie masz prawa mieć do nas pretensji.

 

Pretensje phi, chłopie przecież nie każe ci używać mojego engina, jak ci się tak nie podoba,

i to ty masz jakieś pretensje że użyłem pętle repeat.

Ja cały czas broni tylko swojego stanowiska, i odpieram atak tyle co robie :)

i jak już wspomniałem, po to są inne pętle by je tez używać, nie podoba ci się mój styl programowania, to nie pobieraj moich produkcji przecież cię nie zmuszam,więc nie wiem czego się tak napuszasz jak jakiś kogut.:)

Odnośnik do komentarza
Udostępnij na innych stronach

Czy mamy dawać jakieś creditsy i czy swobodnie można to modyfikować? Mi się to wydaje dosyć ciekawe.

Nie nie trzeba żadnych creditsów, a co za tym idzie i co wcześniej podkreśliłem, tak modyfikujcie dozwoli, przecież jest to oczywiste ze każdy musi to dopasować do swoich potrzeb. :)

 

Przykro mi, ale obrażanie tych, którzy krytykują coś, co ty opublikowałeś mija się z celem

Przykro mi nikogo nie krytykowałem (a jeśli ktoś czuje się skrytykowany po przepraszam nie był moim zamiarem nikogo krytykować),lepiej zapoznaj się z całym tematem.

jak już wspomniałem broniłem tylko swojego stanowiska.

I tak, ograniczam się do pętli for i while, i one mi w zupełności wystarczają...

No i ok, nie widzę w tym nic złego, nie zabraniam ci, bo i co mnie to.

Odnośnik do komentarza
Udostępnij na innych stronach

Pental daj już spokój. To jest tylko przykład i jak Xarfron napisał nie każdy musi z niego korzystać.

Poza tym i tak pewnie większość nawet nie zajrzy do kodu tylko w ciemno przekopiuje.

 

przykład spełnia swoją funkcję, więc już się o to nie czepiajmy.

Ja też mam swoje przyzwyczajenia jeśli chodzi o kod i choć byś błagał i prosił bym tego nie zmienił :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ę...