Morti Opublikowano 1 Stycznia 2011 Udostępnij Opublikowano 1 Stycznia 2011 Siema. Mam nietypowy i dziwny problem. Otóż w create obiektu Hero mam takie coś: GML global.hp = 100; global.maxhp = 100; global.mp = 1; global.maxmp = 1; global.ak= 50; global.maxak = 50; A w obiekcie staty w Draw mam takie coś (w osobnych Execute Code: GML { draw_rectangle(view_xview+10,view_yview+10,view_xview+(global.hp/global.maxhp*100),view_yview+20,false) draw_set_color(c_red); } GML { draw_rectangle(view_xview+10,view_yview+30,view_xview+(global.mp/global.maxmp*100),view_yview+40,false) draw_set_color(c_blue); } GML { draw_rectangle(view_xview+10,view_yview+50,view_xview+(global.ak/global.maxak*100),view_yview+60,false) draw_set_color(c_orange); } I jest problem staty są w jakby innej kolejności co trzeba. (tak jak na tym screenie) I jeszcze mam drugie pytanie. Mam obiekt zwoj i w nim w create: GML aktywnosc=0 a w Left Pressem GML if (aktywnosc = 1) { aktywnosc = 0 } else aktywnosc=1 I mam obiekt sataty2 i w nim w Draw: GML if (zwoj.aktywnosc = 1) { draw_text(view_xview[0]+130,view_yview[0]+30,"atak: " +string(global.atak)) draw_set_color(c_white); } I tera jak klikam na zwoj to pojawia się tekst na pomarańczowo a pasek pomarańczowy zmienia się w biały :/ Pomażcie please. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
miki100 Opublikowano 1 Stycznia 2011 Udostępnij Opublikowano 1 Stycznia 2011 Dwa takie same błędy. Daj wszystkie draw_set_color przed draw_rectangle i na końcu draw daj draw_set_color(c_white); W zwoju też przesuń draw_set_color przed draw_text Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Jaklub Opublikowano 1 Stycznia 2011 Udostępnij Opublikowano 1 Stycznia 2011 Dwa takie same błędy. Daj wszystkie draw_set_color przed draw_rectangle i na końcu draw daj draw_set_color(c_white); W zwoju też przesuń draw_set_color przed draw_text na końcu rysowania pasków draw_set_color(c_white);? w sumie to jest zbędne. i tak będzie ustawiał biały kolor przed rysowaniem tekstu. za to zawsze trzeba pamiętać o ustawieniu draw_set_alpha(1); po rysowaniu z przezroczystością (tak swoją drogą) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
miki100 Opublikowano 1 Stycznia 2011 Udostępnij Opublikowano 1 Stycznia 2011 W sumie tak, ale inne obiekty mogłyby się pokolorować. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Morti Opublikowano 1 Stycznia 2011 Autor Udostępnij Opublikowano 1 Stycznia 2011 THX już wszystko działa :) mam jeszcze jedno pytanie. Jest obiekt plus i jak się na niego kliknie to: GML global.hp+=10 i co zrobić by np. jak mam 95hp to żeby po dodaniu nie było 105hp tylko 100hp (global.maxhp = 100;) ?? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Cordoba Opublikowano 1 Stycznia 2011 Udostępnij Opublikowano 1 Stycznia 2011 if global.hp >=100 { global.hp=100 } Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Morti Opublikowano 1 Stycznia 2011 Autor Udostępnij Opublikowano 1 Stycznia 2011 w sęsie, że if global.hp >=100 { global.hp=100 } global.hp+=10 Jak tak to i tak dodaje do 110hp Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Cordoba Opublikowano 1 Stycznia 2011 Udostępnij Opublikowano 1 Stycznia 2011 No, tak to zrób tak, jak masz pod tym : GML global.hp+=5 to daj: GML if global.hp>=95{global.hp=95} Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Morti Opublikowano 1 Stycznia 2011 Autor Udostępnij Opublikowano 1 Stycznia 2011 O działa. Dałem to w step :) THX wszystkim :) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Lord Opublikowano 1 Stycznia 2011 Udostępnij Opublikowano 1 Stycznia 2011 THX już wszystko działa :) mam jeszcze jedno pytanie. Jest obiekt plus i jak się na niego kliknie to: GML global.hp+=10 i co zrobić by np. jak mam 95hp to żeby po dodaniu nie było 105hp tylko 100hp (global.maxhp = 100;) ?? Bez żadnego stepa po prostu w evencie od klikania daj: GML global.hp = min( global.maxhp,global.hp + 10 ); Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Jaklub Opublikowano 1 Stycznia 2011 Udostępnij Opublikowano 1 Stycznia 2011 w sęsie, że if global.hp >=100 { global.hp=100 } global.hp+=10 Jak tak to i tak dodaje do 110hp koleś, widzę, że ty po prostu nie ogarniasz tego, że kod wykonuje się od góry do dołu. najpierw dodawaj hp, a później sprawdź, czy jest większe od maksymalnego hp, i wtedy ewentualnie ustaw na maxhp. poza tym, wcale nie trzeba sprawdzać, czy hp jest większe od maxhp w stepie, wystarczy sprawdzać tylko wtedy, gdy zmieniasz wartość hp. GML global.hp+=10; if(global.hp>global.maxhp) global.hp=global.maxhp; metoda HuderLorda też jest dobra Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi
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ę