Changeset 664


Ignore:
Timestamp:
Jul 8, 2025, 9:52:53 PM (6 hours ago)
Author:
chronos
Message:
  • Added: Ability to play music in background in start screen and in-game. Used uos as audio library.
Location:
trunk
Files:
41 added
6 edited

Legend:

Unmodified
Added
Removed
  • trunk/Direct.pas

    r598 r664  
    4646uses
    4747  ScreenTools, Protocol, Start, LocalPlayer, NoTerm, Back, Global, NetworkServer,
    48   NetworkClient;
     48  NetworkClient, Music, Directories;
    4949
    5050{$R *.lfm}
     
    130130    *)
    131131      end;
    132     ntStartDone:
     132    ntStartDone: begin
    133133      if not Quick then begin
    134134        StartDlg.Hide;
    135135        Background.Update;
    136136      end;
     137      MusicPlayer.LoadPlaylistFromDir(GetMusicDir);
     138      MusicPlayer.RandomizePlaylist;
     139      if MusicPlayer.Playlist.Count > 0 then MusicPlayer.Play;
     140    end;
    137141    ntStartGo, ntStartGoRefresh, ntStartGoRefreshMaps:
    138142      if Quick then Close
  • trunk/Integrated.lpi

    r599 r664  
    7979      </Item2>
    8080      <SharedMatrixOptions Count="2">
    81         <Item1 ID="151739052537" Targets="CevoComponents,Common,DpiControls" Modes="Debug" Value="-g -gl -gh -CirotR -O1 -dDPI"/>
    82         <Item2 ID="186701832267" Targets="CevoComponents,Common,DpiControls" Modes="Release" Value="-CX -XX -O3 -dDPI"/>
     81        <Item1 ID="151739052537" Targets="CevoComponents,Common,DpiControls,laz_uos" Modes="Debug" Value="-g -gl -gh -CirotR -O1 -dDPI"/>
     82        <Item2 ID="186701832267" Targets="CevoComponents,Common,DpiControls,laz_uos" Modes="Release" Value="-CX -XX -O3 -dDPI"/>
    8383      </SharedMatrixOptions>
    8484    </BuildModes>
     
    9292      </Modes>
    9393    </RunParams>
    94     <RequiredPackages Count="4">
     94    <RequiredPackages Count="5">
    9595      <Item1>
     96        <PackageName Value="laz_uos"/>
     97        <DefaultFilename Value="Packages\uos\laz_uos.lpk" Prefer="True"/>
     98      </Item1>
     99      <Item2>
    96100        <PackageName Value="DpiControls"/>
    97101        <DefaultFilename Value="Packages\DpiControls\DpiControls.lpk" Prefer="True"/>
    98       </Item1>
    99       <Item2>
     102      </Item2>
     103      <Item3>
    100104        <PackageName Value="Common"/>
    101105        <DefaultFilename Value="Packages\Common\Common.lpk" Prefer="True"/>
    102       </Item2>
    103       <Item3>
     106      </Item3>
     107      <Item4>
    104108        <PackageName Value="CevoComponents"/>
    105109        <DefaultFilename Value="Packages\CevoComponents\CevoComponents.lpk" Prefer="True"/>
    106       </Item3>
    107       <Item4>
     110      </Item4>
     111      <Item5>
    108112        <PackageName Value="LCL"/>
    109       </Item4>
     113      </Item5>
    110114    </RequiredPackages>
    111     <Units Count="48">
     115    <Units Count="49">
    112116      <Unit0>
    113117        <Filename Value="Integrated.lpr"/>
     
    374378        <IsPartOfProject Value="True"/>
    375379      </Unit47>
     380      <Unit48>
     381        <Filename Value="Music.pas"/>
     382        <IsPartOfProject Value="True"/>
     383      </Unit48>
    376384    </Units>
    377385  </ProjectOptions>
  • trunk/Integrated.lpr

    r474 r664  
    2626
    2727  DotNetClient := nil;
     28  Randomize;
    2829  Application.Initialize;
    2930  Application.Title := CevoTitle;
  • trunk/Packages/CevoComponents/CevoComponents.lpk

    r568 r664  
    123123    </Files>
    124124    <CompatibilityMode Value="True"/>
    125     <RequiredPkgs Count="4">
     125    <RequiredPkgs Count="5">
    126126      <Item1>
    127         <PackageName Value="DpiControls"/>
     127        <PackageName Value="laz_uos"/>
    128128      </Item1>
    129129      <Item2>
    130         <PackageName Value="Common"/>
     130        <PackageName Value="DpiControls"/>
    131131      </Item2>
    132132      <Item3>
    133         <PackageName Value="LCL"/>
     133        <PackageName Value="Common"/>
    134134      </Item3>
    135135      <Item4>
     136        <PackageName Value="LCL"/>
     137      </Item4>
     138      <Item5>
    136139        <PackageName Value="FCL"/>
    137       </Item4>
     140      </Item5>
    138141    </RequiredPkgs>
    139142    <UsageOptions>
  • trunk/Packages/CevoComponents/Directories.pas

    r648 r664  
    1414function GetGraphicsDir: string;
    1515function GetSoundsDir: string;
     16function GetMusicDir: string;
    1617function GetAiDir: string;
    1718function GetAppSharePath(Path: string): string;
     
    154155end;
    155156
     157function GetMusicDir: string;
     158begin
     159  Result := GetAppSharePath('Music');
     160end;
     161
    156162function GetAiDir: string;
    157163begin
  • trunk/Start.pas

    r660 r664  
    155155uses
    156156  Global, Directories, Direct, ScreenTools, Inp, Back, Settings, KeyBindings,
    157   Languages;
     157  Languages, Music;
    158158
    159159{$R *.lfm}
     
    942942  ChangeTab(ShowTab);
    943943  Background.Enabled := False;
     944
     945  MusicPlayer.LoadPlaylistFromDir(GetMusicDir + DirectorySeparator + 'Start');
     946  MusicPlayer.RandomizePlaylist;
     947  if MusicPlayer.Playlist.Count > 0 then MusicPlayer.Play;
    944948end;
    945949
Note: See TracChangeset for help on using the changeset viewer.