Fix versioning.

- Generate a GSC instead since file functions are developer-only.
master
Icedream 2016-04-13 01:19:34 +02:00
parent 40b7706b66
commit 8e954ac94a
4 changed files with 15 additions and 43 deletions

2
.gitignore vendored
View File

@ -2,6 +2,6 @@ demos/
*.log
*.log.???
missingasset.csv
mod_*.csv
maps/mp/mods/_modversion.gsc
*.iwd
*.ff

View File

@ -8,8 +8,8 @@ iwd_files()
find "${WORKSPACE}/" -type f \
! -path "*.git*" \
! -name "README*" \
! -name "mod.ff" \
! -name "mod*.csv" \
! -name "mod.*" \
! -name "_modversion.gsc" \
! -name "missingasset.csv" \
! -name "*.md" \
! -name "*.log*" \
@ -22,8 +22,8 @@ iwd_files()
iwd_filelist="$(mktemp)"
iwd_files > "$iwd_filelist"
modversion_txt_file="mod_version.csv"
git describe --tags --always --dirty > "$modversion_txt_file"
modversion_txt_file="maps/mp/mods/_modversion.gsc"
echo "getModVersionString(){return \"$(git describe --tags --always --dirty)\";}" > "$modversion_txt_file"
echo "$modversion_txt_file" >> "$iwd_filelist"
rm -f "hns.iwd"

View File

@ -62,6 +62,15 @@ main()
if (getdvar("mapname") == "mp_background")
return;
// Show version watermark at bottom right
versionHudElem = createServerFontString("default", 1.0);
versionHudElem setPoint("BOTTOMRIGHT", "BOTTOMRIGHT", -4, -14);
versionHudElem setText("Hide & Seek Version: " + getModVersionString());
versionHudElem.hideWhenInMenu = false;
versionHudElem.sort = 1001;
versionHudElem.foreground = false;
versionHudElem.alpha = 0.5;
// Define allowed seeker weapons
level.seekerWeapons = [];
level.seekerWeapons[0] = "m16";
@ -150,21 +159,11 @@ main()
maps\mp\gametypes\_tweakables::setTweakableValue("hardpoint", "allowhelicopter", "scr_hardpoint_allowhelicopter", 0);
level disableClassMenu();
level showVersionWatermark();
initGameFlags();
gameFlagInit("seekers_released", false);
}
showVersionWatermark()
{
versionHudElem = createServerFontString("objective", 0.75);
versionHudElem setPoint("BOTTOMRIGHT", "BOTTOMRIGHT", -4, -4);
versionHudElem setText("Version: " + getModVersionString());
versionHudElem.hideWhenInMenu = false;
versionHudElem.alpha = 0.5;
}
onPrecacheGametype()
{
logPrint("onPrecacheGametype called");

View File

@ -1,31 +1,4 @@
loadModVersionInfo()
{
if (IsDefined(level.modVersionInfo))
return;
level.modVersionInfo = SpawnStruct();
// Open and read mod_version.csv
filenum = OpenFile("mod_version.csv", "read");
if (filenum == -1)
{
level.modVersionInfo.hasVersion = false;
return;
}
verinfo = StrTok(FReadLn(filenum), ",");
CloseFile(filenum);
assert(versionString.size >= 1);
level.modVersionInfo.hasVersion = true;
level.modVersionInfo.version = versionString[0];
}
getModVersionString()
{
loadModVersionInfo();
if (!IsDefined(level.modVersionInfo.version))
return "";
return level.modVersionInfo.version;
return "developer";
}