Fade Script

Poste doch mal bitte dein Script, das du gebastelt hast…

grüße, michi

Ich hoffe, ich habe an der richtigen Stelle ergänzt.

[code]var i, player, item: integer;

begin
player := -1;
item := -1;
for i := 0 to CurrentPlaybackControl.GetPlayerCount - 1 do
if ((CurrentPlaybackControl.GetPlayer(i).GetState = PS_LOADED) or
(CurrentPlaybackControl.GetPlayer(i).GetState = PS_PAUSED))
and
((item = -1) or
(CurrentPlaylist.IndexOf(CurrentPlaybackControl.GetPlayer(i).GetItem) < item))
then begin
player := i;
item := CurrentPlaylist.IndexOf(CurrentPlaybackControl.GetPlayer(i).GetItem);
end;

if (player = -1) then
SystemLog(‘Keinen freien Player gefunden.’)
else begin
CurrentPlaybackControl.PlayerStart(player);
for i := 0 to CurrentPlaybackControl.GetPlayerCount - 1 do
if i <> player then CurrentPlaybackControl.PlayerFadeOut(i);
for i := 0 to CurrentPlaybackControl.GetPlayerCount - 1 do
if i <> player then begin
if CurrentPlaybackControl.GetPlayer(i).GetItem <> nil then
CurrentPlaybackControl.GetPlayer(i).GetItem.SetFadeDuration(10000000);
CurrentPlaybackControl.PlayerFadeOut(i);
end;
end.
[/code]
Danke schon mal für deine Hilfe!

kein problem :wink:

probier mal das… vielleicht ists das was du willst…(ich hab die obere schleife weggemacht, denn die befehle waren doppelt), und ein end; hat auch noch gefehlt…

[code]var i, player, item: integer;

begin
player := -1;
item := -1;
for i := 0 to CurrentPlaybackControl.GetPlayerCount - 1 do
if ((CurrentPlaybackControl.GetPlayer(i).GetState = PS_LOADED) or
(CurrentPlaybackControl.GetPlayer(i).GetState = PS_PAUSED))
and
((item = -1) or
(CurrentPlaylist.IndexOf(CurrentPlaybackControl.GetPlayer(i).GetItem) < item))
then begin
player := i;
item := CurrentPlaylist.IndexOf(CurrentPlaybackControl.GetPlayer(i).GetItem);
end;

if (player = -1) then
SystemLog(‘Keinen freien Player gefunden.’)
else begin
CurrentPlaybackControl.PlayerStart(player);
for i := 0 to CurrentPlaybackControl.GetPlayerCount - 1 do
if i <> player then begin
if CurrentPlaybackControl.GetPlayer(i).GetItem <> nil then
CurrentPlaybackControl.GetPlayer(i).GetItem.SetFadeDuration(10000000);
CurrentPlaybackControl.PlayerFadeOut(i);
end;
end;
end.[/code]

Klappt bestens, genau das was ich wollte! Hab vielen Dank! :slight_smile: