Skip to content
This repository was archived by the owner on Mar 12, 2020. It is now read-only.

Commit 62393eb

Browse files
committed
Initial commit.
0 parents  commit 62393eb

File tree

4 files changed

+144
-0
lines changed

4 files changed

+144
-0
lines changed

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
out/
2+
temp/

build.ps1

Lines changed: 128 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,128 @@
1+
[string] $updated = "02-12-2020"
2+
[string] $version = "1.0.0"
3+
[string] $mcVersion = "1.14.4"
4+
[string] $downloadDir = "temp"
5+
[string] $outDir = "out"
6+
[string] $urlBase = "https://github.com/ProjectEssentials"
7+
[array] $modules = ("core", "cooldown", "permissions", "essentials", "chat", "spawn", "home", "warps", "backup")
8+
[array] $localizations = ("en_us", "ru_ru", "de_de")
9+
10+
Write-Output "Project Essentials resource-pack builder $version updated $updated."
11+
Write-Output "Building resource pack is starting ..."
12+
13+
if ($modules.Count -eq 0) {
14+
Write-Warning "Modules whose resources should be bundled in resource-pack are not specified, by default all modules will be used."
15+
$modules = ("core", "cooldown", "permissions", "essentials", "chat", "spawn", "home", "warps", "backup")
16+
}
17+
18+
function PurgeTempFiles {
19+
if (Test-Path -Path $downloadDir -PathType Container) {
20+
Remove-Item "$downloadDir\*" -Recurse -Force
21+
}
22+
}
23+
24+
function DownloadLocalization {
25+
param (
26+
[string] $module
27+
)
28+
29+
Write-Output "Starting proccessing resources for $module of version $mcVersion"
30+
31+
$moduleVersion
32+
if ($mcVersion -eq "1.14.4") {
33+
if ($module -eq "permissions") {
34+
$moduleVersion = "1.14.X"
35+
}
36+
else {
37+
$moduleVersion = "1.14.4"
38+
}
39+
}
40+
41+
$link
42+
if ($module -eq "essentials") {
43+
$link = "$urlBase/ProjectEssentials/raw/MC-$mcVersion/src/main/resources/assets/projectessentials/lang"
44+
}
45+
else {
46+
$link = "$urlBase/ProjectEssentials-$module/raw/MC-$moduleVersion/src/main/resources/assets/projectessentials$module/lang"
47+
}
48+
49+
[array] $downloaded -join ', '
50+
51+
ForEach ($localization in $localizations) {
52+
try {
53+
if ($module -eq "essentials") {
54+
[system.io.directory]::CreateDirectory("$downloadDir\assets\projectessentials\lang")
55+
}
56+
else {
57+
[system.io.directory]::CreateDirectory("$downloadDir\assets\projectessentials$module\lang")
58+
}
59+
60+
if ($module -eq "essentials") {
61+
(New-Object System.Net.WebClient).DownloadFile("$link/$localization.json", "$downloadDir\assets\projectessentials\lang\$localization.json")
62+
}
63+
else {
64+
(New-Object System.Net.WebClient).DownloadFile("$link/$localization.json", "$downloadDir\assets\projectessentials$module\lang\$localization.json")
65+
}
66+
67+
$downloaded += $localization
68+
}
69+
catch {
70+
Write-Warning "$localization not found in $module, will be skiped."
71+
}
72+
finally {
73+
Write-Output "Downloaded: $downloaded localizations for module $module"
74+
$downloaded = ("")
75+
}
76+
}
77+
}
78+
79+
80+
function Pack {
81+
param (
82+
[string] $module
83+
)
84+
85+
Write-Output "Packing resource-pack for $module ..."
86+
87+
[system.io.directory]::CreateDirectory($outDir)
88+
89+
$source
90+
if ($module -eq "essentials") {
91+
$source = "$downloadDir\assets\projectessentials"
92+
}
93+
else {
94+
$source = "$downloadDir\assets\projectessentials$module"
95+
}
96+
97+
$destination = "$outDir\ProjectEssentials-Localization-$mcVersion-$module.zip"
98+
99+
If (Test-path $destination) { Remove-item $destination }
100+
101+
Compress-Archive -Path $source -DestinationPath "$destination"
102+
Compress-Archive -Path "pack\$mcVersion\pack.mcmeta" -Update -DestinationPath "$destination"
103+
}
104+
105+
function PackAll {
106+
Write-Output "Packing generic resource-pack ..."
107+
108+
$source = "$downloadDir\assets"
109+
$destination = "$outDir\ProjectEssentials-Localization-$mcVersion-all.zip"
110+
111+
If (Test-path $destination) { Remove-item $destination }
112+
113+
Compress-Archive -Path $source -DestinationPath "$destination"
114+
Compress-Archive -Path "pack\$mcVersion\pack.mcmeta" -Update -DestinationPath "$destination"
115+
}
116+
117+
118+
PurgeTempFiles
119+
ForEach ($module in $modules) {
120+
DownloadLocalization($module)
121+
Pack($module)
122+
}
123+
124+
PackAll
125+
126+
Write-Output "Resource-packs generated! Done!"
127+
128+
Pause

pack/1.14.4/pack.mcmeta

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
{
2+
"pack": {
3+
"description": "Project Essentials localization resourcepack for client.",
4+
"pack_format": 4,
5+
"_comment": "A pack_format of 5 requires json lang files and some texture changes from 1.15. Note: we require v5 pack meta for all mods."
6+
}
7+
}

pack/1.15.2/pack.mcmeta

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
{
2+
"pack": {
3+
"description": "Project Essentials localization resourcepack for client.",
4+
"pack_format": 5,
5+
"_comment": "A pack_format of 5 requires json lang files and some texture changes from 1.15. Note: we require v5 pack meta for all mods."
6+
}
7+
}

0 commit comments

Comments
 (0)