Skocz do zawartości

locked i licznik


kowal

Rekomendowane odpowiedzi

Yo ziomy :) mam problemik - słuchajcie.

 

Problem kowala pierwszy:

Mam plansze i na niej kilkanascie obiektow tego samego rodzaju. zachcialo mi sie niektore z nich pousowac ale okazało się, że nie moge i pisze locked - ale w innych obiektach teg samego rodzaju nie tylko w bodajze trzech. tak samo sa inne obiekty i ich tez nie moge usona. Czy to dlatego, ze w nich sa wykonywane jakies akcje czy co ?? pomozcie

 

Problem kowala drugi:

Mamy taki sobie kodzik:

 

w colision to gracz:

global.mana+=8
instance_destroy();

\

 

i teraz właśnie problem - patrzajcie.

mam na przykład powiedzmy 98 many na 100 mozliwej, i co teraz zrobic aby gdy wezme taki obiekt many to zeby on dodawal nam 2 a nie 8?? Bo 100 jest max i ma uzupelniac tylko tyle ile moze.

 

chyba bedzie coś z if ale co dokladnie to nie wiem

 

if (global.mana <= 100)//dodaje many tylko do 100- czyli do pelnego magazynku many :)
{
global.mana+=8
instance_destroy();
}

Odnośnik do komentarza
Udostępnij na innych stronach

Problem 1 :

kowal2.png

Kliknij tam ;) Zablokowałeś edycje rooma tym przyciskiem po lewej :] Ah, kowal :]

 

Problem 2 :

if (global.mana <= 100)//dodaje many tylko do 100- czyli do pelnego magazynku many :)
{
global.mana+=8

if global.mana>100 // Jeśli manna większa od 100 to ustaw ją na 100
global.mana=100;

instance_destroy();
}

Odnośnik do komentarza
Udostępnij na innych stronach

Ano patrz qrde. szczeze mowiąc nigdy nie zauwazylem takiej opcji :) dzieki wszystko rozwiazane - prawde mowiąc potrzeba troszke wyobraźni i wszystko sie zrobi - chodzi mi o ten drogi problem, przeciez to takie banalne heheh. Ok fenx nara.

Odnośnik do komentarza
Udostępnij na innych stronach

Nom a ja to zrobilem tak :) ale twoj kod krotszy i milszy :thumbsup:

 

 

 

if (global.mana <= 100)//dodaje many tylko do 100- czyli do pelnego magazynku many :)
{
   global.mana+= floor(random(10));
   if global.mana>100 // Jeśli manna większa od 100 to ustaw ją na 100
   global.mana=100;

       if (global.mana <= 99)// jezeli mana jest rowna 99 czyli 100 :) to gwiazdki many sie nie niszcą :)
       {
       instance_destroy();
       }

   
}

 

a tu jeszcze jedno pytano na pewno zauwazyliscie cos takiego:

 

global.mana+= floor(random(10));

 

to jest losowośc od 0 do 10 ale jak zrobic losowosc ok np. 5 do 12?? czy tak to jest?

 

global.mana+= 5+ floor(random(12));

Odnośnik do komentarza
Udostępnij na innych stronach

Dobra wracajac do tematu - kontynuacja mysli :) oto kod:

 

if ( global.mana + 8 <= 100 )
{                           
   global.mana+= 5+ ceil(random(7));
   if global.mana>100 
   global.mana=100;

       
instance_destroy();
  
}

 

I teraz zachodzi problem - mianowicie jesli

 

global.mana=100;

 

globalną mana ustawimy na 100 to wtedy nie bedzie sie ona tracic - jeśli zucimy czar to nadal bedzie 100 many. macie jakies rozwiązanie na to??

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli :

if ( global.mana + 8 <= 100 )
{                          
  global.mana+= 5+ ceil(random(7));
  if global.mana>100
  global.mana=100;
      
instance_destroy();
}

To masz w step to manna będzie ci za szybko rosnąć. Czyli jak żucisz czar za 5 manny to nawet nie zauwarzysz zmiany. Musisz ograniczyć prędkość rośnięcia manny jakimś licznikiem np.

if ( global.mana + 8 <= 100 )
{var licznik;

   licznik=round(random(100));

  if licznik<10
  {                          
  global.mana+= 5+ ceil(random(7));
  if global.mana>100
  global.mana=100;
   }       

instance_destroy();
}

W ten sposób jest szansa że manna nie zostanie dodana do licznika. Ale jeśli dodaje ci manne jakiś przedmiot którego trzeba użyć lub podejść do niego to ten licznik nie będzie potrzebny.

 

A jeśli chodzi o odejmowanie to piszesz tylko :

global.mana-=koszt_manny;

I odejmuje ci tyle ile podasz.

 

EDIT

Pamiętaj tylko !

if global.mana<0
global.mana=0;

Żeby nie była minusowa ;)

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