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

Odpowiedz do tematu
Poprzedni temat :: Następny temat
[TGF] Kurs obiektu MCI
Autor Wiadomość
Aethera 
Bohaterka


Pojedynki: być może
Pomogła: 7 razy
Posty: 382

10120 Prestiż
Wysłany: 30-12-2005, 16:11   [TGF] Kurs obiektu MCI

Obiekt MCI jest o tyle prostym składnikiem TGF-a, że jedyne co potrafi to wysyłać polecenie ( ewentualnie może być niszczonym ). Jednak nie jest to takie mało skomplikowane . Dzięki niemu możemy się komunikować z urządzeniami Audio i Video. Zacznijmy jednak praktykę.
:arrow: Tworzymy nowy obiekt i klikamy zakładke multimedia
:arrow: Wybieramy obiekt MCI
Teraz pozostaje wybrać urządzenie którym się posłużymy. Oto przykładowe urządzenia :

Kod:
cdaudio - Odtwarzacz CD Audio
MMMovie - Multimedialny odtwarzacz filmów
scanner - Skaner obrazków
waveaudio - Urządzenie audio odtwarzające cyfrowe pliki wave
sequencer - Sekwencer MIDI

Aczkolwiek inny komputer, inne urządzenia , sprawdzamy je w pliku system ini w pod [mci]. Dla przykładu mój komputer posiada takie oto urządzenia :

Kod:
[mci]
cdaudio=mcicda.drv
sequencer=mciseq.drv
waveaudio=mciwave.drv
avivideo=mciavi.drv
videodisc=mcipionr.drv
vcr=mcivisca.drv
MPEGVideo=mciqtz.drv
MPEGVideo2=mciqtz.drv

Na początek wybierzmy sequencer. Zapiszmy grę w jakimś pustym folderze, skopiujmy tam dowolną muzyke midi i nazwijmy ją muzyka.mid.
Teraz przechodzimy do naszego przykładu, tworzymy przycisk, nadajemy mu etykiete "Graj". Tworzymy następne przyciski i nadajemy im etykiety "Pauza" i "Stop". W edytorze zdarzeń obieramy warunek "Start of Level". Jako zdarzenie wybieramy oczywiście send command.
Chcemy teraz otworzyć naszą muzyke midi. Musimy posłużyć się poleceniem open czyli otwórz. Wpisujemy w cudzysłowia open i po spacji musimy podać nazwę i ścieżke muzyki. Jednak na innym komputerze ścieżka może być inna. Dlatego jako oznaczenie dysku wpisujemy %drive%, a jako oznaczenie ścieżki - %dir%. Następnie bez spacji wpisujemy nazwę pliku muzycznego czyli muzyka.mid. Po spacji wpisujemy alias, potem znów spacja i music. Music wyznacza typ odtwarzanego pliku. Alias pozwala grać ponad poziomami gry.
Teraz dla kliknięć poszczególnych przycisków wysyłamy takie komendy:
:arrow: "Play" - "play music"
:arrow: "Pause" - "stop music"
:arrow: "Stop" - "close music"
I to wszystko. Dodałabym jeszcze że do play można dodać "from x" oraz "to x" gdzie x to pozycja w utworze (niestety nie wiem w jakiej jednostce) .
Oprócz odtwarzania muzyki midi, MCI nadaje się do odtwarzania filmów, dźwięków, nawet potrafi otwierać kieszeń CD czy nagrywać dźwieki, ale to wymaga głębszej znajomości komend MCI. Kto spotkał się z JBuilderem to na pewno miał lub będzie miał doczynienia z MCI. A tym czasem - do następnego kursu!
[Przepraszam za ewentualne błędy i niejasności - to mó pierwszy kurs!]
Ostatnio zmieniony przez Minty 10-09-2006, 21:50, w całości zmieniany 1 raz  
 
     
BROO 
Pupogłowy
Wizard x-)


Pojedynki: nie
Pomógł: 37 razy
Posty: 502

31680 Prestiż
Wysłany: 30-12-2005, 16:35   

W całym tym kursie największym problemem jest domyślenie się, jak powinna wyglądać przykładowa komenda otworzenia pliku muzyki... open %drive%%dir%muzyka.mid.

A tak poza tym, pokolorowanie nazw komend w kursie byłoby fajnym rozwiązaniem.
 
     
Minty 
Stwórczyni
omc dr fizyki


Pojedynki: być może
Pomogła: 259 razy
Posty: 3447

33795 Prestiż
Wysłany: 17-12-2006, 20:46   

Nie wiem czemu, ale ciągi %drive% i %dir% nie są poprawnie rozpoznawane w moim przypadku. Poniżej to, co wyszło mi okrężną drogą:
http://www.eggdisk.com/files/140178_ryuzi/midi.zip
 
     
Fadex 
Legenda
#4; #12; #18; #20; #21; #27


Pojedynki: nie
Pomógł: 105 razy
Posty: 1773

51612 Prestiż
Wysłany: 17-12-2006, 23:57   

A ja chciałbym się spytać, jaka komenda jest do odtworzenia/zamknięcia sampla?
_________________
If it doesn't have to work, I can optimize any code to a runtime of zero. What's your superpower?
wat
 
 
     
jarlfenrir 
Generał brygady


Pomógł: 82 razy
Posty: 1731

37283 Prestiż
Wysłany: 18-12-2006, 00:37   

Zdaje się, że
Play "nazwa"
close "nazwa"
 
     
Fadex 
Legenda
#4; #12; #18; #20; #21; #27


Pojedynki: nie
Pomógł: 105 razy
Posty: 1773

51612 Prestiż
Wysłany: 18-12-2006, 00:53   

Fenrir - próbowałem, nie działa... mam nadzieję, że dobrze ustawiam zdarzenia ;]
_________________
If it doesn't have to work, I can optimize any code to a runtime of zero. What's your superpower?
wat
 
 
     
Minty 
Stwórczyni
omc dr fizyki


Pojedynki: być może
Pomogła: 259 razy
Posty: 3447

33795 Prestiż
Wysłany: 18-12-2006, 14:52   

Odtwarzanie:
open ścieżka
play ścieżka


Kończenie:
stop ścieżka
close ścieżka


Chyba :)
 
     
jarlfenrir 
Generał brygady


Pomógł: 82 razy
Posty: 1731

37283 Prestiż
Wysłany: 18-12-2006, 18:02   

RomanX napisał/a:
Odtwarzanie:
open ścieżka
play ścieżka


Kończenie:
stop ścieżka
close ścieżka


Chyba :)


Prawie
Open scieżka alias=nazwa
play nazwa

stop nazwa
close nazwa

W Wersji 1.04 był dobry przykład do tego, wiec jak ktoś ma, to może sprawdzić.
 
     
kami95 
Mięso armatnie


Posty: 1

5 Prestiż
Wysłany: 25-08-2007, 11:38   

Jeśli komuś to nie wyszło, niech spróbuje tak: umieścić trzy przyciski: play, pause, stop i obiekt MCI. Jako urządzenie MCI należy wpisać sequencer. program zapisujemy w pustym folderze i przenosimy tam dowolną muzykę, np. muzyka.mid. Przechodzimy teraz do edytora zdarzeń. początek poziomu (start of level) ustawiamy jako pierwsze zdarzenie. pod MCI klikamy wyślij polecenie (send command) i wpisujemy: "open %drive%%dir%muzyka.mid alias music". jeśli chcemy, żeby muzyka była odtwarzana na początku poziomu, wysyłamy drugie polecenie - "play music". teraz zaprogramujemy przyciski, najpierw play - wysyła polecenie "play music". pause - "stop music". stop - "close music" kiedy wciśniemy stop, trzeba będzie ponownie podać komputerowi ścieżkę do odtworzenia. tworzymy nowe zdarzenie: po naciśnięciu spacji - wyślij polecenie "open %drive%%dir%muzyka.mid alias music"
możemy również zaprogramować, żeby po naciśnięciu jakiegoś klawisza (np. a) odtwarzany był drugi utwór (muzyka2.mid) wystarczy wysłać komendę wczytywania, tylko zamaiast myzyka.mid, wpisać muzyka2.mid. pliki MIDI mogą mieć inną dowolną nazwę, niekoniecznie muzyka.mid
 
     
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 Wielkie Muzeum Klikowe

Powered by phpBB modified by Przemo © 2003 phpBB Group