diff --git a/package.ps1 b/package.ps1 new file mode 100644 index 0000000..623f5c5 --- /dev/null +++ b/package.ps1 @@ -0,0 +1,29 @@ +param ( + [switch]$NoArchive, + [string]$OutputDirectory = $PSScriptRoot +) + +Set-Location "$PSScriptRoot" +$FilesToInclude = "info.json","build/*","LICENSE","assetbundles" + +$modInfo = Get-Content -Raw -Path "info.json" | ConvertFrom-Json +$modId = $modInfo.Id +$modVersion = $modInfo.Version + +$DistDir = "$OutputDirectory/dist" +if ($NoArchive) { + $ZipWorkDir = "$OutputDirectory" +} else { + $ZipWorkDir = "$DistDir/tmp" +} +$ZipOutDir = "$ZipWorkDir/$modId" + +New-Item "$ZipOutDir" -ItemType Directory -Force +Copy-Item -Force -Path $FilesToInclude -Destination "$ZipOutDir" +Copy-Item -Force -Path "assetbundles/*" -Destination "$ZipOutDir/assetbundles" + +if (!$NoArchive) +{ + $FILE_NAME = "$DistDir/${modId}_v$modVersion.zip" + Compress-Archive -Update -CompressionLevel Fastest -Path "$ZipOutDir/*" -DestinationPath "$FILE_NAME" +}