TheGames
bei mir klappt es jetzt sogar ganz gut
hab eine function in infinit modus (wird dann nicht wie main script durch cutscenen unterbrochen und mit wait (0,1) sorge ich für nicht so viel rechenaufwand (5 mal pro sec. reicht nämlich locker). Dann sollte man noch bei Raumwächsel einfach noch "setnum (Dauer ; -5)" machen (oder eben mehr bei längerem laden). Dazu kommt noch ganz wichtig, einfach noch an den lieder ca. 15 sec. anzuhängen, in der nichts zu hören ist (als puffer eben).
hab eine function in infinit modus (wird dann nicht wie main script durch cutscenen unterbrochen und mit wait (0,1) sorge ich für nicht so viel rechenaufwand (5 mal pro sec. reicht nämlich locker). Dann sollte man noch bei Raumwächsel einfach noch "setnum (Dauer ; -5)" machen (oder eben mehr bei längerem laden). Dazu kommt noch ganz wichtig, einfach noch an den lieder ca. 15 sec. anzuhängen, in der nichts zu hören ist (als puffer eben).
Code: Select all
wait (0,1)
setnum (Zähler ; +1)
if_keydown (N)
{
setnum (Zähler ; 2000)
}
if_num (Zähler ; >[Dauer])
{
setnum (Zähler ; 0)
setnum (Nummer ; +1)
if_num (Nummer ; 9)
{
setnum (Nummer; 1)
}
if_num (Nummer ; 1)
{
setnum (Dauer ; 1600)
playmusic (Lied1)
}
if_num (Nummer ; 2)
{
setnum (Dauer ; 1730)
playmusic (Lied2)
}
...
...
...
}
Ich meine wenn es okay wäre dass die Lieder nicht zufällig durcheinander, sondern immer der Reihe nach abgespielt werden... wieso erstellt ihr dann nicht einfach eine Musikdatei, in der die Songs hintereinander abspielen? Einfach mit einem Programm wie z.B. Audacity die Songs hintereinander anordnen. Das Ganze kann dann mit playmusic() abgespielt werden und ich denke man müsste auch mit playmusic(name;position) zu einem gewünschten Lied springen können.
Re: TheGames
Ich würde dein Spiel auch sehr gerne mal testen! Könntest du es noch einmal irgend wo Uploaden, da beide Downloadlinks anscheinend tot sind. Würde mich riesig freuen.
Gestern ist wieder Zukunft:
http://board.adventure-creator.com/view ... 36&t=11112
http://board.adventure-creator.com/view ... 36&t=11112
Re: TheGames
Ich hätte da noch einen Vorschlag zu den Playlists :
Ist in der Erstellung mehr Arbeit, dafür aber später recht flexibel nutzbar.
ich verwende dann sehr gerne Objekte als Timer.
( 30 Frames pro Objekt in 10 zuständen = 300 mögliche Frames, bei 1s/Frame z.B. = 300s Laufzeit = 5 min max Dauer pro Timerobjekt)
Ich nutze hauptsächlich 2 Timerobjekte in Scottys Log für die Textfenster, die zusätzlich weggedrückt werden können,ansonsten automatisch weiterlaufen.
Z.B. : Zustand 1 : schneller Ablauf der 30 Frames,
Zustand 2 : langsamerer Ablauf der 30 Frames
usw.
Einzeln oder in Kombination kann man so eine gewünschte Abspielzeit ablaufen lassen.
Das kommt darauf an, was Du in den letzten Frame jeweils reinschreibst :
setobj (timer; < nächster Zustand > ) --> Damit werden mehrere "Wartezeiten" kombiniert,
oder
setobj (timer;10) -> 9 Zustände dienen als Zeitgeber, jedoch nie mehr, als 60 Sek / Zustand
Eine Besonderheit ist dann Zustand 10 :
Wenn dieser Zustand startet, schreibst Du dort zu Beginn hin:
fadespeed 9
musicvolume (0)
Damit wird die Musik entsprechend langsam ausgeblendet.
Jetzt lässt Du das bis zum Ende (Frame 30 ) durchlaufen ( einige Sek. Pause )
Damit verhinderst Du, dass das Lied abrupt endet und gleichzeitig
, dass es von vorne beginnt, bis das neue Lied startet.
Im letzten Frame rufst Du dann die Funktion auf, die den neuen Titel bestimmt :
z.B.
Funktion :
setmusic :
{
fadespeed (15) -> ganz schnell...
musicvolume (100) -> wieder laut machen
setnum (music_timer;+1)
if_num (music_timer;>10)
setnum (music_timer;1)
If_num (music_timer;1)
{
setobj (timer;1) -> z.B. 30 Frames zu 0,5 sek warten, also 60 Sek
playmusic (<Titel Nr 1> )
}
If_num (music_timer;2)
{
setobj (timer;4) -> z.B. 30 Frames zu 0,5 sek warten, also 60 Sek
playmusic (<Titel Nr 1> )
}
}
usw
Hier musst Du nur schauen, wieviele Zustände Du per Framebefehl setobj (timer;...) "koppelst", um die gewünschte Liedlänge zu erhalten.
Wenn Du jetzt eine Taste drückst, um ein neues Lied zu spielen, schreibst Du für das Tastenskript beispielsweise einfach:
setobj (timer;10)
Function (setmusic)
Das wäre dann das Gleiche, als ob der aktuelle Titel vorbei wäre;
der Titel wird in diesem Zustand des Timers ausgeblendet, der neue Titel bestimmt und nach einigen Sekunden gestartet.
Jetzt kannst Du auch eine Shuffle Funktion mit einbauen :
randomnum (music_timer;10)
setobj (timer;10)
Ist in der Erstellung mehr Arbeit, dafür aber später recht flexibel nutzbar.
ich verwende dann sehr gerne Objekte als Timer.
( 30 Frames pro Objekt in 10 zuständen = 300 mögliche Frames, bei 1s/Frame z.B. = 300s Laufzeit = 5 min max Dauer pro Timerobjekt)
Ich nutze hauptsächlich 2 Timerobjekte in Scottys Log für die Textfenster, die zusätzlich weggedrückt werden können,ansonsten automatisch weiterlaufen.
Z.B. : Zustand 1 : schneller Ablauf der 30 Frames,
Zustand 2 : langsamerer Ablauf der 30 Frames
usw.
Einzeln oder in Kombination kann man so eine gewünschte Abspielzeit ablaufen lassen.
Das kommt darauf an, was Du in den letzten Frame jeweils reinschreibst :
setobj (timer; < nächster Zustand > ) --> Damit werden mehrere "Wartezeiten" kombiniert,
oder
setobj (timer;10) -> 9 Zustände dienen als Zeitgeber, jedoch nie mehr, als 60 Sek / Zustand
Eine Besonderheit ist dann Zustand 10 :
Wenn dieser Zustand startet, schreibst Du dort zu Beginn hin:
fadespeed 9
musicvolume (0)
Damit wird die Musik entsprechend langsam ausgeblendet.
Jetzt lässt Du das bis zum Ende (Frame 30 ) durchlaufen ( einige Sek. Pause )
Damit verhinderst Du, dass das Lied abrupt endet und gleichzeitig
, dass es von vorne beginnt, bis das neue Lied startet.
Im letzten Frame rufst Du dann die Funktion auf, die den neuen Titel bestimmt :
z.B.
Funktion :
setmusic :
{
fadespeed (15) -> ganz schnell...
musicvolume (100) -> wieder laut machen
setnum (music_timer;+1)
if_num (music_timer;>10)
setnum (music_timer;1)
If_num (music_timer;1)
{
setobj (timer;1) -> z.B. 30 Frames zu 0,5 sek warten, also 60 Sek
playmusic (<Titel Nr 1> )
}
If_num (music_timer;2)
{
setobj (timer;4) -> z.B. 30 Frames zu 0,5 sek warten, also 60 Sek
playmusic (<Titel Nr 1> )
}
}
usw
Hier musst Du nur schauen, wieviele Zustände Du per Framebefehl setobj (timer;...) "koppelst", um die gewünschte Liedlänge zu erhalten.
Wenn Du jetzt eine Taste drückst, um ein neues Lied zu spielen, schreibst Du für das Tastenskript beispielsweise einfach:
setobj (timer;10)
Function (setmusic)
Das wäre dann das Gleiche, als ob der aktuelle Titel vorbei wäre;
der Titel wird in diesem Zustand des Timers ausgeblendet, der neue Titel bestimmt und nach einigen Sekunden gestartet.
Jetzt kannst Du auch eine Shuffle Funktion mit einbauen :
randomnum (music_timer;10)
setobj (timer;10)
Es gibt 10 Arten von Usern :
die, die Binärcode verstehen und die, die es nicht tun....
----------------------------------------------------------
STAR TREK FYNE :
http://www.fynegames.homepage.t-online.de
die, die Binärcode verstehen und die, die es nicht tun....
----------------------------------------------------------
STAR TREK FYNE :
http://www.fynegames.homepage.t-online.de
-
- Experienced PaC-DK User
- Posts: 561
- Joined: 07 Sep 2011, 21:33
- Location: In der Ortenau
- Contact:
Re: TheGames
Schade das es diese Sammlung nich mehr zum Download gibt. Hätte ich mir gerne mal angeguckt (o: