<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <TargetFramework>net6.0</TargetFramework>
    <RootNamespace>ET</RootNamespace>
    <LangVersion>8</LangVersion>
  </PropertyGroup>
  <PropertyGroup>
    <AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
    <SatelliteResourceLanguages>en</SatelliteResourceLanguages>
  </PropertyGroup>
  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
    <DefineConstants>TRACE2_0;NOT_UNITY;SERVER</DefineConstants>
    <OutputPath>..\..\Bin\</OutputPath>
    <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
    <TreatWarningsAsErrors>true</TreatWarningsAsErrors>
  </PropertyGroup>
  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|AnyCPU'">
    <DefineConstants>TRACE2_0;SERVER;NOT_UNITY</DefineConstants>
    <OutputPath>..\..\Bin\</OutputPath>
    <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
    <TreatWarningsAsErrors>true</TreatWarningsAsErrors>
  </PropertyGroup>
  <ItemGroup>

    <Compile Include="..\..\Unity\Assets\Codes\Model\Core\**\*.cs"> 
      <Link>Core\%(RecursiveDir)%(FileName)%(Extension)</Link>
    </Compile>

    <Compile Include="..\..\Unity\Assets\Codes\Model\Demo\Unit\UnitType.cs">
      <Link>Demo\Unit\UnitType.cs</Link>
    </Compile>

    <Compile Include="..\..\Unity\Assets\Codes\Model\Module\Recast\**\*.cs">
      <Link>Module\Recast\%(RecursiveDir)%(FileName)%(Extension)</Link>
    </Compile>

    <Compile Include="..\..\Unity\Assets\Codes\Model\Demo\SessionStreamDispatcherType.cs">
      <Link>Demo\SessionStreamDispatcherType.cs</Link>
    </Compile>

    <Compile Include="..\..\Unity\Assets\Mono\Core\**\*.cs">
      <Link>Core\%(RecursiveDir)%(FileName)%(Extension)</Link>
    </Compile>
    

    <Compile Include="..\..\Unity\Assets\Codes\Model\Demo\Move\MoveComponent.cs">
      <Link>Demo\Move\MoveComponent.cs</Link>
    </Compile>
    

    <Compile Include="..\..\Unity\Assets\Codes\Model\Demo\TimerType.cs">
      <Link>Demo\TimerType.cs</Link>
    </Compile>

    <Compile Include="..\..\Unity\Assets\Codes\Model\Module\Config\**\*.cs">
      <Link>Module\Config\%(RecursiveDir)%(FileName)%(Extension)</Link>
    </Compile>

    <Compile Include="..\..\Unity\Assets\Codes\Model\Module\AI\**\*.cs">
      <Link>Module\AI\%(RecursiveDir)%(FileName)%(Extension)</Link>
    </Compile>

    <Compile Include="..\..\Unity\Assets\Codes\Model\Module\CoroutineLock\**\*.cs">
      <Link>Module\CoroutineLock\%(RecursiveDir)%(FileName)%(Extension)</Link>
    </Compile>
    
    <Compile Remove="Libs\**" />
    
    <Compile Include="..\..\Unity\Assets\Codes\Model\Module\ActorLocation\ActorResponse.cs">
      <Link>Module\ActorLocation\ActorResponse.cs</Link>
    </Compile>
    <Compile Include="..\..\Unity\Assets\Codes\Model\Module\ActorLocation\IActorLocationMessage.cs">
      <Link>Module\ActorLocation\IActorLocationMessage.cs</Link>
    </Compile>
    <Compile Include="..\..\Unity\Assets\Codes\Model\Module\Actor\IActorMessage.cs">
      <Link>Module\Actor\IActorMessage.cs</Link>
    </Compile>
  </ItemGroup>
  <ItemGroup>
    <Compile Include="..\..\Unity\Assets\Mono\Module\NetworkTCP\**\*.cs">
      <Link>Module\NetworkTCP\%(RecursiveDir)%(FileName)%(Extension)</Link>
    </Compile>
    <Compile Include="..\..\Unity\Assets\Codes\Model\Module\Numeric\INumericWatcher.cs">
      <Link>Module\Numeric\INumericWatcher.cs</Link>
    </Compile>
    <Compile Include="..\..\Unity\Assets\Codes\Model\Module\Numeric\NumericComponent.cs">
      <Link>Module\Numeric\NumericComponent.cs</Link>
    </Compile>
    <Compile Include="..\..\Unity\Assets\Codes\Model\Module\Numeric\NumericType.cs">
      <Link>Module\Numeric\NumericType.cs</Link>
    </Compile>
    <Compile Include="..\..\Unity\Assets\Codes\Model\Module\Numeric\NumericWatcherAttribute.cs">
      <Link>Module\Numeric\NumericWatcherAttribute.cs</Link>
    </Compile>
    <Compile Include="..\..\Unity\Assets\Codes\Model\Module\Numeric\NumericWatcherComponent.cs">
      <Link>Module\Numeric\NumericWatcherComponent.cs</Link>
    </Compile>
  </ItemGroup>

  <ItemGroup>

    <Compile Include="..\..\Unity\Assets\Mono\Module\Network\**\*.cs">
      <Link>Module\Network\%(RecursiveDir)%(FileName)%(Extension)</Link>
    </Compile>

    <Compile Include="..\..\Unity\Assets\Codes\Model\Module\Message\**\*.cs">
      <Link>Module\Message\%(RecursiveDir)%(FileName)%(Extension)</Link>
    </Compile>

    <Compile Include="..\..\Unity\Assets\Mono\Module\Message\**\*.cs">
      <Link>Module\Message\%(RecursiveDir)%(FileName)%(Extension)</Link>
    </Compile>
  </ItemGroup>
  <ItemGroup>
    <ProjectReference Include="..\..\ThirdParty\ETTask\ETTask.csproj" />
    <ProjectReference Include="..\..\ThirdParty\ShareLib\ShareLib.csproj" />
    <ProjectReference Include="..\..\ThirdParty\UnityEngine\UnityEngine.csproj" />
  </ItemGroup>
</Project>