From 8cba7f3463db890999c3ada48dcc384c77523d4b Mon Sep 17 00:00:00 2001 From: vexed Date: Tue, 3 Dec 2013 21:55:59 -0500 Subject: [PATCH 01/11] Fix --host & --join=IP to work again. fixes ticket:4094 --- src/wrappers.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/wrappers.cpp b/src/wrappers.cpp index b55e970c0..f6cf51cc3 100644 --- a/src/wrappers.cpp +++ b/src/wrappers.cpp @@ -135,15 +135,22 @@ TITLECODE titleLoop(void) // then check --join and if neither, run the normal game menu. if( hostlaunch ) { + NetPlay.bComms = true; // use network = true + NetPlay.isUPNP_CONFIGURED = false; + NetPlay.isUPNP_ERROR = false; ingame.bHostSetup = true; bMultiPlayer = true; bMultiMessages = true; - game.type = SKIRMISH; // needed? + NETinit(true); + NETdiscoverUPnPDevices(); + game.type = SKIRMISH; changeTitleMode(MULTIOPTION); hostlaunch = false; // reset the bool to default state. } else if(strlen(iptoconnect) ) { + NetPlay.bComms = true; // use network = true + NETinit(true); joinGame(iptoconnect, 0); } else From cc70e11921b4913ea9b652842093fd8997db00b3 Mon Sep 17 00:00:00 2001 From: vexed Date: Sun, 1 Dec 2013 22:26:08 -0500 Subject: [PATCH 02/11] K.I.S.S Vastly simplify how we determine what version it is. We only support git, nothing else is needed/wanted because of upkeep headaches. tags are now verified with exact-match, NULL otherwise. branches are now populated with the symbolic-ref, NULL otherwise. Fix modification detection. Vastly simplify how we use version data. Fix autorevision.cache file to not be deleted on make clean (before, it would be deleted if you were using a tarball and did make clean) No build modification changes are nessesary, it is backwards compatiable to what we had before. (As long as you use git or use the tarball) closes ticket:4136 --- build_tools/autorevision | 557 ++------------------------------------- src/Makefile.am | 1 - src/version.cpp | 97 ++----- src/version.h | 72 +---- 4 files changed, 37 insertions(+), 690 deletions(-) diff --git a/build_tools/autorevision b/build_tools/autorevision index 3ded44ae4..94d33a826 100755 --- a/build_tools/autorevision +++ b/build_tools/autorevision @@ -16,7 +16,6 @@ usage: ./autorevision {-t output-type | -s symbol} [-o cache-file [-f] ] [-V] -s symbol = specify symbol output -o cache-file = specify cache file location -f = force the use of cache data - -U = Check for untracked files in svn -V = emit version and exit -? = help message @@ -24,26 +23,13 @@ The folowing are valid output types: h = Header for use with c/c++ xcode = Header useful for populating info.plist files sh = Bash sytax - py = Python file - pl = Perl file - lua = Lua file - php = PHP file - ini = INI file - js = javascript file - json = JSON file - java = Java file - javaprop = Java properties file - tex = (La)TeX file - m4 = m4 file The following are valid symbols: VCS_TYPE VCS_BASENAME - VCS_NUM - VCS_DATE VCS_BRANCH VCS_TAG - VCS_TICK + VCS_EXTRA VCS_FULL_HASH VCS_SHORT_HASH VCS_WC_MODIFIED @@ -52,7 +38,7 @@ EOF } # Config -ARVERSION="1.6" +ARVERSION="1.7-Warzone" TARGETFILE="/dev/stdout" while getopts ":t:o:s:Vf" OPTION; do case "${OPTION}" in @@ -107,218 +93,22 @@ gitRepo() { cd "$(git rev-parse --show-toplevel)" VCS_TYPE="git" - VCS_BASENAME="$(basename "${PWD}")" # Is the working copy clean? - test -z "$(git status --untracked-files=normal --porcelain)" + test -z "$(git status --untracked-files=no --porcelain)" VCS_WC_MODIFIED="${?}" - # Enumeration of changesets - VCS_NUM="$(git rev-list --count HEAD 2>/dev/null)" - if [ -z "${VCS_NUM}" ]; then - echo "warning: Counting the number of revisions may be slower due to an outdated git version less than 1.7.2.3. If something breaks, please update it." 1>&2 - VCS_NUM="$(git rev-list HEAD | wc -l)" - fi - - # This may be a git-svn remote. If so, report the Subversion revision. - if [ -z "$(git config svn-remote.svn.url 2>/dev/null)" ] - then - # The full revision hash - VCS_FULL_HASH="$(git rev-parse HEAD)" - - # The short hash - VCS_SHORT_HASH="$(echo "${VCS_FULL_HASH}" | cut -b 1-7)" - else - # The git-svn revision number - VCS_FULL_HASH="$(git svn find-rev HEAD)" - VCS_SHORT_HASH="${VCS_FULL_HASH}" - fi - - # Current branch - VCS_BRANCH="$(git rev-parse --symbolic-full-name --verify "$(git name-rev --name-only --no-undefined HEAD 2>/dev/null)" 2>/dev/null | sed -e 's:refs/heads/::' | sed -e 's:refs/::')" - - # Cache the description - local DESCRIPTION="$(git describe --long --tags 2>/dev/null)" - - # Current or last tag ancestor (empty if no tags) - VCS_TAG="$(echo "${DESCRIPTION}" | sed -e "s:-g${VCS_SHORT_HASH}\$::" | sed -e 's:-[0-9]*$::')" - - # Distance to last tag or an alias of VCS_NUM if there is no tag - if [ ! -z "${DESCRIPTION}" ]; then - VCS_TICK="$(echo "${DESCRIPTION}" | sed -e "s:${VCS_TAG}-::" -e "s:-g${VCS_SHORT_HASH}::")" - else - VCS_TICK="${VCS_NUM}" - fi - - # Date of the current commit - VCS_DATE="$(git log -1 --pretty=format:%ci | sed -e 's: :T:' | sed -e 's: ::')" -} - -# For hg repos -hgRepo() { - cd "$(hg root)" - - VCS_TYPE="hg" - - VCS_BASENAME="$(basename "${PWD}")" - - # Is the working copy clean? - test -z "$(hg status -duram)" - VCS_WC_MODIFIED="${?}" - - # Enumeration of changesets - VCS_NUM="$(hg id -n | tr -d '+')" - # The full revision hash - VCS_FULL_HASH="$(hg log -r "${VCS_NUM}" -l 1 --template '{node}\n')" - + VCS_FULL_HASH="$(git rev-parse HEAD)" # The short hash - VCS_SHORT_HASH="$(hg id -i | tr -d '+')" - - # Current bookmark (bookmarks are roughly equivalent to git's branches) - # or branch if no bookmark - VCS_BRANCH="$(hg id -B | cut -d ' ' -f 1)" - # Fall back to the branch if there are no bookmarks - if [ -z "${VCS_BRANCH}" ]; then - VCS_BRANCH="$(hg id -b)" - fi - - # Current or last tag ancestor (excluding auto tags, empty if no tags) - VCS_TAG="$(hg log -r "${VCS_NUM}" -l 1 --template '{latesttag}\n' 2>/dev/null | sed -e 's:qtip::' -e 's:tip::' -e 's:qbase::' -e 's:qparent::' -e "s:$(hg --config 'extensions.color=' --color never qtop 2>/dev/null)::" | cut -d ' ' -f 1)" - - # Distance to last tag or an alias of VCS_NUM if there is no tag - if [ ! -z "${VCS_TAG}" ]; then - VCS_TICK="$(hg log -r "${VCS_NUM}" -l 1 --template '{latesttagdistance}\n' 2>/dev/null)" - else - VCS_TICK="${VCS_NUM}" - fi - - # Date of the current commit - VCS_DATE="$(hg log -r "${VCS_NUM}" -l 1 --template '{date|isodatesec}\n' 2>/dev/null | sed -e 's: :T:' | sed -e 's: ::')" -} - -# For bzr repos -bzrRepo() { - cd "$(bzr root)" - - VCS_TYPE="bzr" - - VCS_BASENAME="$(basename "${PWD}")" - - # Is the working copy clean? - bzr version-info --custom --template='{clean}\n' | grep -q '1' - VCS_WC_MODIFIED="${?}" - - # Enumeration of changesets - VCS_NUM="$(bzr revno)" - - # The full revision hash - VCS_FULL_HASH="$(bzr version-info --custom --template='{revision_id}\n')" - - # The short hash - VCS_SHORT_HASH="${VCS_NUM}" - - # Nick of the current branch - VCS_BRANCH="$(bzr nick)" - - # Current or last tag ancestor (excluding auto tags, empty if no tags) - VCS_TAG="$(bzr tags --sort=time | sed '/?$/d' | tail -n1 | cut -d ' ' -f1)" - - # Distance to last tag or an alias of VCS_NUM if there is no tag - if [ ! -z "${VCS_TAG}" ]; then - VCS_TICK="$(bzr log --line -r "tag:${VCS_TAG}.." | tail -n +2 | wc -l | sed -e 's:^ *::')" - else - VCS_TICK="${VCS_NUM}" - fi - - # Date of the current commit - VCS_DATE="$(bzr version-info --custom --template='{date}\n' | sed -e 's: :T:' | sed -e 's: ::')" -} - -# For svn repos -svnRepo() { - VCS_TYPE="svn" - - case "${PWD}" in - /*trunk*|/*branches*|/*tags*) - local fn="${PWD}" - while [ "$(basename "${fn}")" != 'trunk' ] && [ "$(basename "${fn}")" != 'branches' ] && [ "$(basename "${fn}")" != 'tags' ] && [ "$(basename "${fn}")" != '/' ]; do - local fn="$(dirname "${fn}")" - done - fn="$(dirname "${fn}")" - if [ "${fn}" = '/' ]; then - VCS_BASENAME="$(basename "${PWD}")" - else - VCS_BASENAME="$(basename "${fn}")" - fi - ;; - *) VCS_BASENAME="$(basename "${PWD}")" ;; - esac - - # Cache svnversion output - local SVNVERSION="$(svnversion)" - - # Is the working copy clean? - echo "${SVNVERSION}" | grep -q "M" - case "${?}" in - 0) - VCS_WC_MODIFIED="1" - ;; - 1) - if [ ! -z "${UNTRACKEDFILES}"]; then - # `svnversion` does not detect untracked files and `svn status` is really slow, so only run it if we really have to. - if [ -z "$(svn status)" ]; then - VCS_WC_MODIFIED="0" - else - VCS_WC_MODIFIED="1" - fi - fi - ;; - esac - - # Enumeration of changesets - VCS_NUM="$(echo "${SVNVERSION}" | cut -d : -f 1 | sed -e 's:M::' -e 's:S::' -e 's:P::')" - - # The full revision hash - VCS_FULL_HASH="${SVNVERSION}" - - # The short hash - VCS_SHORT_HASH="${VCS_NUM}" - - # Current branch - case "${PWD}" in - /*trunk*|/*branches*|/*tags*) - local lastbase="" - loacl fn="${PWD}" - while : - do - base="$(basename "${fn}")" - if [ "${base}" = 'trunk' ]; then - VCS_BRANCH='trunk' - break - elif [ "${base}" = 'branches' ] || [ "${base}" = 'tags' ]; then - VCS_BRANCH="${lastbase}" - break - elif [ "${base}" = '/' ]; then - VCS_BRANCH="" - break - fi - local lastbase="${base}" - local fn="$(dirname "${fn}")" - done - ;; - *) VCS_BRANCH="" ;; - esac - - # Current or last tag ancestor (empty if no tags). But "current tag" - # can't be extracted reliably because Subversion doesn't have tags the - # way other VCSes do. - VCS_TAG="" - VCS_TICK="" - - # Date of the current commit - VCS_DATE="$(svn info | sed -n -e 's:Last Changed Date\: ::p' | sed 's: (.*)::' | sed -e 's: :T:' | sed -e 's: ::')" + VCS_SHORT_HASH="$(echo "${VCS_FULL_HASH}" | cut -b 1-7)" + # Current branch (if we are on a branch...) + VCS_BRANCH="$(git symbolic-ref --short -q HEAD)" + # Check if we are on a tag + VCS_TAG="$(git describe --exact-match 2> /dev/null)" + # get some extra data in case we are not on a branch or a tag... + VCS_EXTRA="$(git describe 2> /dev/null)" } @@ -332,11 +122,10 @@ hOutput() { #define VCS_TYPE "${VCS_TYPE}" #define VCS_BASENAME "${VCS_BASENAME}" -#define VCS_NUM ${VCS_NUM} -#define VCS_DATE "${VCS_DATE}" #define VCS_BRANCH "${VCS_BRANCH}" #define VCS_TAG "${VCS_TAG}" -#define VCS_TICK ${VCS_TICK} +#define VCS_EXTRA "${VCS_EXTRA}" + #define VCS_FULL_HASH "${VCS_FULL_HASH}" #define VCS_SHORT_HASH "${VCS_SHORT_HASH}" @@ -358,11 +147,9 @@ xcodeOutput() { #define VCS_TYPE ${VCS_TYPE} #define VCS_BASENAME ${VCS_BASENAME} -#define VCS_NUM ${VCS_NUM} -#define VCS_DATE ${VCS_DATE} #define VCS_BRANCH ${VCS_BRANCH} #define VCS_TAG ${VCS_TAG} -#define VCS_TICK ${VCS_TICK} +#define VCS_EXTRA ${VCS_EXTRA} #define VCS_FULL_HASH ${VCS_FULL_HASH} #define VCS_SHORT_HASH ${VCS_SHORT_HASH} @@ -382,11 +169,9 @@ shOutput() { VCS_TYPE="${VCS_TYPE}" VCS_BASENAME="${VCS_BASENAME}" -VCS_NUM=${VCS_NUM} -VCS_DATE="${VCS_DATE}" VCS_BRANCH="${VCS_BRANCH}" VCS_TAG="${VCS_TAG}" -VCS_TICK=${VCS_TICK} +VCS_EXTRA="${VCS_EXTRA}" VCS_FULL_HASH="${VCS_FULL_HASH}" VCS_SHORT_HASH="${VCS_SHORT_HASH}" @@ -396,293 +181,12 @@ VCS_WC_MODIFIED=${VCS_WC_MODIFIED} # end EOF } - -# For Python output -pyOutput() { - case "${VCS_WC_MODIFIED}" in - 0) VCS_WC_MODIFIED="False" ;; - 1) VCS_WC_MODIFIED="True" ;; - esac - cat > "${TARGETFILE}" << EOF -# Generated by autorevision - do not hand-hack! - -VCS_TYPE = "${VCS_TYPE}" -VCS_BASENAME = "${VCS_BASENAME}" -VCS_NUM = ${VCS_NUM} -VCS_DATE = "${VCS_DATE}" -VCS_BRANCH = "${VCS_BRANCH}" -VCS_TAG = "${VCS_TAG}" -VCS_TICK = ${VCS_TICK} - -VCS_FULL_HASH = "${VCS_FULL_HASH}" -VCS_SHORT_HASH = "${VCS_SHORT_HASH}" - -VCS_WC_MODIFIED = ${VCS_WC_MODIFIED} - -# end -EOF -} - -# For Perl output -plOutput() { - cat << EOF -# Generated by autorevision - do not hand-hack! - -\$VCS_TYPE = "${VCS_TYPE}"; -\$VCS_BASENAME = "${VCS_BASENAME}" -\$VCS_NUM = ${VCS_NUM}; -\$VCS_DATE = "${VCS_DATE}"; -\$VCS_BRANCH = "${VCS_BRANCH}"; -\$VCS_TAG = "${VCS_TAG}"; -\$VCS_TICK = ${VCS_TICK}; - -\$VCS_FULL_HASH = "${VCS_FULL_HASH}"; -\$VCS_SHORT_HASH = "${VCS_SHORT_HASH}"; - -\$VCS_WC_MODIFIED = ${VCS_WC_MODIFIED}; - -# end -EOF -} - -# For lua output -luaOutput() { - case "${VCS_WC_MODIFIED}" in - 0) VCS_WC_MODIFIED="false" ;; - 1) VCS_WC_MODIFIED="true" ;; - esac - cat > "${TARGETFILE}" << EOF --- Generated by autorevision - do not hand-hack! - -VCS_TYPE = "${VCS_TYPE}" -VCS_BASENAME = "${VCS_BASENAME}" -VCS_NUM = ${VCS_NUM} -VCS_DATE = "${VCS_DATE}" -VCS_BRANCH = "${VCS_BRANCH}" -VCS_TAG = "${VCS_TAG}" -VCS_TICK = ${VCS_TICK} - -VCS_FULL_HASH = "${VCS_FULL_HASH}" -VCS_SHORT_HASH = "${VCS_SHORT_HASH}" - -VCS_WC_MODIFIED = ${VCS_WC_MODIFIED} - --- end -EOF -} - -# For php output -phpOutput() { - case "${VCS_WC_MODIFIED}" in - 0) VCS_WC_MODIFIED="false" ;; - 1) VCS_WC_MODIFIED="true" ;; - esac - cat > "${TARGETFILE}" << EOF - -EOF -} - -# For ini output -iniOutput() { - case "${VCS_WC_MODIFIED}" in - 0) VCS_WC_MODIFIED="false" ;; - 1) VCS_WC_MODIFIED="true" ;; - esac - cat > "${TARGETFILE}" << EOF -; Generated by autorevision - do not hand-hack! -[VCS] -VCS_TYPE = "${VCS_TYPE}" -VCS_BASENAME = "${VCS_BASENAME}" -VCS_NUM = ${VCS_NUM} -VCS_DATE = "${VCS_DATE}" -VCS_BRANCH = "${VCS_BRANCH}" -VCS_TAG = "${VCS_TAG}" -VCS_TICK = ${VCS_TICK} -VCS_FULL_HASH = "${VCS_FULL_HASH}" -VCS_SHORT_HASH = "${VCS_SHORT_HASH}" -VCS_WC_MODIFIED = ${VCS_WC_MODIFIED} -; end -EOF -} - -# For javascript output -jsOutput() { - case "${VCS_WC_MODIFIED}" in - 1) VCS_WC_MODIFIED="true" ;; - 0) VCS_WC_MODIFIED="false" ;; - esac - cat > "${TARGETFILE}" << EOF -/** Generated by autorevision - do not hand-hack! */ - -var autorevision = { - VCS_TYPE: "${VCS_TYPE}", - VCS_BASENAME: "${VCS_BASENAME}", - VCS_NUM: ${VCS_NUM}, - VCS_DATE: "${VCS_DATE}", - VCS_BRANCH: "${VCS_BRANCH}", - VCS_TAG: "${VCS_TAG}", - VCS_TICK: ${VCS_TICK}, - - VCS_FULL_HASH: "${VCS_FULL_HASH}", - VCS_SHORT_HASH: "${VCS_SHORT_HASH}", - - VCS_WC_MODIFIED: ${VCS_WC_MODIFIED} -}; - -/** Node.js compatibility */ -if (typeof module !== 'undefined') { - module.exports = autorevision; -} - -/** end */ -EOF -} - -# For JSON output -jsonOutput() { - case "${VCS_WC_MODIFIED}" in - 1) VCS_WC_MODIFIED="true" ;; - 0) VCS_WC_MODIFIED="false" ;; - esac - cat > "${TARGETFILE}" << EOF -{ - "VCS_TYPE": "${VCS_TYPE}", - "VCS_BASENAME": "${VCS_BASENAME}", - "VCS_NUM": ${VCS_NUM}, - "VCS_DATE": "${VCS_DATE}", - "VCS_BRANCH":"${VCS_BRANCH}", - "VCS_TAG": "${VCS_TAG}", - "VCS_TICK": ${VCS_TICK}, - - "VCS_FULL_HASH": "${VCS_FULL_HASH}", - "VCS_SHORT_HASH": "${VCS_SHORT_HASH}", - - "VCS_WC_MODIFIED": ${VCS_WC_MODIFIED} -} -EOF -} - -# For Java output -javaOutput() { - case "${VCS_WC_MODIFIED}" in - 1) VCS_WC_MODIFIED="true" ;; - 0) VCS_WC_MODIFIED="false" ;; - esac - cat > "${TARGETFILE}" << EOF -/* Generated by autorevision - do not hand-hack! */ - -import java.util.Date; - -public class autorevision { - public static final String VCS_TYPE = "${VCS_TYPE}"; - public static final String VCS_BASENAME = "${VCS_BASENAME}"; - public static final long VCS_NUM = ${VCS_NUM}; - public static final String VCS_DATE = "${VCS_DATE}"; - public static final String VCS_BRANCH = "${VCS_BRANCH}"; - public static final String VCS_TAG = "${VCS_TAG}"; - public static final long VCS_TICK = ${VCS_TICK}; - - public static final String VCS_FULL_HASH = "${VCS_FULL_HASH}"; - public static final String VCS_SHORT_HASH = "${VCS_SHORT_HASH}"; - - public static final boolean VCS_WC_MODIFIED = ${VCS_WC_MODIFIED}; -} -EOF -} - -# For Java properties output -javapropOutput() { - case "${VCS_WC_MODIFIED}" in - 1) VCS_WC_MODIFIED="true" ;; - 0) VCS_WC_MODIFIED="false" ;; - esac - cat > "${TARGETFILE}" << EOF -# Generated by autorevision - do not hand-hack! - -VCS_TYPE=${VCS_TYPE} -VCS_BASENAME=${VCS_BASENAME} -VCS_NUM=${VCS_NUM} -VCS_DATE=${VCS_DATE} -VCS_BRANCH=${VCS_BRANCH} -VCS_TAG=${VCS_TAG} -VCS_TICK=${VCS_TICK} - -VCS_FULL_HASH=${VCS_FULL_HASH} -VCS_SHORT_HASH=${VCS_SHORT_HASH} - -VCS_WC_MODIFIED=${VCS_WC_MODIFIED} -EOF -} - -# For m4 output -m4Output() { - cat > "${TARGETFILE}" << EOF -define(\`VCS_TYPE', \`${VCS_TYPE}')dnl -define(\`VCS_BASENAME', \`${VCS_BASENAME}')dnl -define(\`VCS_NUM', \`${VCS_NUM}')dnl -define(\`VCS_DATE', \`${VCS_DATE}')dnl -define(\`VCS_BRANCH', \`${VCS_BRANCH}')dnl -define(\`VCS_TAG', \`${VCS_TAG}')dnl -define(\`VCS_TICK', \`${VCS_TICK}')dnl -define(\`VCS_FULLHASH', \`${VCS_FULL_HASH}')dnl -define(\`VCS_SHIRTHASH', \`${VCS_SHORT_HASH}')dnl -define(\`VCS_WC_MODIFIED', \`${VCS_WC_MODIFIED}')dnl -EOF -} - -# For (La)TeX output -texOutput() { - case "${VCS_WC_MODIFIED}" in - 0) VCS_WC_MODIFIED="false" ;; - 1) VCS_WC_MODIFIED="true" ;; - esac - cat > "${TARGETFILE}" << EOF -% Generated by autorevision - do not hand-hack! -\def \vcsType {${VCS_TYPE}} -\def \vcsBasename {${VCS_BASENAME}} -\def \vcsNum {${VCS_NUM}} -\def \vcsDate {${VCS_DATE}} -\def \vcsBranch {${VCS_BRANCH}} -\def \vcsTag {${VCS_TAG}} -\def \vcsTick {${VCS_TICK}} -\def \vcsFullHash {${VCS_FULL_HASH}} -\def \vcsShortHash {${VCS_SHORT_HASH}} -\def \vcsWCModified {${VCS_WC_MODIFIED}} -\endinput -EOF -} - - - # Detect and collect repo data. if [ -f "${CACHEFILE}" ] && [ "${CACHEFORCE}" = "1" ]; then # When requested only read from the cache to populate our symbols. . "${CACHEFILE}" elif [ ! -z "$(git rev-parse HEAD 2>/dev/null)" ]; then gitRepo -elif [ ! -z "$(hg root 2>/dev/null)" ]; then - hgRepo -elif [ ! -z "$(bzr root 2>/dev/null)" ]; then - bzrRepo -elif [ ! -z "$(svn info 2>/dev/null)" ]; then - svnRepo elif [ -f "${CACHEFILE}" ]; then # We are not in a repo; try to use a previously generated cache to populate our symbols. . "${CACHEFILE}" @@ -700,16 +204,12 @@ if [ ! -z "${VAROUT}" ]; then echo "${VCS_TYPE}" elif [ "${VAROUT}" = "VCS_BASENAME" ]; then echo "${VCS_BASENAME}" - elif [ "${VAROUT}" = "VCS_NUM" ]; then - echo "${VCS_NUM}" - elif [ "${VAROUT}" = "VCS_DATE" ]; then - echo "${VCS_DATE}" elif [ "${VAROUT}" = "VCS_BRANCH" ]; then echo "${VCS_BRANCH}" elif [ "${VAROUT}" = "VCS_TAG" ]; then echo "${VCS_TAG}" - elif [ "${VAROUT}" = "VCS_TICK" ]; then - echo "${VCS_TICK}" + elif [ "${VAROUT}" = "VCS_EXTRA" ]; then + echo "${VCS_EXTRA}" elif [ "${VAROUT}" = "VCS_FULL_HASH" ]; then echo "${VCS_FULL_HASH}" elif [ "${VAROUT}" = "VCS_SHORT_HASH" ]; then @@ -722,7 +222,6 @@ if [ ! -z "${VAROUT}" ]; then fi fi - # Detect requested output type and use it. if [ ! -z "${AFILETYPE}" ]; then if [ "${AFILETYPE}" = "h" ]; then @@ -731,28 +230,6 @@ if [ ! -z "${AFILETYPE}" ]; then xcodeOutput elif [ "${AFILETYPE}" = "sh" ]; then shOutput - elif [ "${AFILETYPE}" = "py" ] || [ "${AFILETYPE}" = "python" ]; then - pyOutput - elif [ "${AFILETYPE}" = "pl" ] || [ "${AFILETYPE}" = "perl" ]; then - plOutput - elif [ "${AFILETYPE}" = "lua" ]; then - luaOutput - elif [ "${AFILETYPE}" = "php" ]; then - phpOutput - elif [ "${AFILETYPE}" = "ini" ]; then - iniOutput - elif [ "${AFILETYPE}" = "js" ]; then - jsOutput - elif [ "${AFILETYPE}" = "json" ]; then - jsonOutput - elif [ "${AFILETYPE}" = "java" ]; then - javaOutput - elif [ "${AFILETYPE}" = "javaprop" ]; then - javapropOutput - elif [ "${AFILETYPE}" = "tex" ]; then - texOutput - elif [ "${AFILETYPE}" = "m4" ]; then - m4Output else echo "error: Not a valid output type." 1>&2 exit 1 diff --git a/src/Makefile.am b/src/Makefile.am index ece7ceb8d..cccb4a456 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -10,7 +10,6 @@ autorevision.h autorevision.cache: CLEANFILES = \ $(BUILT_SOURCES) \ - autorevision.cache \ autorevision.h.new BUILT_SOURCES = \ diff --git a/src/version.cpp b/src/version.cpp index 07b9175ec..16a194167 100644 --- a/src/version.cpp +++ b/src/version.cpp @@ -27,90 +27,41 @@ #include "src/autorevision.h" -static const char vcs_date_cstr[] = VCS_DATE; static const char vcs_branch_cstr[] = VCS_BRANCH; +static const char vcs_tag[] = VCS_TAG; -unsigned int version_getRevision() -{ - return VCS_NUM; -} - -const char* version_getVersionString() +/** Composes a nicely formatted version string. +* Determine if we are on a tag (which will NOT show the hash) +* or a branch (which WILL show the hash) +* or in a detached state (which WILL show the hash) +*/ +const char *version_getVersionString() { static const char* version_string = NULL; if (version_string == NULL) { - if (strncmp(vcs_branch_cstr, "tags/", strlen("tags/")) == 0) + if (strlen(vcs_tag)) { - version_string = vcs_branch_cstr + strlen("tags/"); + version_string = vcs_tag; } - else if (strcmp(vcs_branch_cstr, "trunk") == 0) + else if (strlen(vcs_branch_cstr)) { - version_string = "TRUNK " VCS_SHORT_HASH; - } - else if (strncmp(vcs_branch_cstr, "branches/", strlen("branches/")) == 0) - { - version_string = (VCS_BRANCH " branch " VCS_SHORT_HASH) + strlen("branches/"); - } - else if (strncmp(vcs_branch_cstr, "refs/heads/", strlen("refs/heads/")) == 0) - { - version_string = (VCS_BRANCH " branch " VCS_SHORT_HASH) + strlen("refs/heads/"); - } - else if (VCS_NUM != 0) - { - version_string = VCS_BRANCH " " VCS_SHORT_HASH; + version_string = (VCS_BRANCH " " VCS_SHORT_HASH); } else - { - version_string = VCS_SHORT_HASH; + { // not a branch or a tag, so we are detached most likely. + version_string = VCS_EXTRA; } } return version_string; } -bool version_modified() -{ - return VCS_WC_MODIFIED; -} - -const char* version_getBuildDate() -{ - return __DATE__; -} - -const char* version_getBuildTime() -{ - return __TIME__; -} - -const char* version_getVcsDate() -{ -#if (VCS_NUM == 0) - return ""; -#else - static char vcs_date[sizeof(vcs_date_cstr) - 9] = { '\0' }; - - if (vcs_date[0] == '\0') - { - sstrcpy(vcs_date, vcs_date_cstr); - } - - return vcs_date; -#endif -} - -const char* version_getVcsTime() -{ -#if (VCS_NUM == 0) - return ""; -#else - return VCS_DATE + sizeof(VCS_DATE) - 8 - 1; -#endif -} - -const char* version_getFormattedVersionString() +/** Composes a nicely formatted version string. +* +*/ +const char *version_getFormattedVersionString() { static char versionString[MAX_STR_LENGTH] = {'\0'}; @@ -122,7 +73,6 @@ const char* version_getFormattedVersionString() #else const char* wc_state = ""; #endif - // Compose the build type string #ifdef DEBUG const char* build_type = _(" - DEBUG"); @@ -130,21 +80,10 @@ const char* version_getFormattedVersionString() const char* build_type = ""; #endif - const char* build_date = NULL; - - if (strncmp(vcs_branch_cstr, "tags/", strlen("tags/")) != 0) - { - sasprintf((char**)&build_date, _(" - Built %s"), version_getBuildDate()); - } - else - { - build_date = ""; - } - // Construct the version string // TRANSLATORS: This string looks as follows when expanded. // "Version " - snprintf(versionString, MAX_STR_LENGTH, _("Version %s%s%s%s"), version_getVersionString(), wc_state, build_date, build_type); + snprintf(versionString, MAX_STR_LENGTH, _("Version: %s,%s Built:%s%s"), version_getVersionString(), wc_state, __DATE__, build_type); } return versionString; diff --git a/src/version.h b/src/version.h index 7501d879e..167f56b90 100644 --- a/src/version.h +++ b/src/version.h @@ -23,75 +23,7 @@ #include "lib/framework/types.h" -/** Retrieve the low revision number - * \return the lowest revision number of the working copy from which we built - */ -extern unsigned int version_getLowRevision(void); - -/** Retrieve the revision number - * \return the highest revision number of the working copy from which we built - */ -extern unsigned int version_getRevision(void); - -/** Composes a simple version string. - * - * If we compiled from a tag, i.e. the checkout URI started with "tags/%s/", - * the resulting string will be the "%s" portion of the URI. - * - * When we compiled from a branch, i.e. the checkout URI started with - * "branches/%s/", the resulting string will be "%s branch ". - * - * If we compiled from trunk, i.e. the checkout URI started with "trunk/", - * the resulting string will be "TRUNK ". - * - * In all cases "" will be either "r" or - * "r: - Built " - * - * - "" is the return value from version_getVersionString() - * - "" represents the modification and switch state - * of the working copy from which this build was made. - * - "" the date of building as returned by version_getBuildDate() or - * version_getVcsDate(); the latter is only used when the working - * copy has no local modifications. - * - "" the type of build produced (i.e. DEBUG or not) - */ -extern const char* version_getFormattedVersionString(void); +extern const char *version_getVersionString(void); +extern const char *version_getFormattedVersionString(void); #endif // __INCLUDED_VERSION_H__ From af746f570c8b43d98b4b29fd68a36bf9e1f699ed Mon Sep 17 00:00:00 2001 From: vexed Date: Mon, 2 Dec 2013 20:19:11 -0500 Subject: [PATCH 03/11] Make sure that a droid's weapon can actually damage the target before getting orders to pursue the target. Patch by Kreuvf & vexed fixes ticket:4134 --- src/ai.cpp | 14 ++++++++++++++ src/ai.h | 3 ++- src/order.cpp | 2 +- 3 files changed, 17 insertions(+), 2 deletions(-) diff --git a/src/ai.cpp b/src/ai.cpp index c4eff1f36..e46b921c6 100644 --- a/src/ai.cpp +++ b/src/ai.cpp @@ -1166,6 +1166,20 @@ void aiUpdateDroid(DROID *psDroid) } } +/* Check if any of our weapons can hit the target... */ +bool checkAnyWeaponsTarget(BASE_OBJECT *psObject, BASE_OBJECT *psTarget) +{ + DROID *psDroid = (DROID *) psObject; + for (int i = 0;i < psDroid->numWeaps;i++) + { + if (validTarget(psObject, psTarget, i)) + { + return true; + } + } + return false; +} + /* Set of rules which determine whether the weapon associated with the object can fire on the propulsion type of the target. */ bool validTarget(BASE_OBJECT *psObject, BASE_OBJECT *psTarget, int weapon_slot) { diff --git a/src/ai.h b/src/ai.h index 3f5842a6a..155e1ff29 100644 --- a/src/ai.h +++ b/src/ai.h @@ -80,5 +80,6 @@ bool aiChooseSensorTarget(BASE_OBJECT *psObj, BASE_OBJECT **ppsTarget); /*set of rules which determine whether the weapon associated with the object can fire on the propulsion type of the target*/ bool validTarget(BASE_OBJECT *psObject, BASE_OBJECT *psTarget, int weapon_slot); - +// Check if any of the weapons can target the target +bool checkAnyWeaponsTarget(BASE_OBJECT *psObject, BASE_OBJECT *psTarget); #endif // __INCLUDED_SRC_AI_H__ diff --git a/src/order.cpp b/src/order.cpp index b4a8bce8e..dcbb45acf 100644 --- a/src/order.cpp +++ b/src/order.cpp @@ -1025,7 +1025,7 @@ void orderUpdateDroid(DROID *psDroid) psFireTarget = psSpotter->psTarget[0]; } - if (psFireTarget && !psFireTarget->died) + if (psFireTarget && !psFireTarget->died && checkAnyWeaponsTarget(psDroid, psFireTarget)) { bAttack = false; if (isVtolDroid(psDroid)) From 4f37b25b91e9b1bd8589c056ca8b2c0cdd81ef57 Mon Sep 17 00:00:00 2001 From: vexed Date: Tue, 3 Dec 2013 21:16:41 -0500 Subject: [PATCH 04/11] Update Spanish Translation by Saberuneko closes ticket:4137 --- po/es.po | 308 ++++++++++++++++++++++++++----------------------------- 1 file changed, 147 insertions(+), 161 deletions(-) diff --git a/po/es.po b/po/es.po index 02ca020ee..3fd6f4e0f 100644 --- a/po/es.po +++ b/po/es.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: warzone2100\n" "Report-Msgid-Bugs-To: warzone2100-project@lists.sourceforge.net\n" -"POT-Creation-Date: 2013-11-29 18:34+0100\n" -"PO-Revision-Date: 2012-09-13 15:18+0100\n" +"POT-Creation-Date: 2013-11-20 19:01+0100\n" +"PO-Revision-Date: 2013-11-27 15:21+0100\n" "Last-Translator: Daniel Vijande \n" "Language-Team: Spanish \n" "Language: es\n" @@ -11904,23 +11904,29 @@ msgid "" "Your router doesn't support UPnP, you must manually configure your router & firewall to\n" "open port 2100 before you can host a game." msgstr "" +"Tu router no soporta UPnP, debes configurar tu router y cortafuegos manualmente para \n" +"abrir el puerto 2100 antes de poder hospedar una partida." #: lib/netplay/netplay.cpp:999 msgid "" "No UPnP device was found. You must manually configure your router & firewall to\n" "open port 2100 before you can host a game." msgstr "" +"No se encontró un el dispositivo UPnP. Deberás configurar manualmente tu router y cortafuegos para\n" +"abrir el puerto 2100 antes de poder hospedar una partida." #: lib/netplay/netplay.cpp:1027 -#, fuzzy, c-format +#, c-format msgid "Could not open require port (%s) on (%s)" -msgstr "¡No se pudo resolver el nombre del servidor maestro (%s)!" +msgstr "¡No se pudo abrir el puerto necesario (%s) en (%s)!" #: lib/netplay/netplay.cpp:1031 msgid "" "You must manually configure your router & firewall to\n" " open port 2100 before you can host a game." msgstr "" +"Debes configurar tu router y cortafuegos manualmente para\n" +"abrir el puerto 2100 antes de hospedar una partida." #: lib/netplay/netplay.cpp:1041 #, c-format @@ -11928,6 +11934,8 @@ msgid "" "Game configured port (%s) correctly on (%s)\n" "Your external IP is %s" msgstr "" +"Puerto (%s) configurado correctamente en (%s)\n" +"Tu IP externa es %s" #: lib/netplay/netplay.cpp:2176 #, c-format @@ -11952,13 +11960,12 @@ msgid "Failed to get a lobby response!" msgstr "Fallo al obtener respuesta del vestíbulo!" #: po/custom/mac-infoplist.txt:1 -#, fuzzy msgid "" "Copyright © 1999-2004 Eidos Interactive.\n" "Copyright © 2005-2013 The Warzone 2100 Project" msgstr "" "Copyright © 1999-2004 Eidos Interactive.\n" -"Copyright © 2005-2010 The Warzone 2100 Project" +"Copyright © 2005-2013 The Warzone 2100 Project" #: po/custom/mac-infoplist.txt:2 #: po/custom/warzone2100.desktop.txt:2 @@ -12006,8 +12013,8 @@ msgstr "Juego de Estrategia" #: src/intelmap.cpp:530 #: src/intorder.cpp:727 #: src/loadsave.cpp:250 -#: src/multimenu.cpp:506 -#: src/multimenu.cpp:1373 +#: src/multimenu.cpp:496 +#: src/multimenu.cpp:1363 #: src/transporter.cpp:264 #: src/transporter.cpp:346 #: src/transporter.cpp:806 @@ -12357,7 +12364,7 @@ msgid "Player dropped" msgstr "Jugador Desconectado" #: src/display3d.cpp:666 -#: src/multiint.cpp:2382 +#: src/multiint.cpp:2375 msgid "Waiting for other players" msgstr "Esperando a otros jugadores" @@ -12494,9 +12501,8 @@ msgid "MAIN MENU" msgstr "MENÚ PRINCIPAL" #: src/frontend.cpp:117 -#, fuzzy msgid "Official site: http://wz2100.net/" -msgstr "Visita el sitio oficial: http://wz2100.net" +msgstr "Sitio oficial: http://wz2100.net" #: src/frontend.cpp:187 msgid "Fast Play" @@ -12573,7 +12579,7 @@ msgstr "Unirse a una Partida" #: src/frontend.cpp:400 msgid "TCP port 2100 must be opened in your firewall or router to host games!" -msgstr "" +msgstr "¡El puerto TCP 2100 debe estar abierto en tu cortafuegos o router para hospedar partidas!" #: src/frontend.cpp:464 #: src/multiint.cpp:1483 @@ -12661,7 +12667,7 @@ msgstr "50%" #: src/frontend.cpp:563 #: src/frontend.cpp:706 -#: src/multiplay.cpp:2020 +#: src/multiplay.cpp:2002 msgid "Black" msgstr "Negro" @@ -12861,7 +12867,7 @@ msgid "GAME OPTIONS" msgstr "OPCIONES DE JUEGO" #: src/frontend.cpp:1482 -#: src/multiint.cpp:2651 +#: src/multiint.cpp:2644 msgid "Mod: " msgstr "Mod:" @@ -12920,8 +12926,8 @@ msgid "Build (F3)" msgstr "Construcción (F3)" #: src/hci.cpp:3435 -#: src/multiint.cpp:1596 -#: src/multimenu.cpp:808 +#: src/multiint.cpp:1589 +#: src/multimenu.cpp:798 msgid "Power" msgstr "Energía" @@ -13517,7 +13523,7 @@ msgstr "MAPEO DE TECLAS" #: src/keyedit.cpp:377 #: src/multiint.cpp:763 #: src/multiint.cpp:1263 -#: src/multiint.cpp:1682 +#: src/multiint.cpp:1675 msgid "Return To Previous Screen" msgstr "Volver a la Pantalla Anterior" @@ -14198,7 +14204,7 @@ msgstr "Hospedado por %s --- %s" #: src/multiint.cpp:1029 msgid "Can't find any games for your version." -msgstr "" +msgstr "No se encontraron partidas para tu versión." #: src/multiint.cpp:1044 msgid "No games are available" @@ -14249,9 +14255,8 @@ msgid "Refresh Games List" msgstr "Actualizar Lista de Partidas" #: src/multiint.cpp:1271 -#, fuzzy msgid "Filter Games List" -msgstr "Actualizar Lista de Partidas" +msgstr "Filtrar Lista de Partidas" #: src/multiint.cpp:1298 msgid "Enter Password:" @@ -14290,301 +14295,292 @@ msgstr "Elegir Nombre de la Partida" msgid "One-Player Skirmish" msgstr "Escaramuza Un Jugador" -#: src/multiint.cpp:1503 +#: src/multiint.cpp:1500 msgid "Select Map" msgstr "Elegir Mapa" -#: src/multiint.cpp:1504 -msgid "Map-Mod!" -msgstr "" - -#: src/multiint.cpp:1517 +#: src/multiint.cpp:1510 msgid "Click to set Password" msgstr "Click para fijar contraseña" -#: src/multiint.cpp:1527 -#: src/multiint.cpp:1528 +#: src/multiint.cpp:1520 +#: src/multiint.cpp:1521 msgid "Scavengers" msgstr "Carroñeros" -#: src/multiint.cpp:1530 +#: src/multiint.cpp:1523 msgid "No Scavengers" msgstr "Sin Carroñeros" -#: src/multiint.cpp:1560 +#: src/multiint.cpp:1553 msgid "Select Player Name" msgstr "Elegir Nombre del Jugador" -#: src/multiint.cpp:1563 -#: src/multimenu.cpp:801 +#: src/multiint.cpp:1556 +#: src/multimenu.cpp:791 msgid "Alliances" msgstr "Alianzas" -#: src/multiint.cpp:1566 +#: src/multiint.cpp:1559 msgid "No Alliances" msgstr "Sin Alianzas" -#: src/multiint.cpp:1568 +#: src/multiint.cpp:1561 msgid "Allow Alliances" msgstr "Permitir Alianzas" -#: src/multiint.cpp:1572 +#: src/multiint.cpp:1565 msgid "Locked Teams" msgstr "Equipos Fijos" -#: src/multiint.cpp:1598 +#: src/multiint.cpp:1591 msgid "Low Power Levels" msgstr "Niveles de Energía Bajos" -#: src/multiint.cpp:1600 +#: src/multiint.cpp:1593 msgid "Medium Power Levels" msgstr "Niveles de Energía Medios" -#: src/multiint.cpp:1602 +#: src/multiint.cpp:1595 msgid "High Power Levels" msgstr "Niveles de Energía Altos" -#: src/multiint.cpp:1634 +#: src/multiint.cpp:1627 msgid "Base" msgstr "Base" -#: src/multiint.cpp:1636 +#: src/multiint.cpp:1629 msgid "Start with No Bases" msgstr "Comenzar sin Bases" -#: src/multiint.cpp:1638 +#: src/multiint.cpp:1631 msgid "Start with Bases" msgstr "Comenzar con Bases" -#: src/multiint.cpp:1640 +#: src/multiint.cpp:1633 msgid "Start with Advanced Bases" msgstr "Comenzar con Bases Avanzadas" -#: src/multiint.cpp:1672 +#: src/multiint.cpp:1665 msgid "Map Preview" msgstr "Previsualizar Mapa" -#: src/multiint.cpp:1674 +#: src/multiint.cpp:1667 msgid "Click to see Map" msgstr "Click para ver Mapa" -#: src/multiint.cpp:1687 -#: src/multiint.cpp:1689 +#: src/multiint.cpp:1680 +#: src/multiint.cpp:1682 msgid "Start Hosting Game" msgstr "Comenzar Hospedando un Juego" -#: src/multiint.cpp:1696 -#: src/multiint.cpp:1700 +#: src/multiint.cpp:1689 +#: src/multiint.cpp:1693 msgid "Show Structure Limits" msgstr "Fijar Límites de Estructuras" -#: src/multiint.cpp:1696 -#: src/multiint.cpp:1700 +#: src/multiint.cpp:1689 +#: src/multiint.cpp:1693 msgid "Set Structure Limits" msgstr "Fijar Límites de Estructuras" -#: src/multiint.cpp:1777 +#: src/multiint.cpp:1770 msgid "DIFFICULTY" msgstr "DIFICULTAD" -#: src/multiint.cpp:1791 +#: src/multiint.cpp:1784 msgid "Less aggressive" msgstr "Menos agresiva" -#: src/multiint.cpp:1792 +#: src/multiint.cpp:1785 msgid "Plays nice" msgstr "Juega justamente" -#: src/multiint.cpp:1793 +#: src/multiint.cpp:1786 msgid "No holds barred" msgstr "Sin prohibiciones" -#: src/multiint.cpp:1794 +#: src/multiint.cpp:1787 msgid "Starts with advantages" msgstr "Comenzar con ventaja" -#: src/multiint.cpp:1822 +#: src/multiint.cpp:1815 msgid "CHOOSE AI" msgstr "ESCOGER IA" -#: src/multiint.cpp:1860 +#: src/multiint.cpp:1853 msgid "Allow human players to join in this slot" msgstr "Permitir usar esta ranura a jugadores humanos" -#: src/multiint.cpp:1867 +#: src/multiint.cpp:1860 msgid "Leave this slot unused" msgstr "Dejar esta ranura sin utilizar" -#: src/multiint.cpp:2324 +#: src/multiint.cpp:2317 msgid "Team" msgstr "Equipo" -#: src/multiint.cpp:2367 +#: src/multiint.cpp:2360 msgid "You cannot change difficulty in a challenge" msgstr "No puedes cambiar la dificultad en un desafío" -#: src/multiint.cpp:2367 +#: src/multiint.cpp:2360 msgid "Click to change difficulty" msgstr "Click para ajustar dificultad de la IA" -#: src/multiint.cpp:2382 +#: src/multiint.cpp:2375 msgid "Waiting for player" msgstr "Esperando por jugador" -#: src/multiint.cpp:2382 +#: src/multiint.cpp:2375 msgid "Player is ready" msgstr "El Jugador está listo" -#: src/multiint.cpp:2382 +#: src/multiint.cpp:2375 msgid "Click when ready" msgstr "Click cuando esté listo" -#: src/multiint.cpp:2389 +#: src/multiint.cpp:2382 msgid "READY?" msgstr "¿LISTO?" -#: src/multiint.cpp:2433 +#: src/multiint.cpp:2426 msgid "PLAYERS" msgstr "JUGADORES" -#: src/multiint.cpp:2468 +#: src/multiint.cpp:2461 msgid "Click to change to this slot" msgstr "Click para cambiar a esta ranura." -#: src/multiint.cpp:2496 +#: src/multiint.cpp:2489 msgid "Choose Team" msgstr "Elegir equipo" -#: src/multiint.cpp:2526 +#: src/multiint.cpp:2519 msgid "Click to change player colour" msgstr "Click para cambiar el color de jugador." -#: src/multiint.cpp:2554 +#: src/multiint.cpp:2547 msgid "Click to change player position" msgstr "Click para cambiar la posición de jugador." -#: src/multiint.cpp:2558 +#: src/multiint.cpp:2551 msgid "Click to change AI" msgstr "Click para cambiar la IA" -#: src/multiint.cpp:2624 +#: src/multiint.cpp:2617 msgid "CHAT" msgstr "CHAT" -#: src/multiint.cpp:2656 +#: src/multiint.cpp:2649 msgid "All players need to have the same mods to join your game." msgstr "Todos los jugadores necesitan tener los mismos mods para unirse" -#: src/multiint.cpp:2697 +#: src/multiint.cpp:2690 msgid "Connecting to the lobby server..." msgstr "Conectando al vestíbulo..." -#: src/multiint.cpp:3000 +#: src/multiint.cpp:2993 #, c-format msgid "*** password [%s] is now required! ***" msgstr "*** ¡contraseña requerida! [%s] ***" -#: src/multiint.cpp:3006 +#: src/multiint.cpp:2999 msgid "*** password is NOT required! ***" msgstr "*** ¡contraseña NO requerida! ***" -#: src/multiint.cpp:3020 -msgid "This is a map-mod, it can change your playing experience!" -msgstr "" - -#: src/multiint.cpp:3072 +#: src/multiint.cpp:3059 msgid "Sorry! Failed to host the game." msgstr "¡Lo sentimos! No se pudo hospedar la partida" -#: src/multiint.cpp:3195 +#: src/multiint.cpp:3182 msgid "'Locked Teams' mode enabled" msgstr "Modo de Equipos Fijos Activado" -#: src/multiint.cpp:3223 -#: src/multiint.cpp:3292 -#: src/multimenu.cpp:1496 +#: src/multiint.cpp:3210 +#: src/multiint.cpp:3279 +#: src/multimenu.cpp:1486 #, c-format msgid "The host has kicked %s from the game!" msgstr "¡El anfitrión ha expulsado a %s de la partida!" -#: src/multiint.cpp:3358 +#: src/multiint.cpp:3345 msgid "Host is Starting Game" msgstr "Anfitrión Comenzando Partida" -#: src/multiint.cpp:3937 +#: src/multiint.cpp:3923 msgid "UPnP has been enabled." -msgstr "" +msgstr "UPnP ha sido habilitado." -#: src/multiint.cpp:3943 +#: src/multiint.cpp:3929 msgid "UPnP detection faled. You must manually configure router yourself." -msgstr "" +msgstr "Detección de UPnP fallida. Debes configurar tu router manualmente." -#: src/multiint.cpp:3947 -#, fuzzy +#: src/multiint.cpp:3933 msgid "UPnP detection is in progress..." -msgstr "Decodificación en progreso....." +msgstr "Detección de UPnP en progreso..." -#: src/multiint.cpp:3954 +#: src/multiint.cpp:3940 msgid "UPnP detection disabled by user. Autoconfig of port 2100 will not happen." -msgstr "" +msgstr "La detección UPnP está deshabilitada por el usuario. No se configurará el puerto 2100 automáticamente." -#: src/multiint.cpp:3960 +#: src/multiint.cpp:3946 msgid "Hit the ready box to begin your challenge!" -msgstr "" +msgstr "¡Pulsa en la casilla listo para comenzar el desafío!" -#: src/multiint.cpp:3964 +#: src/multiint.cpp:3950 msgid "Press the start hosting button to begin hosting a game." -msgstr "" +msgstr "Pulsa el botón de hospedar para hospedar una partida." -#: src/multiint.cpp:4006 +#: src/multiint.cpp:3992 msgid "Can't connect to lobby server!" msgstr "¡No se pudo conectar al vestíbulo!" -#: src/multiint.cpp:4107 +#: src/multiint.cpp:4084 #, c-format msgid "Mods: %s" msgstr "Mods: %s" -#: src/multiint.cpp:4114 +#: src/multiint.cpp:4091 msgid "Mods: None!" msgstr "Mods: ¡Ninguno!" -#: src/multiint.cpp:4124 +#: src/multiint.cpp:4101 #, c-format msgid "Version: %s" msgstr "Versión: %s" -#: src/multiint.cpp:4175 +#: src/multiint.cpp:4152 #, c-format msgid "Click to take player slot %d" msgstr "Click para cambiar la posición del jugador %d" -#: src/multiint.cpp:4184 -#: src/multiint.cpp:4386 +#: src/multiint.cpp:4161 +#: src/multiint.cpp:4363 msgid "Open" msgstr "Abrir" -#: src/multiint.cpp:4184 -#: src/multiint.cpp:4387 +#: src/multiint.cpp:4161 +#: src/multiint.cpp:4364 msgid "Closed" msgstr "Cerrado" -#: src/multiint.cpp:4234 +#: src/multiint.cpp:4211 #, c-format msgid "Sending Map: %d%% " msgstr "Enviando Mapa: %d%%" -#: src/multiint.cpp:4242 +#: src/multiint.cpp:4219 #, c-format msgid "Map: %d%% downloaded" msgstr "Mapa: %d%% descargado" -#: src/multiint.cpp:4268 +#: src/multiint.cpp:4245 msgid "HOST" msgstr "ANFITRIÓN" -#: src/multiint.cpp:4275 -#: src/multimenu.cpp:815 +#: src/multiint.cpp:4252 +#: src/multimenu.cpp:805 msgid "Ping" msgstr "Ping" @@ -14625,107 +14621,97 @@ msgstr "Restablecer Valores por defecto y Volver a la Pantalla Anterior" msgid "Limits reset to default values" msgstr "Límites reiniciados a valores por defecto" -#: src/multimenu.cpp:633 +#: src/multimenu.cpp:623 msgid "Technology level 1" msgstr "Nivel Tecnológico 1" -#: src/multimenu.cpp:641 +#: src/multimenu.cpp:631 msgid "Technology level 2" msgstr "Nivel Tecnológico 2" -#: src/multimenu.cpp:647 +#: src/multimenu.cpp:637 msgid "Technology level 3" msgstr "Nivel Tecnológico 3" -#: src/multimenu.cpp:653 +#: src/multimenu.cpp:643 msgid "Any number of players" msgstr "Cualquier número de jugadores" -#: src/multimenu.cpp:664 +#: src/multimenu.cpp:654 #, c-format msgid "%d player" msgid_plural "%d players" msgstr[0] "%d jugador" msgstr[1] "%d jugadores" -#: src/multimenu.cpp:802 +#: src/multimenu.cpp:792 msgid "Score" msgstr "Puntuación" -#: src/multimenu.cpp:803 +#: src/multimenu.cpp:793 msgid "Kills" msgstr "Muertes" -#: src/multimenu.cpp:804 +#: src/multimenu.cpp:794 msgid "Units" msgstr "Unidades" -#: src/multimenu.cpp:819 +#: src/multimenu.cpp:809 msgid "Structs" msgstr "Estructuras" -#: src/multimenu.cpp:831 +#: src/multimenu.cpp:821 msgid "Sent/Received per sec —" msgstr "Enviado/Recibido por segundo —" -#: src/multimenu.cpp:831 +#: src/multimenu.cpp:821 msgid "Total Sent/Received —" msgstr "Total Enviado/Recibido —" -#: src/multimenu.cpp:836 +#: src/multimenu.cpp:826 #, c-format msgid "Traf: %u/%u" msgstr "Tráf: %u/%u" -#: src/multimenu.cpp:840 +#: src/multimenu.cpp:830 #, c-format msgid "Uncompressed: %u/%u" msgstr "Descomprimido: %u/%u" -#: src/multimenu.cpp:844 +#: src/multimenu.cpp:834 #, c-format msgid "Pack: %u/%u" msgstr "Comprimido: %u/%u" -#: src/multimenu.cpp:1146 +#: src/multimenu.cpp:1136 msgid "Channel" msgstr "Canal" -#: src/multimenu.cpp:1160 +#: src/multimenu.cpp:1150 msgid "Toggle Alliance State" msgstr "Alternar Estado de la Alianza" -#: src/multimenu.cpp:1179 +#: src/multimenu.cpp:1169 msgid "Give Visibility Report" msgstr "Dar Informe de Visibilidad" -#: src/multimenu.cpp:1185 +#: src/multimenu.cpp:1175 msgid "Leak Technology Documents" msgstr "Compartir Documentos Tecnológicos" -#: src/multimenu.cpp:1192 +#: src/multimenu.cpp:1182 msgid "Hand Over Selected Units" msgstr "Transferir las unidades seleccionadas" -#: src/multimenu.cpp:1198 +#: src/multimenu.cpp:1188 msgid "Give Power To Player" msgstr "Dar Energía al Jugador" -#: src/multimenu.cpp:1498 +#: src/multimenu.cpp:1488 #, c-format msgid "kicked %s : %s from the game, and added them to the banned list!" msgstr "Expulsado %s: %s de la partida, y añadido a la lista de baneo!" -#: src/multiopt.cpp:227 -#: src/multiplay.cpp:1722 -msgid "Warning, this is a map-mod, it could alter normal gameplay." -msgstr "" - -#: src/multiopt.cpp:231 -#: src/multiplay.cpp:1726 -msgid "Warning, HOST has altered the game code, and can't be trusted!" -msgstr "" - #: src/multiplay.cpp:263 #, c-format msgid "Kicking player %s, because they tried to bypass data integrity check!" @@ -14743,63 +14729,63 @@ msgstr "(privado a " msgid "[invalid]" msgstr "[inválido]" -#: src/multiplay.cpp:2017 +#: src/multiplay.cpp:1999 msgid "Green" msgstr "Verde" -#: src/multiplay.cpp:2018 +#: src/multiplay.cpp:2000 msgid "Orange" msgstr "Naranja" -#: src/multiplay.cpp:2019 +#: src/multiplay.cpp:2001 msgid "Grey" msgstr "Gris" -#: src/multiplay.cpp:2021 +#: src/multiplay.cpp:2003 msgid "Red" msgstr "Rojo" -#: src/multiplay.cpp:2022 +#: src/multiplay.cpp:2004 msgid "Blue" msgstr "Azul" -#: src/multiplay.cpp:2023 +#: src/multiplay.cpp:2005 msgid "Pink" msgstr "Rosa" -#: src/multiplay.cpp:2024 +#: src/multiplay.cpp:2006 msgid "Cyan" msgstr "Cian" -#: src/multiplay.cpp:2025 +#: src/multiplay.cpp:2007 msgid "Yellow" msgstr "Amarillo" -#: src/multiplay.cpp:2026 +#: src/multiplay.cpp:2008 msgid "Purple" msgstr "Púrpura" -#: src/multiplay.cpp:2027 +#: src/multiplay.cpp:2009 msgid "White" msgstr "Blanco" -#: src/multiplay.cpp:2028 +#: src/multiplay.cpp:2010 msgid "Bright blue" msgstr "Azul Brillante" -#: src/multiplay.cpp:2029 +#: src/multiplay.cpp:2011 msgid "Neon green" msgstr "Verde Neón" -#: src/multiplay.cpp:2030 +#: src/multiplay.cpp:2012 msgid "Infrared" msgstr "Infra-rojo" -#: src/multiplay.cpp:2031 +#: src/multiplay.cpp:2013 msgid "Ultraviolet" msgstr "Ultravioleta" -#: src/multiplay.cpp:2032 +#: src/multiplay.cpp:2014 msgid "Brown" msgstr "Marrón" @@ -15070,9 +15056,9 @@ msgstr " - Construido %s" #. TRANSLATORS: This string looks as follows when expanded. #. "Version " #: src/version.cpp:147 -#, fuzzy, c-format +#, c-format msgid "Version %s%s%s%s" -msgstr "Versión: %s-%s%s%s%s" +msgstr "Versión: %s%s%s%s" #~ msgid "Warzone 2100 is completely free and open source (FLOSS). Official site: http://wz2100.net/" #~ msgstr "Warzone 2100 es completamente gratuíto y de código abierto (FLOSS). Sitio Oficial: http://wz2100.net/" From 4868883811bf7dc01efc91454bb86968a8722bcc Mon Sep 17 00:00:00 2001 From: vexed Date: Tue, 3 Dec 2013 21:23:36 -0500 Subject: [PATCH 05/11] Update Hungarian translation by mtomi78 closes ticket:4130 Note: please use the actual po name of hu.po, not hungarian.po --- po/hu.po | 791 +++++++++++++++++++++++++++++++++++++++++++------------ 1 file changed, 627 insertions(+), 164 deletions(-) diff --git a/po/hu.po b/po/hu.po index 715f7bd38..510e67dd5 100644 --- a/po/hu.po +++ b/po/hu.po @@ -1,3 +1,4 @@ +# Copyright (c) 2008 Rosetta Contributors and Canonical Ltd 2008 # This file is distributed under the same license as the warzone2100 package. # # Jen Ockwell , 2008. @@ -5,11 +6,11 @@ msgid "" msgstr "" "Project-Id-Version: Warzone 2100\n" "Report-Msgid-Bugs-To: warzone2100-project@lists.sourceforge.net\n" -"POT-Creation-Date: 2013-11-29 18:34+0100\n" -"PO-Revision-Date: 2013-11-24 15:21+0100\n" +"POT-Creation-Date: 2013-11-20 19:01+0100\n" +"PO-Revision-Date: 2023-11-27 20:18+0100\n" "Last-Translator: Kálmán „KAMI” Szalai \n" "Language-Team: Magyar (Hungary) Mészáros Tamás \n" -"Language: hu\n" +"Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -11886,7 +11887,7 @@ msgstr "Helyi rendszer" #: lib/ivis_opengl/screen.cpp:187 msgid "OpenGL GLSL shader version 1.20 is not supported by your system. Some things may look wrong. Please upgrade your graphics driver/hardware, if possible." -msgstr "OpenGL GLSL 1.20 árnyékolási verziót nem támogatja a te rendszered. Néhány dolgot rossznak látok. Kérlek frissítsd fel a drivert vagy hardware videokártyád, ha ez lehetséges." +msgstr "OpenGL GLSL 1.20árnyékolási verziót nem támogatja a te rendszered. Néhány dolgot rossznak látok. Kérlek frissítsd fel a drivert vagy hardware videokártyád, ha ez lehetséges." #: lib/ivis_opengl/screen.cpp:193 msgid "OpenGL 1.2 + VBO + TEC is not supported by your system. The game requires this. Please upgrade your graphics drivers/hardware, if possible." @@ -11898,40 +11899,39 @@ msgid "Enter password here" msgstr "Jelszó begépelés" #: lib/netplay/netplay.cpp:985 -msgid "" +msgid "Your router doesn't support UPnP, you must manually configure your router & firewall to\n" "open port 2100 before you can host a game." -msgstr "" +msgstr "A routered nem támogatja az UPnP-t, és kézzel kell konfigurálni a routered & tűzfalad \n" "nyisd a 2100 portot mielőtt csatalkozol távoli játékhoz." #: lib/netplay/netplay.cpp:999 -msgid "" +msgid "No UPnP device was found. You must manually configure your router & firewall to\n" "open port 2100 before you can host a game." -msgstr "" +msgstr "UPnP eszköz nem található, és kézzel kell konfigurálni a routered & tűzfalad \n" "nyisd a 2100 portot mielőtt csatalkozol távoli játékhoz." #: lib/netplay/netplay.cpp:1027 -#, fuzzy, c-format msgid "Could not open require port (%s) on (%s)" -msgstr "Nem lehet feloldani a mester szerver nevét (%s!" +msgstr "Nem lehet feloldani a mester szerver nevét (%s)!" #: lib/netplay/netplay.cpp:1031 -msgid "" +msgid "You must manually configure your router & firewall to\n" " open port 2100 before you can host a game." -msgstr "" +msgstr "Kézzel konfigurálhatod a routered & tűzfalad \n" "nyisd a 2100 portot mielőtt csatalkozol távoli játékhoz." #: lib/netplay/netplay.cpp:1041 #, c-format -msgid "" +msgid "Game configured port (%s) correctly on (%s)\n" "Your external IP is %s" -msgstr "" +msgstr "Játék konfigurált port (%s) korrigálva (%s)\n" "Külső IP elérhetőséged %s" @@ -11942,12 +11942,12 @@ msgstr "Nem lehet feloldani a mester szerver nevét (%s)!" #: lib/netplay/netplay.cpp:2198 #, c-format -msgid "" +msgid "Error connecting to the lobby server: %s.\n" "Make sure port %d can receive incoming connections.\n" "If you're using a router configure it to use UPnP\n" " or to forward the port to your system." -msgstr "" +msgstr "Hibás kapcsolódás a lobbi szerverhez: %s.\n" "Készíts megfelelő portot %d ahová beérkezik a bejövő kapcsolat.\n" "Ha routert konfigurálod haszlnáld UPnP\n" @@ -11958,12 +11958,12 @@ msgid "Failed to get a lobby response!" msgstr "Képtelenség, hogy kapjon egy támogatói választ!" #: po/custom/mac-infoplist.txt:1 -msgid "" +msgid "Copyright © 1999-2004 Eidos Interactive.\n" "Copyright © 2005-2013 The Warzone 2100 Project" -msgstr "" +msgstr "Copyright © 1999-2004 Eidos Interaktív.\n" -"Copyright © 2005-2013 A Warzone 2100 Projekt" +"Copyright © 2005-2011 A Warzone 2100 Projekt" #: po/custom/mac-infoplist.txt:2 #: po/custom/warzone2100.desktop.txt:2 @@ -12011,8 +12011,8 @@ msgstr "Stratégiai játék" #: src/intelmap.cpp:530 #: src/intorder.cpp:727 #: src/loadsave.cpp:250 -#: src/multimenu.cpp:506 -#: src/multimenu.cpp:1373 +#: src/multimenu.cpp:496 +#: src/multimenu.cpp:1363 #: src/transporter.cpp:264 #: src/transporter.cpp:346 #: src/transporter.cpp:806 @@ -12362,7 +12362,7 @@ msgid "Player dropped" msgstr "Játékos kiszállt" #: src/display3d.cpp:666 -#: src/multiint.cpp:2382 +#: src/multiint.cpp:2375 msgid "Waiting for other players" msgstr "Várakozás további játékosra" @@ -12665,7 +12665,7 @@ msgstr "50%" #: src/frontend.cpp:563 #: src/frontend.cpp:706 -#: src/multiplay.cpp:2020 +#: src/multiplay.cpp:2002 msgid "Black" msgstr "Fekete" @@ -12866,7 +12866,7 @@ msgid "GAME OPTIONS" msgstr "JÁTÉK OPCIÓK" #: src/frontend.cpp:1482 -#: src/multiint.cpp:2651 +#: src/multiint.cpp:2644 msgid "Mod: " msgstr "Mód:" @@ -12925,8 +12925,8 @@ msgid "Build (F3)" msgstr "Építés (F3)" #: src/hci.cpp:3435 -#: src/multiint.cpp:1596 -#: src/multimenu.cpp:808 +#: src/multiint.cpp:1589 +#: src/multimenu.cpp:798 msgid "Power" msgstr "Energia" @@ -13064,7 +13064,7 @@ msgstr "Taktikai UI (Cél ikon létrehozás): Elrejt" #: src/ingameop.cpp:275 #: src/ingameop.cpp:282 msgid "Load Game" -msgstr "Játék Betöltése" +msgstr "Játék betöltése" #: src/ingameop.cpp:277 #: src/ingameop.cpp:284 @@ -13094,11 +13094,11 @@ msgstr "Csata indítás mentése" #: src/init.cpp:422 #, c-format -msgid "" +msgid "The required mod could not be loaded: %s\n" "\n" "Warzone will try to load the game without it." -msgstr "" +msgstr "A mod nem tölthető be: %s\n" "\n" "A Warzone megpróbálja elindítani a játékot nélküle." @@ -13522,7 +13522,7 @@ msgstr "Kulcsfontosságú megfeleltetés" #: src/keyedit.cpp:377 #: src/multiint.cpp:763 #: src/multiint.cpp:1263 -#: src/multiint.cpp:1682 +#: src/multiint.cpp:1675 msgid "Return To Previous Screen" msgstr "Vissza az előző képernyőre" @@ -14255,7 +14255,7 @@ msgstr "Játék lista frissítése" #: src/multiint.cpp:1271 msgid "Filter Games List" -msgstr "Játék játék szűrő " +msgstr "Játék lista frissítése" #: src/multiint.cpp:1298 msgid "Enter Password:" @@ -14294,300 +14294,292 @@ msgstr "Játéknév kiválasztása" msgid "One-Player Skirmish" msgstr "Egyjátékos csata" -#: src/multiint.cpp:1503 +#: src/multiint.cpp:1500 msgid "Select Map" msgstr "Térkép kiválasztása" -#: src/multiint.cpp:1504 -msgid "Map-Mod!" -msgstr "" - -#: src/multiint.cpp:1517 +#: src/multiint.cpp:1510 msgid "Click to set Password" msgstr "Kattintson ide a jelszó beállításához" -#: src/multiint.cpp:1527 -#: src/multiint.cpp:1528 +#: src/multiint.cpp:1520 +#: src/multiint.cpp:1521 msgid "Scavengers" msgstr "Dögevők" -#: src/multiint.cpp:1530 +#: src/multiint.cpp:1523 msgid "No Scavengers" msgstr "Nincsenek dögevők" -#: src/multiint.cpp:1560 +#: src/multiint.cpp:1553 msgid "Select Player Name" msgstr "Játékos nevének kiválasztása" -#: src/multiint.cpp:1563 -#: src/multimenu.cpp:801 +#: src/multiint.cpp:1556 +#: src/multimenu.cpp:791 msgid "Alliances" msgstr "Szövetségek" -#: src/multiint.cpp:1566 +#: src/multiint.cpp:1559 msgid "No Alliances" msgstr "Nincsenek szövetségek" -#: src/multiint.cpp:1568 +#: src/multiint.cpp:1561 msgid "Allow Alliances" msgstr "Megengedi szövetséget" -#: src/multiint.cpp:1572 +#: src/multiint.cpp:1565 msgid "Locked Teams" msgstr "Zárolt csapatok" -#: src/multiint.cpp:1598 +#: src/multiint.cpp:1591 msgid "Low Power Levels" msgstr "Alacsony energia szint" -#: src/multiint.cpp:1600 +#: src/multiint.cpp:1593 msgid "Medium Power Levels" msgstr "Közepes energia szint" -#: src/multiint.cpp:1602 +#: src/multiint.cpp:1595 msgid "High Power Levels" msgstr "Magas energia szint" -#: src/multiint.cpp:1634 +#: src/multiint.cpp:1627 msgid "Base" msgstr "Bázis" -#: src/multiint.cpp:1636 +#: src/multiint.cpp:1629 msgid "Start with No Bases" msgstr "Kezdés bázis nélkül" -#: src/multiint.cpp:1638 +#: src/multiint.cpp:1631 msgid "Start with Bases" msgstr "Kezdés bázissal" -#: src/multiint.cpp:1640 +#: src/multiint.cpp:1633 msgid "Start with Advanced Bases" msgstr "Kezdés fejlesztett bázissal" -#: src/multiint.cpp:1672 +#: src/multiint.cpp:1665 msgid "Map Preview" msgstr "Térkép előnézet" -#: src/multiint.cpp:1674 +#: src/multiint.cpp:1667 msgid "Click to see Map" msgstr "Kattints ide a térkép megtekintéséhez" -#: src/multiint.cpp:1687 -#: src/multiint.cpp:1689 +#: src/multiint.cpp:1680 +#: src/multiint.cpp:1682 msgid "Start Hosting Game" msgstr "Központi játék elindítása" -#: src/multiint.cpp:1696 -#: src/multiint.cpp:1700 +#: src/multiint.cpp:1689 +#: src/multiint.cpp:1693 msgid "Show Structure Limits" msgstr "Építési korlátozás" -#: src/multiint.cpp:1696 -#: src/multiint.cpp:1700 +#: src/multiint.cpp:1689 +#: src/multiint.cpp:1693 msgid "Set Structure Limits" msgstr "Épületek maximális számának beállítása" -#: src/multiint.cpp:1777 +#: src/multiint.cpp:1770 msgid "DIFFICULTY" msgstr "NEHÉZSÉG" -#: src/multiint.cpp:1791 +#: src/multiint.cpp:1784 msgid "Less aggressive" msgstr "Kevésbé agresszív" -#: src/multiint.cpp:1792 +#: src/multiint.cpp:1785 msgid "Plays nice" msgstr "Kedvelt játékosok" -#: src/multiint.cpp:1793 +#: src/multiint.cpp:1786 msgid "No holds barred" msgstr "Nincs fedetlen hatalom" -#: src/multiint.cpp:1794 +#: src/multiint.cpp:1787 msgid "Starts with advantages" msgstr "Kezdés fejlesztett bázissal" -#: src/multiint.cpp:1822 +#: src/multiint.cpp:1815 msgid "CHOOSE AI" msgstr "AI választás" -#: src/multiint.cpp:1860 +#: src/multiint.cpp:1853 msgid "Allow human players to join in this slot" msgstr "Emberi játékosok kapcsolódnak a nyomhoz" -#: src/multiint.cpp:1867 +#: src/multiint.cpp:1860 msgid "Leave this slot unused" msgstr "Elhagyom ezt a nem használt nyomot" -#: src/multiint.cpp:2324 +#: src/multiint.cpp:2317 msgid "Team" msgstr "Csapat" -#: src/multiint.cpp:2367 +#: src/multiint.cpp:2360 msgid "You cannot change difficulty in a challenge" msgstr "Nem tudsz változtatni a nehézségen mozgásnál" -#: src/multiint.cpp:2367 +#: src/multiint.cpp:2360 msgid "Click to change difficulty" msgstr "Kattintson a nehézség beállításához" -#: src/multiint.cpp:2382 +#: src/multiint.cpp:2375 msgid "Waiting for player" msgstr "Várakozás további játékosra" -#: src/multiint.cpp:2382 +#: src/multiint.cpp:2375 msgid "Player is ready" msgstr "Játékos kiszállt" -#: src/multiint.cpp:2382 +#: src/multiint.cpp:2375 msgid "Click when ready" msgstr "Kattintson, ha kész" -#: src/multiint.cpp:2389 +#: src/multiint.cpp:2382 msgid "READY?" msgstr "KÉSZ?" -#: src/multiint.cpp:2433 +#: src/multiint.cpp:2426 msgid "PLAYERS" msgstr "JÁTÉKOSOK" -#: src/multiint.cpp:2468 +#: src/multiint.cpp:2461 msgid "Click to change to this slot" msgstr "Kattintson a játékosok betöltésének változtatásához" -#: src/multiint.cpp:2496 +#: src/multiint.cpp:2489 msgid "Choose Team" msgstr "Csapatválasztás" -#: src/multiint.cpp:2526 +#: src/multiint.cpp:2519 msgid "Click to change player colour" msgstr "Kattintson a játékos színeinek változtatásához" -#: src/multiint.cpp:2554 +#: src/multiint.cpp:2547 msgid "Click to change player position" msgstr "Kattintson a játékos pozíciójának beállításához" -#: src/multiint.cpp:2558 +#: src/multiint.cpp:2551 msgid "Click to change AI" msgstr "Kattintson a játékos AI beállítás változtatásához" -#: src/multiint.cpp:2624 +#: src/multiint.cpp:2617 msgid "CHAT" msgstr "CSEVEGÉS" -#: src/multiint.cpp:2656 +#: src/multiint.cpp:2649 msgid "All players need to have the same mods to join your game." msgstr "Minden játékosnak ugyanazokkal a mod-okkal kell rendelkeznie, hogy csatlakozhassanak a játékhoz." -#: src/multiint.cpp:2697 +#: src/multiint.cpp:2690 msgid "Connecting to the lobby server..." msgstr "Kapcsolódás a kiszolgáló szerverhez..." -#: src/multiint.cpp:3000 +#: src/multiint.cpp:2993 #, c-format msgid "*** password [%s] is now required! ***" msgstr "*** jelszót [%s] kötelező! ***" -#: src/multiint.cpp:3006 +#: src/multiint.cpp:2999 msgid "*** password is NOT required! ***" msgstr " *** jelszó NEM kötelező! ***" -#: src/multiint.cpp:3020 -msgid "This is a map-mod, it can change your playing experience!" -msgstr "" - -#: src/multiint.cpp:3072 +#: src/multiint.cpp:3059 msgid "Sorry! Failed to host the game." msgstr "Nem sikerült a játékot létrehoznia." -#: src/multiint.cpp:3195 +#: src/multiint.cpp:3182 msgid "'Locked Teams' mode enabled" msgstr "„Fix csapatok” mód engedélyezve" -#: src/multiint.cpp:3223 -#: src/multiint.cpp:3292 -#: src/multimenu.cpp:1496 +#: src/multiint.cpp:3210 +#: src/multiint.cpp:3279 +#: src/multimenu.cpp:1486 #, c-format msgid "The host has kicked %s from the game!" msgstr "A játékmester kirúgta %s a játékból!" -#: src/multiint.cpp:3358 +#: src/multiint.cpp:3345 msgid "Host is Starting Game" msgstr "A játékmester elindította a játékot" -#: src/multiint.cpp:3937 +#: src/multiint.cpp:3923 msgid "UPnP has been enabled." msgstr "UPnP be lett kapcsolva" -#: src/multiint.cpp:3943 +#: src/multiint.cpp:3929 msgid "UPnP detection faled. You must manually configure router yourself." msgstr "UPnP detektálás hibás. Kézzel kell a routert konfigurálnod." -#: src/multiint.cpp:3947 +#: src/multiint.cpp:3933 msgid "UPnP detection is in progress..." msgstr "Dekódolás folyamatban....." -#: src/multiint.cpp:3954 +#: src/multiint.cpp:3940 msgid "UPnP detection disabled by user. Autoconfig of port 2100 will not happen." msgstr "UPnP vizsgálatot kikapcsolta a felhasználó. Automatikus beállítás a 2100 portra nem történt meg." -#: src/multiint.cpp:3960 +#: src/multiint.cpp:3946 msgid "Hit the ready box to begin your challenge!" -msgstr "Sikerült a teljes páholyt elkészíteni kezdődhet a kihívás!" +msgstr "A doboz elkészült és kezdődhet a kihívás!" -#: src/multiint.cpp:3964 +#: src/multiint.cpp:3950 msgid "Press the start hosting button to begin hosting a game." msgstr "Nyomd meg a távoli start gombot a távoli játék indításához " -#: src/multiint.cpp:4006 +#: src/multiint.cpp:3992 msgid "Can't connect to lobby server!" msgstr "Nem tud kapcsolódni a kiszolgáló szerverhez!" -#: src/multiint.cpp:4107 +#: src/multiint.cpp:4084 #, c-format msgid "Mods: %s" msgstr "Mód: %s" -#: src/multiint.cpp:4114 +#: src/multiint.cpp:4091 msgid "Mods: None!" msgstr "Mód: Nincs!" -#: src/multiint.cpp:4124 +#: src/multiint.cpp:4101 #, c-format msgid "Version: %s" msgstr "Verzió: %s" -#: src/multiint.cpp:4175 +#: src/multiint.cpp:4152 #, c-format msgid "Click to take player slot %d" msgstr "Kattintson a játékosok betöltéséhez %d" -#: src/multiint.cpp:4184 -#: src/multiint.cpp:4386 +#: src/multiint.cpp:4161 +#: src/multiint.cpp:4363 msgid "Open" msgstr "Megnyitás" -#: src/multiint.cpp:4184 -#: src/multiint.cpp:4387 +#: src/multiint.cpp:4161 +#: src/multiint.cpp:4364 msgid "Closed" msgstr "Bezárás" -#: src/multiint.cpp:4234 +#: src/multiint.cpp:4211 #, c-format msgid "Sending Map: %d%% " msgstr "Térkép küldés: %d%%" -#: src/multiint.cpp:4242 +#: src/multiint.cpp:4219 #, c-format msgid "Map: %d%% downloaded" msgstr "Térkép: %d%% letöltött" -#: src/multiint.cpp:4268 +#: src/multiint.cpp:4245 msgid "HOST" msgstr "GAZDAGÉP" -#: src/multiint.cpp:4275 -#: src/multimenu.cpp:815 +#: src/multiint.cpp:4252 +#: src/multimenu.cpp:805 msgid "Ping" msgstr "Pingelés" @@ -14628,107 +14620,97 @@ msgstr "Alapbeállítások alkalmazása és vissza az előző menübe" msgid "Limits reset to default values" msgstr "A határértékek visszaállítása az alapértelmezettekre" -#: src/multimenu.cpp:633 +#: src/multimenu.cpp:623 msgid "Technology level 1" msgstr "1. Technológiai szint" -#: src/multimenu.cpp:641 +#: src/multimenu.cpp:631 msgid "Technology level 2" msgstr "2. Technológiai szint" -#: src/multimenu.cpp:647 +#: src/multimenu.cpp:637 msgid "Technology level 3" msgstr "3. Technológiai szint" -#: src/multimenu.cpp:653 +#: src/multimenu.cpp:643 msgid "Any number of players" msgstr "Nincs meghatározott játékos szám" -#: src/multimenu.cpp:664 +#: src/multimenu.cpp:654 #, c-format msgid "%d player" msgid_plural "%d players" msgstr[0] "%d játékos" msgstr[1] "%d játékosok" -#: src/multimenu.cpp:802 +#: src/multimenu.cpp:792 msgid "Score" msgstr "Eredmény" -#: src/multimenu.cpp:803 +#: src/multimenu.cpp:793 msgid "Kills" msgstr "Elestek" -#: src/multimenu.cpp:804 +#: src/multimenu.cpp:794 msgid "Units" msgstr "Egységek" -#: src/multimenu.cpp:819 +#: src/multimenu.cpp:809 msgid "Structs" msgstr "Épületek" -#: src/multimenu.cpp:831 +#: src/multimenu.cpp:821 msgid "Sent/Received per sec —" msgstr "Elküldött/Érkezett per másodperc —" -#: src/multimenu.cpp:831 +#: src/multimenu.cpp:821 msgid "Total Sent/Received —" msgstr "Teljes Elküldött/Érkezett —" -#: src/multimenu.cpp:836 +#: src/multimenu.cpp:826 #, c-format msgid "Traf: %u/%u" msgstr "Edzett: %u/%u" -#: src/multimenu.cpp:840 +#: src/multimenu.cpp:830 #, c-format msgid "Uncompressed: %u/%u" msgstr "Tömörítetlen: %u/%u" -#: src/multimenu.cpp:844 +#: src/multimenu.cpp:834 #, c-format msgid "Pack: %u/%u" msgstr "Csomag: %u/%u" -#: src/multimenu.cpp:1146 +#: src/multimenu.cpp:1136 msgid "Channel" msgstr "Csatorna" -#: src/multimenu.cpp:1160 +#: src/multimenu.cpp:1150 msgid "Toggle Alliance State" msgstr "Szövetség státuszának megváltoztatása" -#: src/multimenu.cpp:1179 +#: src/multimenu.cpp:1169 msgid "Give Visibility Report" msgstr "Felderítő jelentést ad" -#: src/multimenu.cpp:1185 +#: src/multimenu.cpp:1175 msgid "Leak Technology Documents" msgstr "Technológiai dokumentumok kiszivárogtatása" -#: src/multimenu.cpp:1192 +#: src/multimenu.cpp:1182 msgid "Hand Over Selected Units" msgstr "Adja a kijelölt egységeket" -#: src/multimenu.cpp:1198 +#: src/multimenu.cpp:1188 msgid "Give Power To Player" msgstr "Energiát ad a játékosnak" -#: src/multimenu.cpp:1498 +#: src/multimenu.cpp:1488 #, c-format msgid "kicked %s : %s from the game, and added them to the banned list!" msgstr "%s : %s ki lettek rúgva a játékból, és a tiltó listára kerültek." -#: src/multiopt.cpp:227 -#: src/multiplay.cpp:1722 -msgid "Warning, this is a map-mod, it could alter normal gameplay." -msgstr "" - -#: src/multiopt.cpp:231 -#: src/multiplay.cpp:1726 -msgid "Warning, HOST has altered the game code, and can't be trusted!" -msgstr "" - #: src/multiplay.cpp:263 #, c-format msgid "Kicking player %s, because they tried to bypass data integrity check!" @@ -14746,63 +14728,63 @@ msgstr "(magán a" msgid "[invalid]" msgstr "[érvénytelen]" -#: src/multiplay.cpp:2017 +#: src/multiplay.cpp:1999 msgid "Green" msgstr "Zöld" -#: src/multiplay.cpp:2018 +#: src/multiplay.cpp:2000 msgid "Orange" msgstr "Narancs" -#: src/multiplay.cpp:2019 +#: src/multiplay.cpp:2001 msgid "Grey" msgstr "Szürke" -#: src/multiplay.cpp:2021 +#: src/multiplay.cpp:2003 msgid "Red" msgstr "Vörös" -#: src/multiplay.cpp:2022 +#: src/multiplay.cpp:2004 msgid "Blue" msgstr "Kék" -#: src/multiplay.cpp:2023 +#: src/multiplay.cpp:2005 msgid "Pink" msgstr "Rózsaszín" -#: src/multiplay.cpp:2024 +#: src/multiplay.cpp:2006 msgid "Cyan" msgstr "Cián" -#: src/multiplay.cpp:2025 +#: src/multiplay.cpp:2007 msgid "Yellow" msgstr "Sárga" -#: src/multiplay.cpp:2026 +#: src/multiplay.cpp:2008 msgid "Purple" msgstr "Lila" -#: src/multiplay.cpp:2027 +#: src/multiplay.cpp:2009 msgid "White" msgstr "Fehér" -#: src/multiplay.cpp:2028 +#: src/multiplay.cpp:2010 msgid "Bright blue" msgstr "Élénk kék" -#: src/multiplay.cpp:2029 +#: src/multiplay.cpp:2011 msgid "Neon green" msgstr "Neon zöld" -#: src/multiplay.cpp:2030 +#: src/multiplay.cpp:2012 msgid "Infrared" msgstr "Infravörös" -#: src/multiplay.cpp:2031 +#: src/multiplay.cpp:2013 msgid "Ultraviolet" msgstr "Ultraviola" -#: src/multiplay.cpp:2032 +#: src/multiplay.cpp:2014 msgid "Brown" msgstr "Barna" @@ -15078,3 +15060,484 @@ msgstr " - Felépítés %s" #, c-format msgid "Version %s%s%s%s" msgstr "Verzió %s%s%s%s" + +#~ msgid "Warzone 2100 is completely free and open source (FLOSS). Official site: http://wz2100.net/" +#~ msgstr "Warzone 2100 egy teljesen szabad és nyitott forrású játék (FLOSS). Hivatalos oldal: http://wz 2100.net" + +#~ msgid "TCP PORT 2100 MUST BE OPENED IN YOUR FIREWALL / ROUTER TO HOST GAMES!" +#~ msgstr "TCP PORT 2100 SZÜKSÉGES MEGNYITNOD A TŰZFALAD / ROUTERED A KISZOLGÁLÓ JÁTÉKOKHOZ!" + +#~ msgid "Password is already set!" +#~ msgstr "Játékos kiszállt" + +#~ msgid "OpenGL 2.0 is not supported by your system. Some things may look wrong. Please upgrade your graphics driver/hardware, if possible." +#~ msgstr "OpenGL 2.0-t nem támogatja a te rendszered. Néhány dolgot rossznak látok. Kérlek frissítsd fel a drivert vagy hardware videokártyád, ha ez lehetséges." + +#~ msgid "Unit Colour (SP)" +#~ msgstr "Egység Színek" + +#~ msgid "Unit Colour (MP)" +#~ msgstr "Egység Színek" + +#~ msgid "VTOL HPV Cannon Bug VTOL" +#~ msgstr "VTOL Bug nagysebességű ágyú" + +#~ msgid "VTOL HPV Cannon Scorpion VTOL" +#~ msgstr "VTOL Scorpion nagysebességű ágyú" + +#~ msgid "VTOL HPV Cannon Mantis VTOL" +#~ msgstr "VTOL Mantis nagysebességű ágyú" + +#~ msgid "Mini-Rocket Artillery Cobra Tracks" +#~ msgstr "Cobra lánctalpas tüzérségi kisrakéta" + +#~ msgid "HPV Cannon Python Hover" +#~ msgstr "Python légpárnás nagysebességű ágyú" + +#~ msgid "CHEATS ARE NOW ENABLED!" +#~ msgstr "CSALÁS BEKAPCSOLVA!" + +#~ msgid "CHEATS ARE NOW DISABLED!" +#~ msgstr "CSALÁS KIKAPCSOLVA!" + +#~ msgid "Received invalid addGame data." +#~ msgstr "Érvénytelen játék hozzáadás adat érkezett." + +#~ msgid "Create a game first!" +#~ msgstr "Játékcél felkutatása" + +#~ msgid "Received invalid login data." +#~ msgstr "Érvénytelen bejelentkezési adat érkezett." + +#~ msgid "Failed to communicate with the lobby." +#~ msgstr "Hibás kommunikáció a lobbinál." + +#~ msgid "Got server error: %s" +#~ msgstr "Szerver hiba: %s" + +#~ msgid "Game not in the lobby, please login first!" +#~ msgstr "Játékban ne legyen lobbi, kérlek jelentkezz be először!" + +#~ msgid "Activate self-test" +#~ msgstr "Önellenőrzés aktiválása" + +#~ msgid "Failed to create building" +#~ msgstr "Az épület létrehozása meghiúsult" + +#~ msgid "Authentication failed or not Authenticated" +#~ msgstr "Azonosítás hibás vagy nem azonosított" + +#~ msgid "The lobby rejected you!" +#~ msgstr "A lobbit elutasítom!" + +#~ msgid "Connect IP" +#~ msgstr "IP Kapcsolódás!" + +#~ msgid "Login" +#~ msgstr "Bejelentkezés" + +#~ msgid "Logout" +#~ msgstr "Kijelentkezés" + +#~ msgid "LOBBY LOGIN" +#~ msgstr "Lobbi bejelentkezés" + +#~ msgid "Username:" +#~ msgstr "Felhasználó név:" + +#~ msgid "Password:" +#~ msgstr "Jelszó megadása:" + +#~ msgid "Use your wz2100.net credentials here." +#~ msgstr "Használd a wz2100.net igazolást itt." + +#~ msgid "You cannot change AI in a challenge" +#~ msgstr "Nem tudsz változtatni az AI-on mozgásnál" + +#~ msgid "Players" +#~ msgstr "Játékosok" + +#~ msgid "3 players" +#~ msgstr "3 játékos" + +#~ msgid "4 players" +#~ msgstr "4 játékos" + +#~ msgid "5 players" +#~ msgstr "5 játékos" + +#~ msgid "6 players" +#~ msgstr "6 játékos" + +#~ msgid "7 players" +#~ msgstr "7 játékos" + +#~ msgid "8 players" +#~ msgstr "8 játékos" + +#~ msgid "9 players" +#~ msgstr "9 játékos" + +#~ msgid "10 players" +#~ msgstr "10 játékos" + +#~ msgid "11 players" +#~ msgstr "11 játékos" + +#~ msgid "12 players" +#~ msgstr "12 játékos" + +#~ msgid "13 players" +#~ msgstr "13 játékos" + +#~ msgid "14 players" +#~ msgstr "14 játékos" + +#~ msgid "15 players" +#~ msgstr "15 játékos" + +#~ msgid "16 players" +#~ msgstr "16 játékos" + +#~ msgid "FPS %d; PIEs %d; polys %d; States %d" +#~ msgstr "FPS %d; PIEs %d; poli %d; Államok %d" + +#~ msgid "Power Accrued" +#~ msgstr "Energia felhalmozva" + +#~ msgid "Radar showing revealed terrain" +#~ msgstr "Radar mutatja a felderített terepet" + +#~ msgid "Fog" +#~ msgstr "Köd" + +#~ msgid "Mist" +#~ msgstr "Homály" + +#~ msgid "Distance Fog" +#~ msgstr "Távoli köd" + +#~ msgid "* May negatively affect performance" +#~ msgstr "* Hátrányosan érintheti a sebességet" + +#~ msgid "Congratulations your successfull evacuation of Beta Base." +#~ msgstr "Gratulálok Béta bázis sikeres evakuálásához." + +#~ msgid "Cobra Hover Heavy-Repair" +#~ msgstr "Cobra légpárnás nehéz szervízkocsi" + +#~ msgid "Viper HMG Wheels" +#~ msgstr "Viper nehéz gépfegyver" + +#~ msgid "TK Mantis Hover" +#~ msgstr "Mantis légpárnás Tank Killer" + +#~ msgid "Cobra HMG Tracks" +#~ msgstr "Cobra lánctalpas nehéz gépfegyver" + +#~ msgid "Cobra Hover HC" +#~ msgstr "Cobra légpárnás nehéz ágyú" + +#~ msgid "Scorpion Lancer Tracks" +#~ msgstr "Scorpion lánctalpas tankelhárító" + +#~ msgid "Scorpion Heavy Cannon Tracks" +#~ msgstr "Scorpion lánctalpas nehéz ágyú" + +#~ msgid "Scorpion Lancer VTOL" +#~ msgstr "Scorpion VTOL tankelhárító" + +#~ msgid "Scorpion BB VTOL" +#~ msgstr "Scorpion VTOL bunkertörő" + +#~ msgid "Viper Command Turret Tracks" +#~ msgstr "Viper parancsnoki lánctalapas" + +#~ msgid "Cobra Command Turret Tracks" +#~ msgstr "Cobra parancsnoki lánctalpas" + +#~ msgid "Scorpion Command Turret Tracks" +#~ msgstr "Scorpion parancsnoki lánctalpas" + +#~ msgid "Mantis Command Turret Tracks" +#~ msgstr "Mantis parancsnoki lánctalpas" + +#~ msgid "Cobra Lancer Tracks" +#~ msgstr "Cobra lánctalpas tankelhárító rakéta" + +#~ msgid "Mantis Heavy Cannon Tracks" +#~ msgstr "Mantis lánctalpas nehéz ágyú" + +#~ msgid "Mantis Tank Killer Tracks" +#~ msgstr "Mantis lánctalpas Tank Killer rakéta" + +#~ msgid "Mantis Scourge Tracks" +#~ msgstr "Mantis lánctalpas Scourge rakéta" + +#~ msgid "Scorpion Heavy Machinegun Tracks" +#~ msgstr "Scorpion lánctalpas nehéz gépfegyver" + +#~ msgid "Scorpion Repair Tracks" +#~ msgstr "Scorpion lánctalpas szervizkocsi" + +#~ msgid "Scorpion Heavy Repair Hover" +#~ msgstr "Scorpion légpárnás nehéz szervizkocsi" + +#~ msgid "Cobra Hover Truck" +#~ msgstr "Cobra légpárnás munkagép" + +#~ msgid "Scorpion Hover Truck" +#~ msgstr "Scorpion légpárnás munkagép" + +#~ msgid "Mantis Hover Truck" +#~ msgstr "Mantis légpárnás munkagép" + +#~ msgid "Cobra Bunker Buster Tracks" +#~ msgstr "Cobra lánctalpas bunkertörő" + +#~ msgid "Scorpion Bunker Buster Tracks" +#~ msgstr "Scorpion lánctalpas bunkertörő" + +#~ msgid "Mantis Bunker Buster Tracks" +#~ msgstr "Mantis lánctalpas bunkertörő" + +#~ msgid "Viper Tracks Lancer" +#~ msgstr "Viper lánctalpas tankelhárító rakéta" + +#~ msgid "Cobra Half-Tracks Mini-Pod" +#~ msgstr "Cobra féllánctalpas kis rakétavető" + +#~ msgid "Cobra Tracks Mini-Pod" +#~ msgstr "Cobra lánctalpas kis rakétavető" + +#~ msgid "Cobra Tracks Mini-Rocket Artillery" +#~ msgstr "Cobra lánctalpas tüzérségi kisrakéta" + +#~ msgid "Cobra Inferno Half-track" +#~ msgstr "Cobra féllánctalpas Inferno lángszóró" + +#~ msgid "Python HVC Hover" +#~ msgstr "Python lánctalpas nagysebességű ágyú" + +#~ msgid "Python Scourge Tracks" +#~ msgstr "Python lánctalpas Scourge rakéta" + +#~ msgid "Python Gauss Cannon Tracks" +#~ msgstr "Python lánctalpas Gauss ágyú" + +#~ msgid "Python Pulse Laser Tracks" +#~ msgstr "Python lánctalpas impulzus lézer" + +#~ msgid "Tiger Pulse Laser Tracks" +#~ msgstr "Tiger lánctalpas impulzus lézer" + +#~ msgid "Tiger Heavy Laser Tracks" +#~ msgstr "Tiger lánctalpas nehéz lézer" + +#~ msgid "Wyvern Gauss Cannon Tracks" +#~ msgstr "Wyvern lánctalpas Gauss ágyú" + +#~ msgid "Wyvern Pulse Laser Tracks" +#~ msgstr "Wyvern lánctalpas impulzus lézer" + +#~ msgid "Wyvern Heavy Laser Tracks" +#~ msgstr "Wyvern lánctalpas nehéz lézer" + +#~ msgid "Viper Machinegun Half-Track" +#~ msgstr "Viper féllánctalpas gépfegyver" + +#~ msgid "Viper Flamer Half-Track" +#~ msgstr "Viper féllánctalpas lángszóró" + +#~ msgid "Could not communicate with lobby server! Is TCP port %u open for outgoing traffic?" +#~ msgstr "Nem lehet elérni a lobbi szervert! A %u TCP port nyitva van a kimenő forgalom számára?" + +#~ msgid ": Unknown cheat code." +#~ msgstr ": ismeretlen megtévesztő kód" + +#~ msgid "Run in cheat mode" +#~ msgstr "Futtatás megtévesztő módba" + +#~ msgid "Truck ordered to build Oil Derrick" +#~ msgstr "Munkagép utasítva, hogy építsen olajkutat." + +#~ msgid "Colored Cursors*" +#~ msgstr "Kiszínezett kurzorok" + +#~ msgid "Infinite Production" +#~ msgstr "Korlátlan termelés" + +#~ msgid "You found %u power in an oil drum" +#~ msgstr "%u energiát találtál egy olajkúton" + +#~ msgid "Player colour" +#~ msgstr "Játékos színe" + +#~ msgid "Kick player" +#~ msgstr "Játékos kirúgása" + +#~ msgid "Player position" +#~ msgstr "Játékos pozíció" + +#~ msgid " (modified and switched locally)" +#~ msgstr " (helyileg módosította és átállította)" + +#~ msgid " (switched locally)" +#~ msgstr " (helyileg átállította)" + +#~ msgid "Player number" +#~ msgstr "Játékosok száma" + +#~ msgid "Mini-Rocket accuracy +10%" +#~ msgstr "Megnövekedett mini-rakéta pontosság" + +#~ msgid "Mini-Rocket damage +25%" +#~ msgstr "Megnövekedett mini rakéta pusztitás +25%" + +#~ msgid "Mini-Rocket reload time -15%" +#~ msgstr "Mini-rakéta töltési idő -15%" + +#~ msgid "Automated Manufacturing Mk2" +#~ msgstr "Automatizálta VTOL-t miközben újra felfegyverezte Mk2" + +#~ msgid "Automated Manufacturing Mk3" +#~ msgstr "Automatizálta VTOL-t miközben újra felfegyverezte Mk3" + +#~ msgid "Robotic Manufacturing Mk2" +#~ msgstr "Robotizált VTOL felfegyverező Mk2" + +#~ msgid "Robotic Manufacturing Mk3" +#~ msgstr "Robotizált VTOL felfegyverező Mk3" + +#~ msgid "Advanced Manufacturing Mk2" +#~ msgstr "Haladó gyári termelés Mk2" + +#~ msgid "Automated Repair Facility Mk2" +#~ msgstr "Automatizált javítási létesítmény MK2" + +#~ msgid "Automated Repair Facility Mk3" +#~ msgstr "Automatizált javítási létesítmény MK3" + +#~ msgid "Robotic Repair Facility Mk2" +#~ msgstr "Robotizált javítási létesítmény" + +#~ msgid "HESH Mini-Rockets" +#~ msgstr "HE Mini-rakéta" + +#~ msgid "HESH Mini-Rockets Mk2" +#~ msgstr "HE Mini-rakéta Mk2" + +#~ msgid "HESH Mini-Rockets Mk3" +#~ msgstr "HE Mini-rakéta Mk3" + +#~ msgid "Thermite Flamer Cyborg" +#~ msgstr "Termit lángszóró Cyborg" + +#~ msgid "Grenadier Cyborg" +#~ msgstr "Gránátos Cyborg" + +#~ msgid "Spanish" +#~ msgstr "Spanyol" + +#~ msgid "Finnish" +#~ msgstr "Finn" + +#~ msgid "Irish" +#~ msgstr "Ír" + +#~ msgid "Croatian" +#~ msgstr "Horvát" + +#~ msgid "Polish" +#~ msgstr "Lengyel" + +#~ msgid "Brazilian Portuguese" +#~ msgstr "Portugál (brazil)" + +#~ msgid "Portuguese" +#~ msgstr "Portugál" + +#~ msgid ", mod: " +#~ msgstr ", mód: " + +#~ msgid "Increases Bombing damage" +#~ msgstr "Menövekedett löveg pusztítás" + +#~ msgid "Basque" +#~ msgstr "Baszk" + +#~ msgid "Norwegian (Nynorsk)" +#~ msgstr "Norvég" + +#~ msgid "Swedish (Sweden)" +#~ msgstr "Svéd" + +#~ msgid "Turkish" +#~ msgstr "Török" + +#~ msgid "Heavy Machinegun Cobra Half-trackS" +#~ msgstr "Cobra nehéz gépfegyverrel fél-lánctalpas" + +#~ msgid "Peperpot Emplacement" +#~ msgstr "Pepperpot elhelyezés" + +#~ msgid "Cursor Mode" +#~ msgstr "Energia modul" + +#~ msgid "Hardware" +#~ msgstr "Hardver" + +#~ msgid "Mini-Pod Artillery" +#~ msgstr "Mini-pod tűzérség" + +#~ msgid "Mini-Pod Battery" +#~ msgstr "Mini-pod elem" + +#~ msgid "Stabilized Mini-Pods" +#~ msgstr "Stabilizált mini-podok" + +#~ msgid "Stabilized Mini-Pods Mk2" +#~ msgstr "Stabilizált mini-podok Mk2" + +#~ msgid "HE Mini-Pods" +#~ msgstr "HE Mini-Podok" + +#~ msgid "HE Mini-Pods Mk2" +#~ msgstr "HE Mini-Rockets Mk2" + +#~ msgid "HE Mini-Podok Mk3" +#~ msgstr "HE Mini-Podok Mk3" + +#~ msgid "HEAP Mini-Pods" +#~ msgstr "HEAP Mini-Podok" + +#~ msgid "HEAP Mini-Pods Mk2" +#~ msgstr "HEAP Mini-Podok Mk2" + +#~ msgid "HEAP Mini-Pods Mk3" +#~ msgstr "HEAP Mini-Podok Mk3" + +#~ msgid "Fast Fire Mini-Pods" +#~ msgstr "Gyors tűzelő Mini-Podok" + +#~ msgid "Fast Fire Mini-Pods Mk2" +#~ msgstr "Gyors tűzelő Mini-Podok Mk2" + +#~ msgid "Fast Fire Mini-Pods Mk3" +#~ msgstr "Gyors tűzelő Mini-Podok Mk3" + +#~ msgid "Rapid Fire Mini-Pods" +#~ msgstr "Gyors tüzelő Mini Podok" + +#~ msgid "Rapid Fire Mini-Pods Mk2" +#~ msgstr "Gyors tüzelő Mini Podok Mk2" + +#~ msgid "Rapid Fire Mini-Pods Mk3" +#~ msgstr "Gyors tűzelő Mini Podok Mk3" + +#~ msgid "Cluster Bombs Bug VTOL" +#~ msgstr "Bogár bombaköteg VTOL" + +#~ msgid "Python Tank Killer Tracks" +#~ msgstr "Piton Tank ölő" + From 564a8e922534e51217bfac35216f47e81cab09ed Mon Sep 17 00:00:00 2001 From: vexed Date: Tue, 3 Dec 2013 22:55:32 -0500 Subject: [PATCH 06/11] Remove odd characters at the begining. Odd, since it was a straight copy. Complaint by BuildBot. refs ticket:4130 --- po/hu.po | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/po/hu.po b/po/hu.po index 510e67dd5..f4fe5521a 100644 --- a/po/hu.po +++ b/po/hu.po @@ -1,4 +1,4 @@ -# Copyright (c) 2008 Rosetta Contributors and Canonical Ltd 2008 +# Copyright (c) 2008 Rosetta Contributors and Canonical Ltd 2008 # This file is distributed under the same license as the warzone2100 package. # # Jen Ockwell , 2008. From 8423d90a72d1d152c0f76de36e59db0c5e5cd95b Mon Sep 17 00:00:00 2001 From: vexed Date: Wed, 4 Dec 2013 00:27:17 -0500 Subject: [PATCH 07/11] Tell autohell to ignore our lone autorevision.cache file on make distcheck results: ====================================================== warzone2100-bugfixes archives ready for distribution: warzone2100-bugfixes.tar.xz ====================================================== --- Makefile.am | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Makefile.am b/Makefile.am index 015974e1a..1ceabf290 100644 --- a/Makefile.am +++ b/Makefile.am @@ -36,6 +36,9 @@ dist_doc_DATA = \ ACLOCAL_AMFLAGS = -I m4 +# ignore the autorevision.cache file on make distcheck +distcleancheck_listfiles = find . -type f -print | grep -v 'autorevision.cache' + EXTRA_DIST= \ build_tools/autorevision \ autogen.sh \ From 5a8493034f21c546a91e5823a289cc5a66e422ed Mon Sep 17 00:00:00 2001 From: vexed Date: Sun, 16 Jun 2013 18:21:08 -0400 Subject: [PATCH 08/11] Disable 'View Intro' when videos are not installed. (cherry picked from commit 770b5d45af9bd90b5356efdee1283b1da1102dec) --- src/frontend.cpp | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/frontend.cpp b/src/frontend.cpp index 04dd9d7cf..10d412780 100644 --- a/src/frontend.cpp +++ b/src/frontend.cpp @@ -109,8 +109,15 @@ static bool startTitleMenu(void) addTextButton(FRONTEND_MULTIPLAYER, FRONTEND_POS3X, FRONTEND_POS3Y, _("Multi Player"), WBUT_TXTCENTRE); addTextButton(FRONTEND_TUTORIAL, FRONTEND_POS4X, FRONTEND_POS4Y, _("Tutorial"), WBUT_TXTCENTRE); addTextButton(FRONTEND_OPTIONS, FRONTEND_POS5X, FRONTEND_POS5Y, _("Options"), WBUT_TXTCENTRE); - addTextButton(FRONTEND_PLAYINTRO, FRONTEND_POS6X, FRONTEND_POS6Y, _("View Intro"), WBUT_TXTCENTRE); - + if (PHYSFS_exists("sequences/devastation.ogg")) + { + addTextButton(FRONTEND_PLAYINTRO, FRONTEND_POS6X, FRONTEND_POS6Y, _("View Intro"), WBUT_TXTCENTRE); + } + else + { + addTextButton(FRONTEND_PLAYINTRO, FRONTEND_POS6X, FRONTEND_POS6Y, _("View Intro"), WBUT_TXTCENTRE|WBUT_DISABLE); + widgSetTip(psWScreen, FRONTEND_PLAYINTRO, _("Videos are missing, download them from http://wz2100.net")); + } addTextButton(FRONTEND_QUIT, FRONTEND_POS7X, FRONTEND_POS7Y, _("Quit Game"), WBUT_TXTCENTRE); addSideText(FRONTEND_SIDETEXT, FRONTEND_SIDEX, FRONTEND_SIDEY, _("MAIN MENU")); From 72a73175bbd915e1083f5ed5ffbd8b174bb49b88 Mon Sep 17 00:00:00 2001 From: haonoq Date: Sat, 7 Dec 2013 10:55:25 +0400 Subject: [PATCH 09/11] Buff cannons more: decrease production time 375->250. --- data/mp/stats/weapons.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/data/mp/stats/weapons.txt b/data/mp/stats/weapons.txt index 326e46b75..839be038f 100644 --- a/data/mp/stats/weapons.txt +++ b/data/mp/stats/weapons.txt @@ -102,8 +102,8 @@ Cannon4AUTOMk1,Level Two-Three,175,700,4000,1,22,250,GNLACAN.PIE,TRLACAN.PIE,FXC Cannon4AUTO-VTOL,Level All,175,700,2000,1,22,250,GNLACAN.PIE,TRLACAN.PIE,FXCan20A.PIE,FXTracer.PIE,FXMExp.PIE,FXMExp.PIE,FXSSplsh.PIE,0,768,1280,65,65,50,2,0,0,140,32,100,70,0,0,0,10,10,2250,20,YES,KINETIC,CANNON,DIRECT,ALL ROUNDER,180,15,-60,YES,NO,100,0,YES,50,100,4,1,0 Cannon375mmMk1,Level All,250,800,10000,1,20,500,GNHCAN.PIE,TRHCAN.PIE,FxCan75m.PIE,FXCAmmo.PIE,FXGRDexl.PIE,FXGRDexl.PIE,FXSSplsh.PIE,0,768,1088,70,55,60,2,0,0,120,192,100,60,0,0,0,10,100,1500,20,YES,KINETIC,CANNON,DIRECT,ALL ROUNDER,180,90,-60,YES,NO,150,0,YES,90,0,0,1,0 Cannon2A-TMk1,Level All,150,500,5000,1,14,350,GNMCAN.PIE,TRMCAN.PIE,FXCan40m.PIE,FXCAmmo.PIE,FXGRDexl.PIE,FXGRDexl.PIE,FXMSteam.PIE,0,640,1024,70,55,40,2,0,0,60,128,100,30,0,0,0,10,100,1500,20,YES,KINETIC,CANNON,DIRECT,ALL ROUNDER,180,90,-60,YES,NO,100,0,YES,60,0,0,1,0 -Cannon1Mk1,Level All,75,375,1000,1,15,250,GNLCAN.PIE,TRLCAN.PIE,FXCan20m.PIE,FXcam20.PIE,FXGRDexl.PIE,FXGRDexl.PIE,FXSSplsh.PIE,0,640,960,70,55,30,2,0,0,35,64,100,18,0,0,0,10,100,1500,20,YES,KINETIC,CANNON,DIRECT,ALL ROUNDER,180,90,-90,YES,NO,100,0,YES,30,0,0,1,0 -Cannon1-VTOL,Level All,75,375,1000,1,15,250,GNLCAN.PIE,TRLCAN.PIE,FXCan20m.PIE,FXcam20.PIE,FXMExp.PIE,FXMExp.PIE,FXSSplsh.PIE,0,640,960,70,55,40,2,0,0,70,96,100,35,0,0,0,10,100,1500,20,YES,KINETIC,CANNON,DIRECT,ALL ROUNDER,180,0,-90,YES,NO,100,0,YES,30,0,4,1,0 +Cannon1Mk1,Level All,75,250,1000,1,15,250,GNLCAN.PIE,TRLCAN.PIE,FXCan20m.PIE,FXcam20.PIE,FXGRDexl.PIE,FXGRDexl.PIE,FXSSplsh.PIE,0,640,960,70,55,30,2,0,0,35,64,100,18,0,0,0,10,100,1500,20,YES,KINETIC,CANNON,DIRECT,ALL ROUNDER,180,90,-90,YES,NO,100,0,YES,30,0,0,1,0 +Cannon1-VTOL,Level All,75,250,1000,1,15,250,GNLCAN.PIE,TRLCAN.PIE,FXCan20m.PIE,FXcam20.PIE,FXMExp.PIE,FXMExp.PIE,FXSSplsh.PIE,0,640,960,70,55,40,2,0,0,70,96,100,35,0,0,0,10,100,1500,20,YES,KINETIC,CANNON,DIRECT,ALL ROUNDER,180,0,-90,YES,NO,100,0,YES,30,0,4,1,0 BusCannon,Level One,10,10,10,10,10,10,GNLCAN.pie,Exturret.pie,FXLMgun.PIE,FXTracer.PIE,FXGRDexl.PIE,FXGRDexl.PIE,FXSSplsh.PIE,0,640,960,60,50,30,1,0,0,28,0,0,0,0,0,0,10,0,1500,20,YES,KINETIC,CANNON,DIRECT,ALL ROUNDER,180,90,-30,YES,NO,100,0,YES,25,0,0,0,0 BuggyMG,Level One-Two,3,11,1,1,1,1,0,0,FXLMgun.PIE,FXTracer.PIE,FXMETHIT.PIE,FXDIRTsp.PIE,FXSSplsh.PIE,0,640,960,60,50,5,1,0,0,16,0,0,0,0,0,0,10,0,1500,20,YES,KINETIC,MACHINE GUN,DIRECT,ANTI PERSONNEL,180,90,-30,YES,NO,100,0,NO,100,0,0,0,0 bTrikeMG,Level One,2,11,1,1,1,1,0,0,FXLMgun.PIE,FXTracer.PIE,FXMETHIT.PIE,FXDIRTsp.PIE,FXSSplsh.PIE,0,640,960,60,50,5,1,0,0,13,0,0,0,0,0,0,10,0,1500,20,YES,KINETIC,MACHINE GUN,DIRECT,ANTI PERSONNEL,180,90,-30,YES,NO,100,0,NO,100,0,0,0,0 From 7c63763c5c1a82b5676278a66bbe5d8493742fd0 Mon Sep 17 00:00:00 2001 From: vexed Date: Fri, 6 Dec 2013 23:55:38 -0500 Subject: [PATCH 10/11] Check deeper for map-mods --- src/init.cpp | 74 +++++++++++++++++++++++++++++++--------------------- 1 file changed, 44 insertions(+), 30 deletions(-) diff --git a/src/init.cpp b/src/init.cpp index acca5bb58..40b4becaf 100644 --- a/src/init.cpp +++ b/src/init.cpp @@ -552,6 +552,44 @@ bool CheckForMod(char *theMap) return false; } +// Mount the archive under the mountpoint, and enumerate the archive according to lookin +static bool CheckInMap(const char *archive, const char *mountpoint,const char *lookin) +{ + bool mapmod = false; + + if (!PHYSFS_mount(archive, mountpoint, PHYSFS_APPEND)) + { + // We already checked to see if this was valid before, and now, something went seriously wrong. + debug(LOG_FATAL, "Could not mount %s, because: %s. Please delete the file, and run the game again. Game will now exit.", archive, PHYSFS_getLastError()); + exit(-1); + } + + char **filelist = PHYSFS_enumerateFiles(lookin); + for (char **file = filelist; *file != NULL; ++file) + { + if (PHYSFS_isDirectory(*file)) + { + std::string checkfile = *file; + if (checkfile.compare("wrf")==0 || checkfile.compare("stats")==0 ||checkfile.compare("components")==0 + || checkfile.compare("anims")==0 || checkfile.compare("effects")==0 ||checkfile.compare("messages")==0 + || checkfile.compare("audio")==0 || checkfile.compare("sequenceaudio")==0 ||checkfile.compare("misc")==0 + || checkfile.compare("features")==0 || checkfile.compare("script")==0 ||checkfile.compare("structs")==0 + || checkfile.compare("tileset")==0 || checkfile.compare("images")==0 || checkfile.compare("texpages")==0 ) + { + debug(LOG_WZ, "Detected: %s %s" , archive, checkfile.c_str()); + mapmod = true; + break; + } + } + } + PHYSFS_freeList(filelist); + + if (!PHYSFS_removeFromSearchPath(archive)) + { + debug(LOG_ERROR, "Could not unmount %s, %s", archive, PHYSFS_getLastError()); + } + return mapmod; +} bool buildMapList() { @@ -589,42 +627,18 @@ bool buildMapList() if (PHYSFS_removeFromSearchPath(realFilePathAndName.c_str()) == 0) { - debug(LOG_ERROR, "Could not unmount %s", PHYSFS_getLastError()); - } - // check what kind of map it is - if (!PHYSFS_mount(realFilePathAndName.c_str(), "WZMap", PHYSFS_APPEND)) - { - debug(LOG_FATAL, "Could not mount %s, because: %s. Please delete the file, and run the game again. Game will now exit.", realFilePathAndName.c_str(), PHYSFS_getLastError()); - exit(-1); + debug(LOG_ERROR, "Could not unmount %s, %s", realFilePathAndName.c_str(), PHYSFS_getLastError()); } - filelist = PHYSFS_enumerateFiles("WZMap"); - for (char **file = filelist; *file != NULL; ++file) - { - if (PHYSFS_isDirectory(*file)) - { - std::string checkfile = *file; - if (checkfile.compare("wrf")==0 || checkfile.compare("stats")==0 ||checkfile.compare("components")==0 - || checkfile.compare("anims")==0 || checkfile.compare("effects")==0 ||checkfile.compare("messages")==0 - || checkfile.compare("audio")==0 || checkfile.compare("sequenceaudio")==0 ||checkfile.compare("misc")==0 - || checkfile.compare("features")==0 || checkfile.compare("script")==0 ||checkfile.compare("structs")==0 - || checkfile.compare("tileset")==0 || checkfile.compare("images")==0 || checkfile.compare("texpages")==0 ) - { - mapmod = true; - break; - } - } - } - PHYSFS_freeList(filelist); + mapmod = CheckInMap(realFilePathAndName.c_str(), "WZMap", "WZMap"); + if (!mapmod) + { + mapmod = CheckInMap(realFilePathAndName.c_str(), "WZMap", "WZMap/multiplay"); + } CurrentMap.MapName = realFileName->c_str(); CurrentMap.isMapMod = mapmod; WZ_Maps.push_back(CurrentMap); - - if (PHYSFS_removeFromSearchPath(realFilePathAndName.c_str()) == 0) - { - debug(LOG_ERROR, "Could not unmount %s", PHYSFS_getLastError()); - } } return true; From ad80daadc95eec47bd389e306380ca722b646531 Mon Sep 17 00:00:00 2001 From: vexed Date: Sat, 7 Dec 2013 20:11:38 -0500 Subject: [PATCH 11/11] Fix some log spam --- src/multiint.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/multiint.cpp b/src/multiint.cpp index b993b93a1..4e65e5f7f 100644 --- a/src/multiint.cpp +++ b/src/multiint.cpp @@ -455,11 +455,11 @@ void loadMapPreview(bool hideInterface) setCurrentMap(psLevel->realFileName, psLevel->players); if (psLevel->realFileName == NULL) { - debug(LOG_INFO, "Loading map preview: \"%s\" builtin t%d", psLevel->pName, psLevel->dataDir); + debug(LOG_WZ, "Loading map preview: \"%s\" builtin t%d", psLevel->pName, psLevel->dataDir); } else { - debug(LOG_INFO, "Loading map preview: \"%s\" in (%s)\"%s\" %s t%d", psLevel->pName, PHYSFS_getRealDir(psLevel->realFileName), psLevel->realFileName, psLevel->realFileHash.toString().c_str(), psLevel->dataDir); + debug(LOG_WZ, "Loading map preview: \"%s\" in (%s)\"%s\" %s t%d", psLevel->pName, PHYSFS_getRealDir(psLevel->realFileName), psLevel->realFileName, psLevel->realFileHash.toString().c_str(), psLevel->dataDir); } rebuildSearchPath(psLevel->dataDir, false); sstrcpy(aFileName,psLevel->apDataFiles[0]);