NukeBoards - Kreatywność przede wszystkim
FAQFAQ  SzukajSzukaj  UżytkownicyUżytkownicy  DownloadDownload
RejestracjaRejestracja  ZalogujZaloguj

Odpowiedz do tematu
Poprzedni temat :: Następny temat
Przeładowanie broni a amunicja w rezerwie.
Autor Wiadomość
Meeloks 
Starszy szeregowy


Główny edytor: Fusion 2.5
Pojedynki: nie
Posty: 9

1680 Prestiż
Wysłany: 01-10-2016, 12:12   Przeładowanie broni a amunicja w rezerwie.

Cześć! Chciałbym dowiedzieć się pewnej rzeczy. Mianowice jak zrobić przeładowanie broni.
Np. w magazynku maksymalnie mieści się nam 12 naboi. W rezerwie mamy ich 100. Gdy wystrzelimy 4 naboje i przeładujemy, to z rezerwy ubędzie nam 4 naboje, które wpadną do magazynku.

Z góry dziękuję za pomoc.
 
     
masterjayz 
Bohater


Główny edytor: MMF2 Dev
Drugi edytor: Fusion 2.5
Pojedynki: być może
Pomógł: 6 razy
Posty: 228

10209 Prestiż
Wysłany: 01-10-2016, 12:32   

To jest prosta rzecz, kiedyś zrobiłem sobie takie coś z nudów :-P

Jak przeładowujesz i ilość naboi w rezerwie jest większa niż maksymalna ilość amunicji w magazynku, to ustawiasz naboje w magazynku na maksymalną ich liczbę a od naboi w rezerwie odejmujesz ilość której brakuje w magazynku (czyli maks naboje - ilość naboi w magazynku, a i odjąć musisz zanim ustawisz magazynek na pełny). Jak amunicji w rezerwie jest mniej niż tyle ile brakuje to po prostu ustawiasz rezerwę na zero a do amunicji w magazynku dodajesz to co było w rezerwie.

To wszystko :D
 
     
BROO 
Pupogłowy
Wizard x-)


Główny edytor: TGF
Pojedynki: nie
Pomógł: 37 razy
Posty: 502

31680 Prestiż
Wysłany: 01-10-2016, 12:39   

Skopiuj sobie zdarzenie 12 razy:

1. Jeżeli wciśnięto przycisk przeładowania
+ Liczba amunicji w rezerwie > 0
+ Liczba amunicji w magazynku < 12
-> Zwiększ liczbę naboi w magazynku o 1
-> Zmniejsz liczbę naboi w rezerwie o 1

Do pierwszego z tych zdarzeń możesz dodać sobie odgłos przeładowania magazynku czy jakąś animację przeładowania.

Edit: poprawka błędu
Ostatnio zmieniony przez BROO 01-10-2016, 14:05, w całości zmieniany 1 raz  
 
     
Meeloks 
Starszy szeregowy


Główny edytor: Fusion 2.5
Pojedynki: nie
Posty: 9

1680 Prestiż
Wysłany: 01-10-2016, 12:42   

Czy mógłbym prosić o jakiś przykład, czy coś XD?
 
     
Minty 
Stwórczyni
omc dr fizyki


Główny edytor: Fusion 2.5 Dev
Drugi edytor: Construct
Pojedynki: być może
Pomogła: 259 razy
Posty: 3445

33730 Prestiż
Wysłany: 01-10-2016, 12:50   

+ Kliknięto
+ Mag > 0
- strzał
- Mag = Mag-1

I jeśli niczego nie mylę:

+ Wciśnięto przeładowanie
+ Rezerwa > 0
- tempMag = min(Rezerwa+Mag,12)
- Rezerwa = Rezerwa + Mag-tempMag
- Mag = tempMag


min(Rezerwa+Mag,12) - jeśli masz w sumie mniej, niż 12 naboi, to tylko tyle może wylądować w magazynku.
Mag-tempMag - to różnica między magazynkiem przed i po przeładowaniem, czyli strata nabojów z rezerwy
tempMag - bo Mag zależy od Rezerwy, która zmienia się przed Mag i odwrotnie. Zmienna pomocnicza, no.

Mimo wszysztko wszystkie rozwiązania w temacie są poprawne, mastera po prostu rozdziela min() na dwa zdarzenia, a BROO rozdziela każdy nabój w magazynku osobno co... jest dziwne, ale zadziała. Masz mnóstwo opcji, wybieraj :P

Bonus: http://romanx.webd.pl/?104
 
     
BROO 
Pupogłowy
Wizard x-)


Główny edytor: TGF
Pojedynki: nie
Pomógł: 37 razy
Posty: 502

31680 Prestiż
Wysłany: 01-10-2016, 12:53   

Wyjaśnij czego nie rozumiesz Meeloks.
 
     
Ishimura 
Chorąży


Główny edytor: Fusion 2.5 Dev
Drugi edytor: MMF2 Dev
Pojedynki: nie
Pomógł: 11 razy
Posty: 299

4531 Prestiż
Wysłany: 03-10-2016, 14:19   

A nie łatwiej.

Jeśli reload:

-odejmij od rezerwy 12 - aktualny stan magazynka
-dodaj do magazynku 12 - aktualny stan magazynka
 
     
Minty 
Stwórczyni
omc dr fizyki


Główny edytor: Fusion 2.5 Dev
Drugi edytor: Construct
Pojedynki: być może
Pomogła: 259 razy
Posty: 3445

33730 Prestiż
Wysłany: 04-10-2016, 14:45   

Ishimura napisał/a:
A nie łatwiej.

Jeśli reload:

-odejmij od rezerwy 12 - aktualny stan magazynka
-dodaj do magazynku 12 - aktualny stan magazynka

-ujemna rezerwa
 
     
Ishimura 
Chorąży


Główny edytor: Fusion 2.5 Dev
Drugi edytor: MMF2 Dev
Pojedynki: nie
Pomógł: 11 razy
Posty: 299

4531 Prestiż
Wysłany: 04-10-2016, 19:32   

No to zrobić to na loopie:

*Wcisnięto R
*Aktualny magazynek < 12

-Start loop przeładowanie (12- aktualny magazynek) times

*On loop przeładowanie
*Rezerwa > 0

-Dodaj 1 do magazynek
-Odejmij 1 od rezerwa

Wtedy nie ma ujemnej rezerwy i dodaje nam ile potrzeba, albo tyle ile zostało w rezerwie.
 
     
wermi 
Major
Depressive Disorder


Główny edytor: TGF
Drugi edytor: TGF
Pomogła: 53 razy
Posty: 1011


15733 Prestiż
Wysłany: 04-10-2016, 22:57   

to jest to samo co napisał broo
 
     
Ishimura 
Chorąży


Główny edytor: Fusion 2.5 Dev
Drugi edytor: MMF2 Dev
Pojedynki: nie
Pomógł: 11 razy
Posty: 299

4531 Prestiż
Wysłany: 04-10-2016, 23:13   

worm, rzeczywiście nie zauważyłem tej odpowiedzi.
 
     
Wyświetl posty z ostatnich:   
Odpowiedz do tematu
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Nie możesz załączać plików na tym forum
Możesz ściągać załączniki na tym forum
Dodaj temat do Ulubionych
Wersja do druku

Skocz do:  

PSK Cytaty Klikibaza - kopia wszystkich klików Klikipedia - encyklopedia o tworzeniu gier Discord KlikCzat Zaproszenie
Daj piniondza Wielkie Muzeum Klikowe

Powered by phpBB modified by Przemo © 2003 phpBB Group