Skocz do zawartości

VoiceBox


Ryuq666

Rekomendowane odpowiedzi

Witam.

 

Korzystam z tego "Endżinu" Battlefield TDS.

 

I właśnie mam done ok. 40 nowych pojazdów i mam problem, otóż chciałbym zrobić coś w stylu radia z CS. Wciskam np. "M" i wyskakuje menu:

 

1. Przyjalem

 

2. Odmawiam

 

3. Widze Wroga

 

4. Dostalem

 

wciskam "M" wyskakuje menu, wciskam "1" słychać dźwięk : radio_WidzeWroga2

 

itp... Tylko zupełnie nie wiem jak mam się za to zabrać, może mi ktoś pomóc? 

 

Myślę także jak dodać "rozmowy" wrogów, kiedy wróg zobaczy gracza to krzyczy "Widze Wroga" [po rusku, OFC :D]

 

Ale...w tym silniku nie ma niestety trójkątnej lini widoku [tak to się nazywa?] ale wrogowie widzą dookoła...

 

Wie ktoś jak to zrobić? Najbardziej zależy mi na tym Radiu pod M. Bo ja jak na razie nie jestem na tyle zaawansowany.

Odnośnik do komentarza
Udostępnij na innych stronach

Poczytaj o switch wtedy zrozumiesz jak to zrobić - jest w którymś z artykułów.

Mniej, więcej wygląda to tak:

 

GML
switch

{

case 1:

{

//kiedy wcisnie 1 akcja...

}

case 2:

{

//kiedy wcisnie 2 akcja...

}

//.... itd.

}

Teraz wytłumacze jak to można zrobić.

W Create tworzysz zmienną radio=false, w Drawie dajesz że jeżeli radio=true to drawuje tekst np. 1.Zrozumialem itd.

W Stepie dajesz, że kiedy wciśniesz klawisz M i radio=false to radio=true w przeciwnym wypadku radio=false.

Potem w Stepie, kiedy radio=true dajesz switch i tam dajesz co ma się dziać, czyli jeżeli wcisnie 1, to case 1 się aktywuje i ma się odpalić dzwięk.Już wiesz jak to zrobić ?

edit*A, i nie jestem pewien, ale chyba też da się to na listach zrobić.

Odnośnik do komentarza
Udostępnij na innych stronach

to ja dam kod :P

 

GML
create

radio=false

 

step

if keyboard_check(ord('M')) then radio=!radio

if radio

swith keyboard_check{ //albo w nawiasach, nie wiem :D

case ord('1'):{

sound_play(sound_oberwalem)

break;

}case ord('2'):{

sound_play(sound_costam)

break;

}case ord('3'):{

sound_play(sound_costam2)

break;

}

}

 

draw

if radio{

draw_text(10,10,'1.OBRERWALEM#2.WIDZE WROGA#3.SRUTUTUTU')

}

 

Nie wiem czy będzie działać swith, bo go nie używam :P wole if, else

Odnośnik do komentarza
Udostępnij na innych stronach

@up, widziałem gdzieś, że taki kod ktoś podawał, ale go nie sprawdziłem.

 

to dla sprostowania dam poprawny kod:

 

GML
create

radio=false

 

step

if keyboard_check(ord('M')) then radio=!radio

if radio

if keyboard_check_pressed(ord('1'))

sound_play(sound_oberwalem)

else if keyboard_check_pressed(ord('2'))

sound_play(sound_costam)

else if keyboard_check_pressed(ord('3'))

sound_play(sound_costam2)

 

draw

if radio{

draw_text(10,10,'1.OBRERWALEM#2.WIDZE WROGA#3.SRUTUTUTU')

}

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