wstecz  |  dalej  |  spis treści

 

      Fast Loop

 

autor: Michał


  

Więc, od początku...

- Co to jest fast loop?
 

   Jest to rozszerzenie firmy Cellosoft. Jest ono tak bardzo przydatne, że w MultiMedia Fusion został wbudowany ten dodatek szybkiej pętli w standardową wersję.

-Jak i gdzie go używać?


  
To rozszerzenie ogranicza się do podstawowych zdarzeń. Zatrzymaj pętlę (stop loop), startuj pętlę (start loop) i pobierz numer pętli (loop triger).


   Powiedzmy, że już rozumiemy jakie są zdarzenia, ale jak je stosować?
Jeżeli, więc  chcemy zrobić strzał z szybkością większą niż 100.
Powiedzmy, że to będzie 20 pixeli na pętlę...
Gdybyśmy zwyczajnie dali zdarzenie:
 

Kod:

zawsze - dodaj do obiektu pocisk 20 pixeli


omijałoby nam przeszkody mniejsze niż te pixele.


   Dlatego też możemy sprawdzać co jeden pixel posługując się tym rozszerzeniem.
Bierzemy:
 

Kod:

Obiekt 'pocisk' - liczba większa niż 0 >> startuj pętlę nr 0 20 razy.
 

[Pobieramy nr pętli z fast loopa] Loop triger 0 >> dodaj 1 pixel do obiektu pocisk.
 

Obiekt 'pocisk' - liczba równa 0 >> stopuj pętlę nr 0.



   Dobrze. Więc mamy już ruch pocisku (w tym przypadku pocisk leci w prawo). Teraz jak zrobić kolizję? Nie, nie...
Nie bierzemy:
 

Kod:

Kolizje pocisk i przeciwnik >> ...


    W tym przypadku nic się nie zmieni - wyjdzie tak jakby się przesuwało 20 pixeli, a nie 1...
Należy zrobić tak:
 

Kod:

Loop triger 0
 

Kolizje pocisk i przeciwnik >> ...


   W tym przypadku wiemy, że fast loop będzie sprawdzał każdy pixel w pętli.

Można go używać wszędzie, gdzie chcemy coś szybko sprawdzić. Czyli rzeczy takie jak:
- lot pocisku
- ruch postaci
- wybuchy
- szybkie tworzenie obiektów

- A co na zakończenie?
   Fast loop
ma wiele więcej zastosowań, ale pomieszczenie ich wszystkich w jednym poście jest po po prostu niemożliwe. I o co tyle krzyku? Przecież to nie problem! Należy używać szybkiej pętli jak najczęściej, aby nasze gry były coraz bliżej profesjonalizmu.
Dziękuję za uwagę.

Michał

 


 

   wstecz  |  dalej  |  spis treści

by pepe9donkey